+
+ /**
+ * Get a list of namespace names useful for showing in tooltips
+ * and preferences
+ *
+ * @param $namespaces Array
+ */
+ public static function namespacesAsText( $namespaces ){
+ global $wgContLang;
+
+ $formatted = array_map( array($wgContLang,'getFormattedNsText'), $namespaces );
+ foreach( $formatted as $key => $ns ){
+ if ( empty($ns) )
+ $formatted[$key] = wfMsg( 'blanknamespace' );
+ }
+ return $formatted;
+ }
+
+ /**
+ * An array of "project" namespaces indexes typically searched
+ * by logged-in users
+ *
+ * @return Array
+ */
+ public static function projectNamespaces() {
+ global $wgNamespacesToBeSearchedDefault, $wgNamespacesToBeSearchedProject;
+
+ return array_keys( $wgNamespacesToBeSearchedProject, true );
+ }
+
+ /**
+ * An array of "project" namespaces indexes typically searched
+ * by logged-in users in addition to the default namespaces
+ *
+ * @return Array
+ */
+ public static function defaultAndProjectNamespaces() {
+ global $wgNamespacesToBeSearchedDefault, $wgNamespacesToBeSearchedProject;
+
+ return array_keys( $wgNamespacesToBeSearchedDefault +
+ $wgNamespacesToBeSearchedProject, true);
+ }
+