summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php')
-rw-r--r--www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php83
1 files changed, 83 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php b/www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php
new file mode 100644
index 00000000..317a6df5
--- /dev/null
+++ b/www/wiki/extensions/SemanticMediaWiki/includes/ExternalHooks.php
@@ -0,0 +1,83 @@
+<?php
+
+/**
+ * Static class for hooks handled by the Semantic MediaWiki extension.
+ *
+ * @since 1.7
+ *
+ * @file SemanticMediaWiki.hooks.php
+ * @ingroup SMW
+ *
+ * @licence GNU GPL v2+
+ * @author Jeroen De Dauw < jeroendedauw@gmail.com >
+ * @author mwjames
+ */
+final class SMWExternalHooks {
+
+ /**
+ * TODO
+ *
+ * @since 1.7
+ *
+ * @return boolean
+ */
+ public static function onPageSchemasRegistration() {
+ // @codeCoverageIgnoreStart
+ $GLOBALS['wgPageSchemasHandlerClasses'][] = 'SMWPageSchemas';
+
+ return true;
+ // @codeCoverageIgnoreEnd
+ }
+
+ /**
+ * Adds links to Admin Links page.
+ *
+ * @since 1.7
+ *
+ * @param ALTree $admin_links_tree
+ *
+ * @return boolean
+ */
+ public static function addToAdminLinks( ALTree $admin_links_tree ) {
+ // @codeCoverageIgnoreStart
+ $data_structure_section = new ALSection( wfMessage( 'smw_adminlinks_datastructure' )->text() );
+
+ $smw_row = new ALRow( 'smw' );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'Categories' ) );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'Properties' ) );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'UnusedProperties' ) );
+
+ $data_structure_section->addRow( $smw_row );
+ $smw_admin_row = new ALRow( 'smw_admin' );
+ $smw_admin_row->addItem( ALItem::newFromSpecialPage( 'SMWAdmin' ) );
+
+ $data_structure_section->addRow( $smw_admin_row );
+ $smw_docu_row = new ALRow( 'smw_docu' );
+ $smw_name = wfMessage( 'specialpages-group-smw_group' )->text();
+ $smw_docu_label = wfMessage( 'adminlinks_documentation', $smw_name )->text();
+ $smw_docu_row->addItem( AlItem::newFromExternalLink( 'http://semantic-mediawiki.org/wiki/Help:User_manual', $smw_docu_label ) );
+
+ $data_structure_section->addRow( $smw_docu_row );
+ $admin_links_tree->addSection( $data_structure_section, wfMessage( 'adminlinks_browsesearch' )->text() );
+ $smw_row = new ALRow( 'smw' );
+ $displaying_data_section = new ALSection( wfMessage( 'smw_adminlinks_displayingdata' )->text() );
+ $smw_row->addItem( AlItem::newFromExternalLink(
+ 'http://semantic-mediawiki.org/wiki/Help:Inline_queries',
+ wfMessage( 'smw_adminlinks_inlinequerieshelp' )->text()
+ ) );
+
+ $displaying_data_section->addRow( $smw_row );
+ $admin_links_tree->addSection( $displaying_data_section, wfMessage( 'adminlinks_browsesearch' )->text() );
+ $browse_search_section = $admin_links_tree->getSection( wfMessage( 'adminlinks_browsesearch' )->text() );
+
+ $smw_row = new ALRow( 'smw' );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'Browse' ) );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'Ask' ) );
+ $smw_row->addItem( ALItem::newFromSpecialPage( 'SearchByProperty' ) );
+ $browse_search_section->addRow( $smw_row );
+
+ return true;
+ // @codeCoverageIgnoreEnd
+ }
+
+}