Skip to content

Commit 86833e5

Browse files
committed
Voorzie layer toggler van een standaard omschrijving
1 parent 262578b commit 86833e5

9 files changed

Lines changed: 28 additions & 4 deletions

File tree

plugins/gh-datainmap/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
- Nieuwe versies van ondersteunende software bibliotheken in gebruik genomen (o.a. Redux 4.1.0).
2-
- Mogelijkheid toegevoegd om lagen in/uit te schakelen door gebruik van shortcode instellingen `enable_toggler`, `toggle_layers`, `toggle_types`, `untoggled_layers` en `untoggled_types`. Let op! Bij gebruik eigen stylesheet moet de toggler van opmaak voorzien worden. Standaard staat de toggler uit. Meer informatie in de shortcode documentatie.
2+
- Mogelijkheid toegevoegd om lagen in/uit te schakelen door gebruik van shortcode instellingen `enable_toggler`, `toggle_layers`, `toggle_types`, `untoggled_layers` en `untoggled_types`. Met `filter_description="Uw eigen tekst"` is het mogelijk om per kaart de begeleidende tekst te wijzigen of onderdrukken. Let op! Bij gebruik eigen stylesheet moet de toggler van opmaak voorzien worden. Standaard staat de toggler uit. Meer informatie in de shortcode documentatie.
33

44
**1.9.3 (2021-05-27)**
55

plugins/gh-datainmap/includes/settings.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ function gh_dim_sanitize_settings($input) {
4343
'maxZoom',
4444
'projection',
4545
'search_coord_system',
46-
'filter_description'
46+
'filter_description',
47+
'toggler_description',
4748
];
4849
foreach($text_fields as $k) {
4950
$input[$k] = sanitize_text_field( $input[$k] );

plugins/gh-datainmap/includes/shortcode.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ function gh_dim_shortcode($atts, $content = null) {
3838
'untoggled_layers' => null,
3939
'toggle_types' => 'ALL',
4040
'untoggled_types' => null,
41+
'toggler_description' => $settings['toggler_description'],
4142
'dynamic_loading' => 0,
4243
'css_class' => null,
4344
'filter_properties' => null,
@@ -57,6 +58,7 @@ function gh_dim_shortcode($atts, $content = null) {
5758
$settings['enable_filter'] = $args['enable_filter'] == 1 ? true : false;
5859
$settings['enable_features_listbox'] = $args['enable_features_listbox'] == 1 ? true : false;
5960
$settings['enable_toggler'] = $args['enable_toggler'] == 1 ? true : false;
61+
$settings['toggler_description'] = $args['toggler_description'];
6062
$settings['dynamic_loading'] = $args['dynamic_loading'] == 1 ? true : false;
6163
$settings['filter_description'] = $args['filter_description'];
6264
foreach(['toggle_layers', 'toggle_types', 'untoggled_layers', 'untoggled_types'] as $k) {

plugins/gh-datainmap/views/settings.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,15 @@
198198
<p class="description"><?php _e('Optinally provide a default description to be shown when a user opens the filter menu.', 'gh-datainmap'); ?></p>
199199
</td>
200200
</tr>
201+
<tr>
202+
<th scope="row" valign="top">
203+
<label for="gh-datainmap-settings[toggler_description]"><?php _e('Toggler description', 'gh-datainmap') ?></label>
204+
</th>
205+
<td>
206+
<input type="text" name="gh-datainmap-settings[toggler_description]" id="gh-datainmap-settings[toggler_description]" value="<?php echo esc_attr( $settings['toggler_description'] ) ?>" class="regular-text" />
207+
<p class="description"><?php _e('Optinally provide a default description to be shown when a user opens the toggler menu.', 'gh-datainmap'); ?></p>
208+
</td>
209+
</tr>
201210
<tr>
202211
<th scope="row" valign="top">
203212
<label for="gh-datainmap-settings[projections]"><?php _e('Additional projections (proj4)', 'gh-datainmap') ?></label>

src/actions.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,11 @@ export function storeFeatures(features, sourceId) {
261261
return { type: STORE_FEATURES, features: features, sourceId: sourceId};
262262
}
263263

264+
export const SET_TOGGLER_DESCRIPTION = 'SET_TOGGLER_DESCRIPTION';
265+
export function setTogglerDescription(description) {
266+
return { type: SET_TOGGLER_DESCRIPTION, description: description };
267+
}
268+
264269
export const SET_TOGGLER = 'SET_TOGGLER';
265270
export function setToggler(togglers) {
266271
return { type: SET_TOGGLER, togglers };

src/components/toggler.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ export class TogglerComponent extends Component {
7676
<h1 id={id}>Lagen</h1>
7777
</header>
7878
<div className="gh-dim-togglers">
79+
{this.props.description &&
80+
<p className="gh-dim-togglers-description">{this.props.description}</p>
81+
}
7982
<form>
8083
<div role="group" aria-label="Togglers">
8184
{this.props.layers.map((layer) => {

src/containers/togglerlink.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ const mapStateToProps = (state) => {
2020
layers: state.map.layers,
2121
togglers: state.toggler.togglers,
2222
toggledLayersState: state.toggler.toggledLayersState,
23+
description: state.toggler.description
2324
}
2425
}
2526

src/datainmap.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import SearchComponentLink from './containers/searchlink';
2222
import FeatureComponentLink from './containers/featurelink';
2323
import FilterComponentLink from './containers/filterlink';
2424
import TogglerComponentLink from './containers/togglerlink';
25-
import {configureMapView, fetchWMTSLayer, addMapLayer, setSearchProjection, setSearchTownship, setAvailableFilters, storeFeatures, setFilterDescription, setToggler, toggleLayer} from './actions';
25+
import {configureMapView, fetchWMTSLayer, addMapLayer, setSearchProjection, setSearchTownship, setAvailableFilters, storeFeatures, setFilterDescription, setToggler, toggleLayer, setTogglerDescription} from './actions';
2626
import {mapReducer} from './reducers/map';
2727
import {searchReducer} from './reducers/search';
2828
import {filterReducer} from './reducers/filter';
@@ -207,6 +207,7 @@ if(settings.toggle_layers.length > 0 || settings.toggle_types.length > 0) {
207207
});
208208
});
209209
store.dispatch(setToggler(toggler));
210+
store.dispatch(setTogglerDescription(settings.toggler_description));
210211
}
211212
if(settings.untoggled_layers.length > 0 || settings.untoggled_types.length > 0) {
212213
settings.untoggled_layers.forEach(id => {

src/reducers/toggler.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { SET_TOGGLER, TOGGLE_LAYER } from '../actions';
1+
import { SET_TOGGLER, SET_TOGGLER_DESCRIPTION, TOGGLE_LAYER } from '../actions';
22
import _ from 'lodash';
33

44
const initialState = {
@@ -19,6 +19,8 @@ export const togglerReducer = (state = initialState, action) => {
1919
});
2020
toggledLayersState.push(action.layer);
2121
return { ...state, toggledLayersState };
22+
case SET_TOGGLER_DESCRIPTION:
23+
return { ...state, description: action.description };
2224
}
2325
return state;
2426
};

0 commit comments

Comments
 (0)