Upload folder via GUI - inc
This commit is contained in:
34
inc/fields/class-field-gdpr.php
Normal file
34
inc/fields/class-field-gdpr.php
Normal file
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
if (!defined('ABSPATH')) exit;
|
||||
class WMF_Field_GDPR extends WMF_Field_Base {
|
||||
public $type='gdpr'; public $label='DSGVO-Zustimmung'; public $icon='dashicons-shield'; public $category='auswahl';
|
||||
public function defaults() {
|
||||
return array_merge(parent::defaults(),array(
|
||||
'required' => '1',
|
||||
'gdpr_text' => 'Ich stimme der <a href="/datenschutz" target="_blank">Datenschutzerklärung</a> zu.',
|
||||
'error_message' => 'Bitte stimmen Sie der Datenschutzerklärung zu.',
|
||||
));
|
||||
}
|
||||
public function render($field,$value='') { ?>
|
||||
<div class="<?php echo esc_attr($this->wrapper_classes($field)); ?> wmf-gdpr-wrap"<?php echo $this->conditional_attrs($field); ?> data-field-id="<?php echo esc_attr($field['id']); ?>">
|
||||
<label class="wmf-gdpr-label">
|
||||
<input type="checkbox" name="wmf_fields[<?php echo esc_attr($field['id']); ?>]" value="1" <?php checked($value,'1'); ?> <?php echo(!empty($field['required'])&&$field['required']==='1')?'required':''; ?> class="wmf-gdpr-checkbox">
|
||||
<span class="wmf-gdpr-text"><?php echo wp_kses_post($field['gdpr_text']??''); ?></span>
|
||||
</label>
|
||||
<span class="wmf-field-error-msg"></span>
|
||||
</div><?php
|
||||
}
|
||||
public function validate($value,$field) {
|
||||
if(!empty($field['required'])&&$field['required']==='1'&&$value!=='1') {
|
||||
return $field['error_message']??'Bitte stimmen Sie der Datenschutzerklärung zu.';
|
||||
}
|
||||
return true;
|
||||
}
|
||||
public function sanitize($v,$f) { return $v==='1'?'1':'0'; }
|
||||
public function settings_panel($field) {
|
||||
parent::settings_panel($field); ?>
|
||||
<div class="wmf-field-setting"><label>DSGVO-Text (HTML erlaubt)</label><textarea data-setting="gdpr_text" class="widefat" rows="3"><?php echo esc_textarea($field['gdpr_text']??''); ?></textarea></div>
|
||||
<div class="wmf-field-setting"><label>Fehlermeldung</label><input type="text" data-setting="error_message" value="<?php echo esc_attr($field['error_message']??''); ?>" class="widefat"></div>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user