http://www.mediawiki.org/wiki/Special:Code/MediaWiki/76255

Revision: 76255
Author:   jeroendedauw
Date:     2010-11-07 17:43:19 +0000 (Sun, 07 Nov 2010)
Log Message:
-----------
Follow up to r76228 - partial fix - still expecting problems for OpenLayers 
with display points and all OpenLayers maps in Semantic Maps

Modified Paths:
--------------
    trunk/extensions/Maps/Maps.php
    trunk/extensions/Maps/Maps_Settings.php
    trunk/extensions/Maps/includes/Maps_Mapper.php
    trunk/extensions/Maps/includes/Maps_MappingService.php
    trunk/extensions/Maps/includes/features/Maps_BaseMap.php
    trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayers.php
    
trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayersDispMap.php
    trunk/extensions/Maps/includes/services/OpenLayers/Maps_ParamOLLayers.php

Modified: trunk/extensions/Maps/Maps.php
===================================================================
--- trunk/extensions/Maps/Maps.php      2010-11-07 17:36:10 UTC (rev 76254)
+++ trunk/extensions/Maps/Maps.php      2010-11-07 17:43:19 UTC (rev 76255)
@@ -51,6 +51,8 @@
 
        $egMapsStyleVersion = $wgStyleVersion . '-' . Maps_VERSION;
 
+       $egMapsUseRL = false; //method_exists( 'OutputPage', 'addModules' );
+       
        $wgAutoloadClasses['MapsHooks'] = dirname( __FILE__ ) . 
'/Maps.hooks.php';
        
        // Autoload the "includes/" classes and interfaces.
@@ -160,7 +162,6 @@
 function efMapsSetup() {
        global $wgExtensionCredits, $wgLang, $wgExtraNamespaces, 
$wgNamespaceAliases;
        global $egMapsDefaultService, $egMapsAvailableServices;
-       global $egMapsDir, $egMapsUseMinJs;
 
        // This function has been deprecated in 1.16, but needed for earlier 
versions.
        // It's present in 1.16 as a stub, but lets check if it exists in case 
it gets removed at some point.

Modified: trunk/extensions/Maps/Maps_Settings.php
===================================================================
--- trunk/extensions/Maps/Maps_Settings.php     2010-11-07 17:36:10 UTC (rev 
76254)
+++ trunk/extensions/Maps/Maps_Settings.php     2010-11-07 17:43:19 UTC (rev 
76255)
@@ -408,7 +408,7 @@
                        'ol-wms' => "<script type='$wgJsMimeType' 
src='http://clients.multimap.com/API/maps/1.1/metacarta_04'></script>",
                );
                
-               if ( !method_exists( 'OutputPage', 'addModules' ) ) {
+               if ( !$egMapsUseRL ) {
                        $egMapsOLLayerDependencies['osm'] = "<script 
type='$wgJsMimeType' 
src='$egMapsScriptPath/includes/services/OpenLayers/OSM/OpenStreetMap.js?$egMapsStyleVersion'></script>";
                }
        

Modified: trunk/extensions/Maps/includes/Maps_Mapper.php
===================================================================
--- trunk/extensions/Maps/includes/Maps_Mapper.php      2010-11-07 17:36:10 UTC 
(rev 76254)
+++ trunk/extensions/Maps/includes/Maps_Mapper.php      2010-11-07 17:43:19 UTC 
(rev 76255)
@@ -45,9 +45,7 @@
        public static function addInlineScript( iMappingService $service, 
$script ) {
                static $addOnloadJs = false;
                
-               $hasRL = method_exists( 'ParserOutput', 'addModules' );
-               
-               if ( $hasRL && !$addOnloadJs ) {
+               if ( method_exists( 'OutputPage', 'addModules' ) && 
!$addOnloadJs ) {
                        global $egMapsScriptPath, $egMapsStyleVersion;
                        
                        $service->addDependency(
@@ -58,7 +56,7 @@
                }               
                
                $service->addDependency( Html::inlineScript( 
-                       ( $hasRL ? 'addMapsOnloadHook' : 'addOnloadHook' ) . "( 
function() { $script } );"
+                       ( method_exists( 'OutputPage', 'addModules' ) ? 
'addMapsOnloadHook' : 'addOnloadHook' ) . "( function() { $script } );"
                ) );
        }
        

Modified: trunk/extensions/Maps/includes/Maps_MappingService.php
===================================================================
--- trunk/extensions/Maps/includes/Maps_MappingService.php      2010-11-07 
17:36:10 UTC (rev 76254)
+++ trunk/extensions/Maps/includes/Maps_MappingService.php      2010-11-07 
17:43:19 UTC (rev 76255)
@@ -105,6 +105,8 @@
         * @since 0.6.3
         */
        public final function addDependencies( &$parserOrOut ) {
+               global $egMapsUseRL;
+               
                $dependencies = $this->getDependencyHtml();
                
                // Only add a head item when there are dependencies.
@@ -113,7 +115,7 @@
                                $parserOrOut->getOutput()->addHeadItem( 
$dependencies );
                        }
                        
-                       if ( method_exists( $parserOrOut->getOutput(), 
'addModules' ) ) {
+                       if ( $egMapsUseRL /* method_exists( 
$parserOrOut->getOutput(), 'addModules' ) */ ) {
                                $parserOrOut->getOutput()->addModules( 
$this->getResourceModules() );
                        }
                } 
@@ -122,7 +124,7 @@
                                $parserOrOut->addHeadItem( md5( $dependencies 
), $dependencies );
                        }
                        
-                       if ( method_exists( $parserOrOut, 'addModules' ) ) {
+                       if ( $egMapsUseRL /* method_exists( $parserOrOut, 
'addModules' ) */ ) {
                                $parserOrOut->addModules( 
$this->getResourceModules() );
                        }
                }                       

Modified: trunk/extensions/Maps/includes/features/Maps_BaseMap.php
===================================================================
--- trunk/extensions/Maps/includes/features/Maps_BaseMap.php    2010-11-07 
17:36:10 UTC (rev 76254)
+++ trunk/extensions/Maps/includes/features/Maps_BaseMap.php    2010-11-07 
17:43:19 UTC (rev 76255)
@@ -67,6 +67,8 @@
         * @return html
         */
        public final function renderMap( array $params, Parser $parser ) {
+               global $egMapsUseRL;
+               
                $this->setCentre( $params );
                
                if ( $params['zoom'] == 'null' ) {
@@ -75,7 +77,7 @@
                
                $output = $this->getMapHTML( $params, $parser );
                
-               if ( method_exists( 'OutputPage', 'addModules' ) ) {
+               if ( $egMapsUseRL ) {
                        $output .= $this->getJSON( $params, $parser );
                }
                

Modified: trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayers.php
===================================================================
--- trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayers.php      
2010-11-07 17:36:10 UTC (rev 76254)
+++ trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayers.php      
2010-11-07 17:43:19 UTC (rev 76255)
@@ -31,7 +31,7 @@
         * @since 0.7
         */     
        public function addParameterInfo( array &$params ) {
-               global $egMapsOLLayers, $egMapsOLControls;
+               global $egMapsOLLayers, $egMapsOLControls, $egMapsUseRL;
                
                $params['zoom']->addCriteria( new CriterionInRange( 0, 19 ) );
                $params['zoom']->setDefault( self::getDefaultZoom() );          
@@ -43,7 +43,7 @@
                        new ParamManipulationFunctions( 'strtolower' )
                );
                
-               if ( !method_exists( 'OutputPage', 'addModules' ) ) {
+               if ( !$egMapsUseRL ) {
                        $params['controls']->addManipulations(
                                new ParamManipulationImplode( ',', "'" )
                        );
@@ -112,9 +112,9 @@
         * @return array
         */
        protected function getDependencies() {
-               global $egMapsStyleVersion, $egMapsScriptPath;
+               global $egMapsStyleVersion, $egMapsScriptPath, $egMapsUseRL;
                
-               if ( method_exists( 'OutputPage', 'addModules' ) ) {
+               if ( $egMapsUseRL ) {
                        return array();
                }
                else {

Modified: 
trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayersDispMap.php
===================================================================
--- 
trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayersDispMap.php   
    2010-11-07 17:36:10 UTC (rev 76254)
+++ 
trunk/extensions/Maps/includes/services/OpenLayers/Maps_OpenLayersDispMap.php   
    2010-11-07 17:43:19 UTC (rev 76255)
@@ -32,11 +32,11 @@
         * @since 0.7.3
         */
        public function getMapHTML( array $params, Parser $parser ) {
-               global $wgLang;
+               global $wgLang, $egMapsUseRL;
 
                $mapName = $this->service->getMapId();
                
-               if ( !method_exists( 'OutputPage', 'addModules' ) ) {
+               if ( !$egMapsUseRL ) {
                        $langCode = $wgLang->getCode();
                        $centreLat = MapsMapper::encodeJsVar( 
$params['centre']['lat'] );
                        $centreLon = MapsMapper::encodeJsVar( 
$params['centre']['lon'] );
@@ -48,7 +48,7 @@
                                $centreLon,
                                $centreLat,
                                $zoom,
-                               {$params['layers'][0]},
+                               {$params['layers']},
                                [{$params['controls']}],
                                [],
                                "$langCode"

Modified: 
trunk/extensions/Maps/includes/services/OpenLayers/Maps_ParamOLLayers.php
===================================================================
--- trunk/extensions/Maps/includes/services/OpenLayers/Maps_ParamOLLayers.php   
2010-11-07 17:36:10 UTC (rev 76254)
+++ trunk/extensions/Maps/includes/services/OpenLayers/Maps_ParamOLLayers.php   
2010-11-07 17:43:19 UTC (rev 76255)
@@ -29,7 +29,7 @@
         * @since 0.7
         */     
        public function manipulate( Parameter &$parameter, array &$parameters ) 
{
-               global $egMapsOLLayerGroups, $egMapsOLAvailableLayers;
+               global $egMapsOLLayerGroups, $egMapsOLAvailableLayers, 
$egMapsUseRL;
                
                $layerDefs = array();
                $layerNames = array();
@@ -88,9 +88,9 @@
                        }
                }
                
-               $parameter->setValue( method_exists( 'OutputPage', 'addModules' 
) ? $layerDefs : '[' . implode( ',', $layerDefs ) . ']' );
+               $parameter->setValue( $egMapsUseRL ? $layerDefs : '[' . 
implode( ',', $layerDefs ) . ']' );
                
-               MapsOpenLayers::addLayerDependencies( $this->getDependencies( 
$layerNames ) );
+               MapsMappingServices::getServiceInstance( 'openlayers' 
)->addLayerDependencies( $this->getDependencies( $layerNames ) );
        }
        
        /**


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to