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

Revision: 65414
Author:   jeroendedauw
Date:     2010-04-21 22:09:19 +0000 (Wed, 21 Apr 2010)

Log Message:
-----------
Changes for 0.6 - fixed several issues with the parameters for the display_map 
and display_point(s) parser functions

Modified Paths:
--------------
    trunk/extensions/Maps/Geocoders/Maps_Geocoder.php
    trunk/extensions/Maps/GoogleMaps/Maps_GoogleMaps.php
    trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispMap.php
    trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispPoint.php
    trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispMap.php
    trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispPoint.php
    trunk/extensions/Maps/Maps.php
    trunk/extensions/Maps/Maps_Mapper.php
    trunk/extensions/Maps/OpenLayers/Maps_OpenLayers.php
    trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispMap.php
    trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispPoint.php
    trunk/extensions/Maps/ParserFunctions/DisplayMap/Maps_BaseMap.php
    trunk/extensions/Maps/ParserFunctions/DisplayPoint/Maps_BasePointMap.php
    trunk/extensions/Maps/ParserFunctions/Maps_ParserFunctions.php
    trunk/extensions/Maps/ParserFunctions/Maps_iMapFeature.php
    trunk/extensions/Maps/YahooMaps/Maps_YahooMaps.php
    trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispMap.php
    trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispPoint.php

Modified: trunk/extensions/Maps/Geocoders/Maps_Geocoder.php
===================================================================
--- trunk/extensions/Maps/Geocoders/Maps_Geocoder.php   2010-04-21 20:55:15 UTC 
(rev 65413)
+++ trunk/extensions/Maps/Geocoders/Maps_Geocoder.php   2010-04-21 22:09:19 UTC 
(rev 65414)
@@ -38,7 +38,7 @@
         * @return array or false
         */
        public static function attemptToGeocode( $coordsOrAddress, $geoservice 
= '', $mappingService = false, $checkForCoords = true ) {
-               if ( $checkForCoords ) {                        
+               if ( $checkForCoords ) {
                        if ( MapsCoordinateParser::areCoordinates( 
$coordsOrAddress ) ) {
                                return MapsCoordinateParser::parseCoordinates( 
$coordsOrAddress );
                        } else {
@@ -96,7 +96,7 @@
                }
                
                $service = self::getValidGeoService( $service, $mappingService 
);
-               
+
                // Call the geocode function in the spesific geocoder class.
                $coordinates = call_user_func( array( 
$egMapsGeoServices[$service], 'geocode' ), $address );
 

Modified: trunk/extensions/Maps/GoogleMaps/Maps_GoogleMaps.php
===================================================================
--- trunk/extensions/Maps/GoogleMaps/Maps_GoogleMaps.php        2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/GoogleMaps/Maps_GoogleMaps.php        2010-04-21 
22:09:19 UTC (rev 65414)
@@ -60,7 +60,7 @@
        }
        
        private static function initializeParams() {
-               global $egMapsServices, $egMapsGoogleMapsType, 
$egMapsGoogleMapsTypes, $egMapsGoogleAutozoom, $egMapsGoogleMapsZoom, 
$egMapsGMapControls;
+               global $egMapsServices, $egMapsGoogleMapsType, 
$egMapsGoogleMapsTypes, $egMapsGoogleAutozoom, $egMapsGMapControls;
                
                $allowedTypes = self::getTypeNames();
                
@@ -98,7 +98,6 @@
                        ),
                );
                
-               
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['default'] = 
$egMapsGoogleMapsZoom;
                
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['criteria']['in_range']
 = array( 0, 20 );             
        }
 

Modified: trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispMap.php
===================================================================
--- trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispMap.php 2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispMap.php 2010-04-21 
22:09:19 UTC (rev 65414)
@@ -24,9 +24,13 @@
        
        public $serviceName = MapsGoogleMaps::SERVICE_NAME;
        
+       protected function getDefaultZoom() {
+               global $egMapsGoogleMapsZoom; 
+               return $egMapsGoogleMapsZoom;
+       }       
+       
        public function getSpecificParameterInfo() {
                global $egMapsGMapOverlays;
-               // TODO: it'd be cool to have this static so it can be cheched 
in order to only init it once.
                $this->spesificParameters = array(
                        'overlays' => array(
                                'type' => array( 'string', 'list' ),

Modified: trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispPoint.php
===================================================================
--- trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispPoint.php       
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/GoogleMaps/Maps_GoogleMapsDispPoint.php       
2010-04-21 22:09:19 UTC (rev 65414)
@@ -26,6 +26,11 @@
 
        protected $markerStringFormat = 'getGMarkerData(lat, lon, \'title\', 
\'label\', "icon")';       
        
+       protected function getDefaultZoom() {
+               global $egMapsGoogleMapsZoom; 
+               return $egMapsGoogleMapsZoom;
+       }
+       
        public function getSpecificParameterInfo() {
                global $egMapsGMapOverlays;
                // TODO: it'd be cool to have this static so it can be cheched 
in order to only init it once.

Modified: trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispMap.php
===================================================================
--- trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispMap.php       
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispMap.php       
2010-04-21 22:09:19 UTC (rev 65414)
@@ -24,6 +24,11 @@
        
        public $serviceName = MapsGoogleMaps3::SERVICE_NAME;
        
+       protected function getDefaultZoom() {
+               global $egMapsGMaps3Zoom; 
+               return $egMapsGMaps3Zoom;
+       }       
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         *

Modified: trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispPoint.php
===================================================================
--- trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispPoint.php     
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/GoogleMaps3/Maps_GoogleMaps3DispPoint.php     
2010-04-21 22:09:19 UTC (rev 65414)
@@ -26,6 +26,11 @@
 
        protected $markerStringFormat = 'getGMaps3MarkerData(lat, lon, 
\'title\', \'label\', "icon")';
        
+       protected function getDefaultZoom() {
+               global $egMapsGMaps3Zoom; 
+               return $egMapsGMaps3Zoom;
+       }               
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         *

Modified: trunk/extensions/Maps/Maps.php
===================================================================
--- trunk/extensions/Maps/Maps.php      2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/Maps.php      2010-04-21 22:09:19 UTC (rev 65414)
@@ -33,7 +33,7 @@
        echo '<b>Warning:</b> You need to have <a 
href="http://www.mediawiki.org/wiki/Extension:Validator";>Validator</a> 
installed in order to use <a 
href="http://www.mediawiki.org/wiki/Extension:Maps";>Maps</a>.';
 }
 else {
-       define( 'Maps_VERSION', '0.6 a15' );
+       define( 'Maps_VERSION', '0.6 a16' );
        
        // The different coordinate notations.
        define( 'Maps_COORDS_FLOAT', 'float' );

Modified: trunk/extensions/Maps/Maps_Mapper.php
===================================================================
--- trunk/extensions/Maps/Maps_Mapper.php       2010-04-21 20:55:15 UTC (rev 
65413)
+++ trunk/extensions/Maps/Maps_Mapper.php       2010-04-21 22:09:19 UTC (rev 
65414)
@@ -227,7 +227,8 @@
                                'type' => 'integer',
                                'criteria' => array(
                                        'not_empty' => array()
-                               )
+                               ),
+                               'default' => 'null'
                        ),
                        'width' => array(
                                'criteria' => array(

Modified: trunk/extensions/Maps/OpenLayers/Maps_OpenLayers.php
===================================================================
--- trunk/extensions/Maps/OpenLayers/Maps_OpenLayers.php        2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/OpenLayers/Maps_OpenLayers.php        2010-04-21 
22:09:19 UTC (rev 65414)
@@ -84,7 +84,6 @@
                        ),
                );
                                                                        
-               
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['default'] = 
$egMapsOpenLayersZoom;
                
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['criteria']['in_range']
 = array( 0, 19 );                                                              
       
        }
        

Modified: trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispMap.php
===================================================================
--- trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispMap.php 2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispMap.php 2010-04-21 
22:09:19 UTC (rev 65414)
@@ -17,6 +17,11 @@
        
        public $serviceName = MapsOpenLayers::SERVICE_NAME;
        
+       protected function getDefaultZoom() {
+               global $egMapsOpenLayersZoom; 
+               return $egMapsOpenLayersZoom;
+       }               
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         */

Modified: trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispPoint.php
===================================================================
--- trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispPoint.php       
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/OpenLayers/Maps_OpenLayersDispPoint.php       
2010-04-21 22:09:19 UTC (rev 65414)
@@ -24,6 +24,11 @@
        
        protected $markerStringFormat = 'getOLMarkerData(lon, lat, \'title\', 
\'label\', "icon")';
 
+       protected function getDefaultZoom() {
+               global $egMapsOpenLayersZoom; 
+               return $egMapsOpenLayersZoom;
+       }               
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         *

Modified: trunk/extensions/Maps/ParserFunctions/DisplayMap/Maps_BaseMap.php
===================================================================
--- trunk/extensions/Maps/ParserFunctions/DisplayMap/Maps_BaseMap.php   
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/ParserFunctions/DisplayMap/Maps_BaseMap.php   
2010-04-21 22:09:19 UTC (rev 65414)
@@ -96,6 +96,10 @@
                
                $this->setCentre();
                
+               if ( $this->zoom == 'null' ) {
+                       $htis->zoom = $this->getDefaultZoom();
+               }               
+               
                $this->addSpecificMapHTML( $parser );
                
                return $this->output;

Modified: 
trunk/extensions/Maps/ParserFunctions/DisplayPoint/Maps_BasePointMap.php
===================================================================
--- trunk/extensions/Maps/ParserFunctions/DisplayPoint/Maps_BasePointMap.php    
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/ParserFunctions/DisplayPoint/Maps_BasePointMap.php    
2010-04-21 22:09:19 UTC (rev 65414)
@@ -21,8 +21,6 @@
  * @ingroup Maps
  *
  * @author Jeroen De Dauw
- * 
- * TODO: fix zoom - should default to 'null' when no value given and multiple 
points
  */
 abstract class MapsBasePointMap implements iMapFeature {       
        
@@ -120,6 +118,10 @@
                
                $this->setCentre();
                
+               if ( count( $this->markerData ) <= 1 && $this->zoom == 'null' ) 
{
+                       $this->zoom = $this->getDefaultZoom();
+               }
+               
                $this->addSpecificMapHTML( $parser );
                
                return $this->output;

Modified: trunk/extensions/Maps/ParserFunctions/Maps_ParserFunctions.php
===================================================================
--- trunk/extensions/Maps/ParserFunctions/Maps_ParserFunctions.php      
2010-04-21 20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/ParserFunctions/Maps_ParserFunctions.php      
2010-04-21 22:09:19 UTC (rev 65414)
@@ -41,9 +41,6 @@
                return true;
        }
        
-       private static function initializeParams() {
-       }
-       
        /**
         * Returns the output for the call to the specified parser function.
         * 
@@ -88,9 +85,9 @@
                 * again overidden by the service parameters (the ones spesific 
to the service),
                 * and finally by the spesific parameters (the ones spesific to 
a service-feature combination).
                 */
-               $parameterInfo = array_merge( 
MapsMapper::getCommonParameters(), $mapClass->getFeatureParameters() );
-               $parameterInfo = array_merge( $parameterInfo, 
$egMapsServices[$service]['parameters'] );
-               $parameterInfo = array_merge( $parameterInfo, 
$mapClass->getSpecificParameterInfo() ); 
+               $parameterInfo = array_merge_recursive( 
MapsMapper::getCommonParameters(), $mapClass->getFeatureParameters() );
+               $parameterInfo = array_merge_recursive( $parameterInfo, 
$egMapsServices[$service]['parameters'] );
+               $parameterInfo = array_merge_recursive( $parameterInfo, 
$mapClass->getSpecificParameterInfo() ); 
                
                $parameters = $manager->manageParameters(
                        $parameters,

Modified: trunk/extensions/Maps/ParserFunctions/Maps_iMapFeature.php
===================================================================
--- trunk/extensions/Maps/ParserFunctions/Maps_iMapFeature.php  2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/ParserFunctions/Maps_iMapFeature.php  2010-04-21 
22:09:19 UTC (rev 65414)
@@ -7,6 +7,8 @@
  * @ingroup Maps
  * 
  * @author Jeroen De Dauw
+ * 
+ * TODO: revise this interface
  */
 
 if ( !defined( 'MEDIAWIKI' ) ) {

Modified: trunk/extensions/Maps/YahooMaps/Maps_YahooMaps.php
===================================================================
--- trunk/extensions/Maps/YahooMaps/Maps_YahooMaps.php  2010-04-21 20:55:15 UTC 
(rev 65413)
+++ trunk/extensions/Maps/YahooMaps/Maps_YahooMaps.php  2010-04-21 22:09:19 UTC 
(rev 65414)
@@ -96,7 +96,6 @@
                        ),
                );
                                
-               
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['default'] = 
$egMapsYahooMapsZoom;
                
$egMapsServices[self::SERVICE_NAME]['parameters']['zoom']['criteria']['in_range']
 = array( 1, 13 );                             
        }
        

Modified: trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispMap.php
===================================================================
--- trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispMap.php   2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispMap.php   2010-04-21 
22:09:19 UTC (rev 65414)
@@ -17,6 +17,11 @@
        
        public $serviceName = MapsYahooMaps::SERVICE_NAME;
        
+       protected function getDefaultZoom() {
+               global $egMapsYahooMapsZoom; 
+               return $egMapsYahooMapsZoom;
+       }               
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         */

Modified: trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispPoint.php
===================================================================
--- trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispPoint.php 2010-04-21 
20:55:15 UTC (rev 65413)
+++ trunk/extensions/Maps/YahooMaps/Maps_YahooMapsDispPoint.php 2010-04-21 
22:09:19 UTC (rev 65414)
@@ -24,6 +24,11 @@
        
        protected $markerStringFormat = 'getYMarkerData(lat, lon, \'title\', 
\'label\', "icon")';
        
+       protected function getDefaultZoom() {
+               global $egMapsYahooMapsZoom; 
+               return $egMapsYahooMapsZoom;
+       }               
+       
        /**
         * @see MapsBaseMap::doMapServiceLoad()
         *



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

Reply via email to