Revision ba706bf0
Added by Andreas Kohlbecker about 11 years ago
7.x/modules/cdm_dataportal/settings.php | ||
---|---|---|
41 | 41 |
"cdm_dataportal_media_maxRows" => 1, |
42 | 42 |
); |
43 | 43 |
|
44 |
define('EDIT_MAPSERVER_V1_URI', 'http://edit.africamuseum.be/edit_wp5/v1'); // fall back server is http://edit.br.fgov.be |
|
45 |
define('EDIT_MAPSERVER_V11_URI', 'http://edit.africamuseum.be/edit_wp5/v1.1'); // fall back server is http://edit.br.fgov.be |
|
46 |
define('DISTRIBUTION_TEXTDATA_DISPLAY_ON_TOP', 'distribution_textdata_on_top'); |
|
44 |
/* ---- MAP SETTING CONSTANTS ---- */ |
|
45 |
/** |
|
46 |
* @var array of URIs eg. http://edit.africamuseum.be" |
|
47 |
* An options array |
|
48 |
*/ |
|
49 |
define('EDIT_MAPSERVER_URI', serialize( |
|
50 |
array( |
|
51 |
'http://edit.africamuseum.be'=>'Primary (http://edit.africamuseum.be)', |
|
52 |
'http://edit.br.fgov.be'=>'Secondary (http://edit.br.fgov.be)', |
|
53 |
) |
|
54 |
) |
|
55 |
); |
|
56 |
define('EDIT_MAPSERVER_PATH', '/edit_wp5'); |
|
57 |
/** |
|
58 |
* @var array of versions eg. "v1.2" |
|
59 |
* An options array |
|
60 |
*/ |
|
61 |
define('EDIT_MAPSERVER_VERSION', serialize( |
|
62 |
array( |
|
63 |
'v1' => 'v1' , |
|
64 |
'v1.1' => 'v1.1', |
|
65 |
'v1.2_dev' => 'v1.2_dev' |
|
66 |
) |
|
67 |
) |
|
68 |
); |
|
69 |
define('EDIT_MAPSERVER_URI_DEFAULT', 'http://edit.africamuseum.be'); |
|
70 |
define('EDIT_MAPSERVER_VERSION_DEFAULT', 'v1.1'); |
|
47 | 71 |
|
48 | 72 |
// --- Taxon profile settings --- / |
49 | 73 |
define('LAYOUT_SETTING_PREFIX', 'layout_'); |
... | ... | |
55 | 79 |
'glue' => ' ', |
56 | 80 |
))); |
57 | 81 |
|
82 |
define('DISTRIBUTION_TEXTDATA_DISPLAY_ON_TOP', 'distribution_textdata_on_top'); |
|
83 |
|
|
84 |
|
|
58 | 85 |
/** |
59 | 86 |
* @todo document this function |
60 | 87 |
*/ |
... | ... | |
1305 | 1332 |
/* |
1306 | 1333 |
GEO SERVER |
1307 | 1334 |
*/ |
1308 |
$form['geoserver'] = array(
|
|
1335 |
$form['edit_map_server'] = array(
|
|
1309 | 1336 |
'#type' => 'fieldset', |
1310 |
'#title' => t('Geo Server Settings'), |
|
1337 |
'#tree' => true, |
|
1338 |
'#title' => t('EDIT map service'), |
|
1311 | 1339 |
'#collapsible' => TRUE, |
1312 | 1340 |
'#collapsed' => TRUE, |
1313 | 1341 |
'#description' => t('Configuration and selection of your geo server. |
1314 | 1342 |
The Geo Server is responsible for generating the maps.'), |
1315 | 1343 |
); |
1316 | 1344 |
|
1317 |
$form['geoserver']['edit_map_server'] = array( |
|
1345 |
$current_geoserver_settings = get_edit_map_service_settings(); |
|
1346 |
|
|
1347 |
$form['edit_map_server']['base_uri'] = array( |
|
1318 | 1348 |
'#type' => 'select', |
1319 |
'#title' => t('Geoservice access point URL') . ':', |
|
1320 |
'#default_value' => variable_get('edit_map_server', EDIT_MAPSERVER_V11_URI), |
|
1321 |
'#options' => array( |
|
1322 |
EDIT_MAPSERVER_V1_URI => 'EDIT Map Server v1', |
|
1323 |
EDIT_MAPSERVER_V11_URI => 'EDIT Map Server v1.1', |
|
1324 |
'ALTERNATIVE' => '-- Alternative URL --', |
|
1325 |
), |
|
1326 |
'#description' => t('Select the Map Server you want the data portal to |
|
1327 |
connect. If you want to introduce a custom address just select the |
|
1328 |
Alternative URL value and fill the field Geoservice Access Point |
|
1329 |
- Alternative URL with the custom ip address.'), |
|
1349 |
'#title' => t('EDIT map service') . ':', |
|
1350 |
'#default_value' => $current_geoserver_settings['base_uri'], |
|
1351 |
'#options' => unserialize(EDIT_MAPSERVER_URI), |
|
1352 |
'#description' => t('Select the EDIT map server you want to use within your data portal.'), |
|
1330 | 1353 |
); |
1331 |
|
|
1332 |
$form['geoserver']['edit_map_server_alternative'] = array( |
|
1333 |
'#type' => 'textfield', |
|
1334 |
'#title' => t('Geoservice access point - alternative URL') . ':', |
|
1335 |
'#default_value' => variable_get('edit_map_server_alternative', ''), |
|
1336 |
'#description' => t('Alternative URL of a EDIT Map Service to be used by |
|
1337 |
this portal. You must choose the option <i>-- Alternative URL --</i> in |
|
1338 |
the chooser above to enable this url.'), |
|
1354 |
$form['edit_map_server']['version'] = array( |
|
1355 |
'#type' => 'select', |
|
1356 |
'#title' => t('Version') . ':', |
|
1357 |
'#default_value' => $current_geoserver_settings['version'], |
|
1358 |
'#options' => unserialize(EDIT_MAPSERVER_VERSION), |
|
1359 |
'#description' => t('The version of the EDIT map services'), |
|
1339 | 1360 |
); |
1340 | 1361 |
|
1341 | 1362 |
/* |
... | ... | |
1420 | 1441 |
and can only be used with the EDIT map service version 1.1 or above.'), |
1421 | 1442 |
); |
1422 | 1443 |
|
1423 |
$edit_mapserver_version = getEDITMapServiceVersionNumber();
|
|
1444 |
$edit_mapserver_version = get_edit_map_service_version_number();
|
|
1424 | 1445 |
if ($edit_mapserver_version < 1.1) { |
1425 | 1446 |
$form['map_image']['#description'] = '<div class="messages warning">' . t("The selected EDIT map service version has to small version number: $edit_mapserver_version") . '</div>' |
1426 | 1447 |
. $form['map_image']['#description']; |
... | ... | |
1707 | 1728 |
} |
1708 | 1729 |
|
1709 | 1730 |
/** |
1710 |
* @todo document this function. |
|
1731 |
* Returns an associative array of the currently chosen settings for the EDIT map service or the defaults as |
|
1732 |
* specified in EDIT_MAPSERVER_URI_DEFAULT and EDIT_MAPSERVER_VERSION_DEFAULT: |
|
1733 |
* - base_uri: the protocol and host part , e.g.: http://edit.africamuseum.be |
|
1734 |
* - version: the version, e.g.: v1.1 |
|
1735 |
* |
|
1736 |
* @return array |
|
1737 |
* An associative array of the currently chosen settings for the EDIT map service or the defaults. |
|
1711 | 1738 |
*/ |
1712 |
function getEDITMapServiceURI() { |
|
1713 |
|
|
1714 |
if (variable_get('edit_map_server', FALSE) == 'ALTERNATIVE') { |
|
1715 |
return (variable_get('edit_map_server_alternative', FALSE)); |
|
1716 |
} |
|
1717 |
elseif (variable_get('edit_map_server', FALSE)) { |
|
1718 |
return variable_get('edit_map_server', FALSE); |
|
1719 |
} |
|
1720 |
else { |
|
1721 |
return EDIT_MAPSERVER_V1_URI; |
|
1739 |
function get_edit_map_service_settings() { |
|
1740 |
|
|
1741 |
$settings = variable_get('edit_map_server', array( |
|
1742 |
'base_uri' => EDIT_MAPSERVER_URI_DEFAULT, |
|
1743 |
'version' => EDIT_MAPSERVER_VERSION_DEFAULT |
|
1744 |
) |
|
1745 |
); |
|
1746 |
// replace old non tree like settings by default |
|
1747 |
// TODO to be removed after release 3.1.5 |
|
1748 |
if(!is_array($settings)){ |
|
1749 |
variable_del('edit_map_server'); |
|
1750 |
return get_edit_map_service_settings(); |
|
1722 | 1751 |
} |
1723 | 1752 |
|
1753 |
return $settings; |
|
1724 | 1754 |
} |
1725 | 1755 |
|
1726 | 1756 |
/** |
1727 |
* @todo document this function. |
|
1757 |
* Returns the full edit map service URI e.g.: http://edit.africamuseum.be/edit_wp5/v1.1 |
|
1758 |
* |
|
1759 |
* @return string |
|
1760 |
* The full edit map service URI e.g.: http://edit.africamuseum.be/edit_wp5/v1.1 |
|
1761 |
*/ |
|
1762 |
function get_edit_map_service_full_uri() { |
|
1763 |
$settings = get_edit_map_service_settings(); |
|
1764 |
return $settings['base_uri'] . EDIT_MAPSERVER_PATH . '/' . $settings['version']; |
|
1765 |
} |
|
1766 |
|
|
1767 |
|
|
1768 |
/** |
|
1769 |
* Returns the version number of the currently selected edit mapserver as a float |
|
1728 | 1770 |
* |
1729 | 1771 |
* @return float |
1730 | 1772 |
* The version number of the currently selected edit mapserver as a float. |
1731 | 1773 |
* Returns 0 on error. |
1732 | 1774 |
*/ |
1733 |
function getEDITMapServiceVersionNumber() {
|
|
1775 |
function get_edit_map_service_version_number() {
|
|
1734 | 1776 |
|
1735 |
$pattern = '/v([\d\.]+)$/'; |
|
1777 |
$pattern = '/v([\d\.]+).*$/';
|
|
1736 | 1778 |
|
1737 |
$url = getEDITMapServiceURI();
|
|
1738 |
preg_match($pattern, $url, $matches, PREG_OFFSET_CAPTURE, 3);
|
|
1779 |
$settings = get_edit_map_service_settings();
|
|
1780 |
preg_match($pattern, $settings['version'], $matches, PREG_OFFSET_CAPTURE);
|
|
1739 | 1781 |
if (isset($matches[1])) { |
1740 | 1782 |
// Convert string to float. |
1741 | 1783 |
$version = 1 + $matches[1][0] - 1; |
... | ... | |
1743 | 1785 |
} |
1744 | 1786 |
else { |
1745 | 1787 |
// Report error. |
1746 |
drupal_set_message(t(" Invalid version number in EDIT map service URL: '!edit_mapserver'", array('!edit_mapserver' => variable_get('edit_map_server', EDIT_MAPSERVER_V1_URI))), 'warning'); |
|
1788 |
drupal_set_message(t(" Invalid EDIT map service version number: '!version'", |
|
1789 |
array( |
|
1790 |
'!version' => $settings['version'], |
|
1791 |
'warning') |
|
1792 |
) |
|
1793 |
); |
|
1747 | 1794 |
return 0; |
1748 | 1795 |
} |
1749 | 1796 |
} |
1750 | 1797 |
|
1751 | 1798 |
/** |
1752 |
* returns the array of selected items in a options array
|
|
1799 |
* Returns the array of selected items in a options array
|
|
1753 | 1800 |
* |
1754 | 1801 |
* @param array $options |
1755 | 1802 |
* An options array as generated by a form element like checkoxes, select ..., |
Also available in: Unified diff
solving #3254 (geoserver hardcoded in openlayers_map.js)