Table of Contents
Available plugins
Coordinates
Export
Plugin to export query results to various formats
It adds export radio buttons to query result display. Currently implemented format: XLS, PDF, CSV, SHP (experimental).
Define the formats you want to offer for export in /config/your-config/js_config.php
var pmExportFormatList = ['XLS', 'CSV', 'PDF'];
Export to XLS requires the installation of the PEAR modules Spreadsheet_Excel_Writer and OLE (see here for details).
Scalebar
DHTML scalebar based on a library from Tim Schaub of CommEn Space.
Requires 2 DIV's in the map.phtml, like
<div id="scaleReference">
<div id="scalebar"></div>
</div>
Style of the scalebar can be defined via CSS file.
Transparency
Transparency2
Add a slider at the right side of each layer / group of layers in the Table Of Contents. The sliders could represent either transparency, either opacity percentage.
Like the transparency plugin, if you use layerAutoRefresh = 1, the modification of a layer transparency will be immediate. Else, you will need to refresh map manually.
Config.ini example
;============================================================== ; Plugin Transparency2 options : ;-------------------------------------------------------------- ; transp2UseOpacity : ; This parameter permit to use opacity or transparency ; Default value : false ;-------------------------------------------------------------- ;transp2UseOpacity = false
Activation
To activate this plugin, simply add "transparency2" in your plugin list.
transparency / opacity
You can modify your configuration file to indicate if you want to use
- transparency: transp2UseOpacity = false (the default value)
- opacity: transp2UseOpacity = true
Map Selector
This plugins adds a select box to let user swap to another map file configuration. It uses the function to load different config files via URL, like http://www.myurl.org?config=xyz
It requires the definition of pmMapSelectSettings in /config/common/js_config.php :
var pmMapSelectSettings = { displayText:localeList['Select Theme'],
configList:{'default':"Map Default",
'dev':"Map Dev"
},
divId:"mapSelectContainer",
resetSession:'groups'
};
Description of settings:
displayText: Text to show before checkbox
configList: contains key:value pairs,
key = definition of the config (corresponds to 'config_...ini' file),
value = the text displayed in the GUI
divId: Id of DOM element where to add the select box
resetSession: comma-separated string with all session variables to be reset
if set to 'ALL' then *all* session variables are reset.
a typical value is 'groups', which means only the default groups are reset
but the map extent is kept
Rounded Boxes
This is a small plugin, witch permit to draw "round corners". It uses the "jQuery corner" plugin.
Sometimes, in Internet Explorer 6, some of those corners are hidden by toolbars. To show them, you may need to move a little bit the bars...
Informations about groups / layers
Display informations for each group or layer from the mapfile. For instance, if you use grpInfoLink with value 1 or 2 in your configuration file, when clicking on a group name or on the associated icon, a dynamic window will appear and display the long description about this group.
Activation
To activate this plugin, simply add "infos" in your plugin list. If you don't specify the infosMetadata in your configuration file, the MATADATA fiel named DESCRIPTION will be used.
Customize your informations
Simply specify infosMetadata = "MY_LONG_DESCRIPTION" to use the METADATA field named MY_LONG_DESCRIPTION for instance.
You can use HTML syntax in this field : For example, by adding the following code in the METADATA of the layer named "Cities" in the pmapper_demo.map :
"MY_LONG_DESCRIPTION" "<p>This layer show european cities.</p> <table width='98%' cellspacing='0' cellpadding='0' class='legtab'> <tbody> <tr> <td style='width: 18px;'> <img width='18' height='14' src='images/legend/cities10000eu_i0.png' alt='legend' style='width: 18px; height: 14px;'/> </td> <td><span id='spxg_cities10000eu00' class='vis'>> 1'000'000</span></td> </tr> <tr> <td style='width: 18px;'><img width='18' height='14' src='images/legend/cities10000eu_i1.png' alt='legend'/></td> <td><span id='spxg_cities10000eu01' class='vis'>500'000 - 1'000'000</span></td> </tr> <tr> <td style='width: 18px;'><img width='18' height='14' src='images/legend/cities10000eu_i2.png' alt='legend'/></td> <td><span id='spxg_cities10000eu02' class='vis'>100'000 - 500'000</span></td> </tr> <tr> <td style='width: 18px;'><img width='18' height='14' src='images/legend/cities10000eu_i3.png' alt='legend'/></td> <td><span id='spxg_cities10000eu03' class='vis'>50'000 - 100'000</span></td> </tr> <tr> <td colspan='2'><span>...</span></td> </tr> </tbody> </table> <br />....."
you will automatically obtain :
Config.ini example
;============================================================== ; Plugin infos options : ;-------------------------------------------------------------- ; "infosMetadata" : ; specify the METADATA value to read for each layer. ; If not specified, the value of METADATA DESCRIPTION in the mapfile is used. ;-------------------------------------------------------------- infosMetadata = "MY_LONG_DESCRIPTION"
Add Buttons To Groups
This plugin automatically add buttons for each groups / layer in TOC.
Config.ini example
;==============================================================
; Plugin addbuttonstogroups options :
;--------------------------------------------------------------
; abtgList :
; Comma separated list of text describing buttons to add to each group of layer in TOC.
; Each button is a pipe("|")-separated list of parameters :
; - prefixid : prefix of the element id to add (REQUIRED)
; - hrefjsfunction : js function to call when clicked (REQUIRED)
; - titleandimgalttext : "title" attribute of the link and "alt" attribute of the image(REQUIRED)
; - imgsrc : image to show (REQUIRED)
; - pluginrequired : if this plugin is not specified, then the button is not added (NOT REQUIRED)
; - plugindisabler : if this plugin is specified, then the button is not added (NOT REQUIRED)
; Be careful : "pluginrequired" and "plugindisabler" are just a checked of plugin list.
; It doesn't consider the real successful load of the plugin, but only the list in the ini file.
; Example : info|showGroupInfo|"Show group information"|images/infolink.gif
;--------------------------------------------------------------
;abtgList = "info|showGroupInfo|Layer Info|images/infolink.gif","transp|cmOpenTranspDlg|Transparency|images/menus/transparency-bw.png|transparency|transparency2","zoom|zoom2group|Zoom To Layer|images/zoomtiny.gif"
abtgList = "info|showGroupInfo|Layer Info|images/infolink.gif","zoom|zoom2group|Zoom To Layer|images/zoomtiny.gif"
With the line
abtgList = "info|showGroupInfo|Layer Info|images/infolink.gif","zoom|zoom2group|Zoom To Layer|images/zoomtiny.gif"
you will obtain the group with the following HTML code :
<th id="tgrp_countries" class="grp"> <span id="spxg_countries" class="vis">Countries</span> </th> will become : <th id="tgrp_countries" class="grp"> <span id="spxg_countries" class="vis">Countries</span> <a title="Layer Info" href="javascript:showGroupInfo('tgrp_countries')"> <img src="images/infolink.gif" alt="Layer Info"/> </a> <a title="Zoom To Layer" href="javascript:zoom2group('tgrp_countries')"> <img src="images/zoomtiny.gif" alt="Zoom To Layer"/> </a> </th>
Themes and views
This plugin can extend the layers selection.
Few definitions :
- a theme is a list of layer to select, possibly with opacity.
- a view is a theme but with extent.
What does this plugins can do ?
- auto insert a selectbox to chose a theme
- auto insert a selectbox to chose a view
- use a button tool to show theme box in "mapToolArea"
- use a button tool to show view box in "mapToolArea"
- if use with "legendonly" plugin, TOC behavior become very simple (but with less functionalities !) for GIS beginner
Activation
- add the string "themesandviews" to the plugins list in the pmapper config file.
- add parameters to your pmapper ini config file:
- tavFile: XML file path and name describing your themes and views
- tavThemesBoxType: how to insert themesbox
- tavThemesBoxContainer: container for themesbox
- tavThemesKeepSelected: when a theme is selected in the selectbox, should the box keep it selected ?
- tavViewsBoxType: see tavThemesBoxType
- tavViewsBoxContainer: see tavThemesBoxContainer
- tavViewsKeepSelected: see tavThemesKeepSelected
- tavSetDefault: indicate if a theme or a view will be automaticaly applied
- tavDefaultCodeValue: code of the theme or view auto-loaded
- configure your themes and views (either with Themes and views Administration plugin, either directly in a XML file)
- if you want, you add new tools in your button bar. To do that, modify your "$buttons" variable in "php_config.php" (in your config directory) like this:
"themesbox" => array(_p("Apply theme"), "0") for themes "viewsbox" => array(_p("Apply vue"), "0") for views
Complementary plugin : Themes and views Administration plugin
Config.ini example
;============================================================== ; Plugin ThemesAndViews options : ;-------------------------------------------------------------- ; tavThemesType and tavViewsType : ; - 0 = disabled (default value), but can be use with buttons tools ; - 1 = div fixed in the window with manual insert of the div ; - 2 = div fixed in the window but automaticaly inserted in the div ; as first element specified by tavThemesBoxContainer and tavViewsBoxContainer ; - 3 = div fixed in the window but automaticaly inserted in the div ; as last element specified by tavThemesBoxContainer and tavViewsBoxContainer ;-------------------------------------------------------------- ; tavThemesBoxContainer and tavViewsBoxContainer : ; id of the div containing the boxes ; (default is "mapNorth") ;-------------------------------------------------------------- ; tavThemesKeepSelected and tavViewsKeepSelected: ; indicate if the selected element keep selected, or if the box is re-initialized ; (default value is false) ; Indeed, this parameters is only interesting with the "legendonly" plugin. ;-------------------------------------------------------------- ; tavSetDefault : ; if specified, then just after loading, the chosen theme or view (specified ; by "tavDefaultCodeValue" parameter) is applied. ; Possible values : "theme", "view", "none" ; (default value is "none") ;-------------------------------------------------------------- ; tavDefaultCodeValue ; Name of the theme or vue to use by default. ; If not specified, then the first one in the TAV file will be use. ;-------------------------------------------------------------- ; tavFile : ; path to the file (default is "themesandviews.xml" in the config directiry) ;-------------------------------------------------------------- tavThemesBoxType = 2 tavThemesBoxContainer = toc ;tavThemesKeepSelected = false ;tavViewsBoxType = 2 ;tavViewsBoxContainer = mapSouth ;tavViewsKeepSelected = false ;tavSetDefault = view ;tavDefaultCodeValue = France ;tavFile = xxxx/themesandviews.xml
Themes and views Administration
Query Editor
The QueryEditor plugin is a form witch permit to construct attribute query (syntax is near SQL).
Wait for minor bug correction: see 4...
Activation
- add the string queryeditor to the plugins list in the pmapper config file.
- modify the "queryEditorLayersChoice" (and "queryEditorLayersList" if needed) parameters in your ini configuration file.
- add new tool in your button bar. To do that, modify your "$buttons" variable in "php_config.php" (in your configuration directory) like this:
"queryeditor" => array(_p("Query Editor"), "openQueryEditorDlg") - add the image for buttons... (available in the install sub-directory)
Config.ini example
;==============================================================
; Plugin QueryEditor options :
;--------------------------------------------------------------
; queryEditorLayersChoice:
; indicate witch layers / groups are available for attribute query
; in the query editor
; - 1 = all non raster layers
; - 2 = pre-defined list of layers (see queryEditorLayersList parameter)
; - 3 = checked and non raster (default value)
; - 4 = checked and visible (depending on scale) and non raster
;--------------------------------------------------------------
; queryEditorLayersList:
; list of layer available in the query editor
; only used if queryEditorLayersChoice = 2
; comma-separated list
; name and description are pipe ("|") separated
;--------------------------------------------------------------
queryEditorLayersChoice = 3
;queryEditorLayersList = "countries|My country layer,cities10000eu|My cities level"
Search Tool
Allow to use search with a button in the toolbar. By clicking this button, the search box will appear in the mapToolArea.
Activation
To activate this plugin, simply add "searchtool" in your plugin list. No additional parameters.
CSS issue
Maybe you will need to modify your CSS properties, like for instance :
#mapToolArea {
height: 25px;
text-align: left;
}
.pm_searchcont {
position: relative;
}
Legend only
This plugin will just hide Table Of Contents in order to show only legend in the GUI. It could be useful for GIS beginners, and you can extend it with the complementary plugin Themes and Views.
Activation
To activate this plugin, simply add "legendonly" in your plugin list. No additional parameters.
Warning: this plugin will force legStyle in swap mode.
Geo-statistic
Soon available...
Eye Candy
Soon available...
FishEye
HighLight
Timing Map
This plugin just allow a timing map reload.
In all cases where is necessary to reload the main map at specific time interval.
Activation
To activate this plugin, simply add "timingmap" in your plugin list
Additional parameters:
to add to config file for to overwrite default values
- delayTimingMap: interval time between realoding map event (ms, default 10000)
- displayLoadingTimingMap: 0 for not display reloading image, 1 for diplay it (default 0)
