WP GDPR Compliance - Version 1.3.2

Version Description

Release date: May 11th, 2018 * Added translatable 'Yes' and 'No' strings. * Added confirmation mails sent after processing a anonymise request. * Added mail sent to the admin when a new request is created. * Added 'noopener noreferrer' to the Privacy Policy link.

Download this release

Release Info

Developer donnyoexman
Plugin Icon 128x128 WP GDPR Compliance
Version 1.3.2
Comparing to
See all releases

Code changes from version 1.3.1 to 1.3.2

Includes/Ajax.php CHANGED
@@ -97,35 +97,35 @@ class Ajax {
97
  if ($id !== false) {
98
  $page = Helper::getAccessRequestPage();
99
  if (!empty($page)) {
100
- if (is_multisite()) {
101
- $siteName = get_blog_option($request->getSiteId(), 'blogname');
102
- $siteEmail = get_blog_option($request->getSiteId(), 'admin_email');
103
- $siteUrl = get_blog_option($request->getSiteId(), 'siteurl');
104
- } else {
105
- $siteName = get_option('blogname');
106
- $siteEmail = get_option('admin_email');
107
- $siteUrl = get_option('siteurl');
108
- }
109
- $subject = sprintf(__('%s - Your data request', WP_GDPR_C_SLUG), $siteName);
 
 
 
 
 
 
 
 
 
 
 
 
110
  $message = sprintf(
111
  __('You have requested to access your data on %s.', WP_GDPR_C_SLUG),
112
  sprintf('<a target="_blank" href="%s">%s</a>', $siteUrl, $siteName)
113
  ) . '<br /><br />';
114
  $message .= sprintf(
115
  __('Please visit this %s to view the data linked to the email address %s', WP_GDPR_C_SLUG),
116
- sprintf(
117
- '<a target="_blank" href="%s">%s</a>',
118
- add_query_arg(
119
- array(
120
- 'wpgdprc' => base64_encode(serialize(array(
121
- 'email' => $request->getEmailAddress(),
122
- 'sId' => $request->getSessionId()
123
- )))
124
- ),
125
- get_permalink($page)
126
- ),
127
- __('page', WP_GDPR_C_SLUG)
128
- ),
129
  $emailAddress
130
  ) . '<br /><br />';
131
  $message .= __('This page is available for 24 hours and can only be reached from the same IP address you requested from.', WP_GDPR_C_SLUG) . '<br />';
@@ -133,6 +133,7 @@ class Ajax {
133
  __('If your link is invalid please fill in a new request: %s.', WP_GDPR_C_SLUG),
134
  sprintf('<a target="_blank" href="%s">%s</a>', get_permalink($page), get_the_title($page))
135
  );
 
136
  $headers = array(
137
  'Content-Type: text/html; charset=UTF-8',
138
  "From: $siteName <$siteEmail>"
@@ -189,6 +190,38 @@ class Ajax {
189
  $id = $request->save();
190
  if ($id === false) {
191
  $output['error'] = __('Something went wrong while saving this request. Please try again.', WP_GDPR_C_SLUG);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
  }
193
  } else {
194
  $output['error'] = __('Session doesn\'t match.', WP_GDPR_C_SLUG);
@@ -230,7 +263,7 @@ class Ajax {
230
  }
231
 
232
  if ($id === 0 || !DeleteRequest::getInstance()->exists($id)) {
233
- $output['error'] = __('This delete request doesn\'t exist.', WP_GDPR_C_SLUG);
234
  }
235
 
236
  // Let's do this!
@@ -297,13 +330,43 @@ class Ajax {
297
  update_post_meta($request->getDataId(), '_shipping_address_2', 'ADDRESS_2');
298
  update_post_meta($request->getDataId(), '_shipping_postcode', 'ZIP_CODE');
299
  update_post_meta($request->getDataId(), '_shipping_city', 'CITY');
 
 
300
  } else {
301
  $output['error'] = __('You\'re not allowed to edit WooCommerce orders.', WP_GDPR_C_SLUG);
302
  }
303
  break;
304
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
305
  } else {
306
- $output['error'] = __('This delete request has already been processed.', WP_GDPR_C_SLUG);
307
  }
308
  }
309
 
97
  if ($id !== false) {
98
  $page = Helper::getAccessRequestPage();
99
  if (!empty($page)) {
100
+ $deleteRequestPage = sprintf(
101
+ '<a target="_blank" href="%s">%s</a>',
102
+ add_query_arg(
103
+ array(
104
+ 'wpgdprc' => base64_encode(serialize(array(
105
+ 'email' => $request->getEmailAddress(),
106
+ 'sId' => $request->getSessionId()
107
+ )))
108
+ ),
109
+ get_permalink($page)
110
+ ),
111
+ __('page', WP_GDPR_C_SLUG)
112
+ );
113
+ $siteName = Helper::getSiteData('blogname', $request->getSiteId());
114
+ $siteEmail = Helper::getSiteData('admin_email', $request->getSiteId());
115
+ $siteUrl = Helper::getSiteData('siteurl', $request->getSiteId());
116
+ $subject = apply_filters(
117
+ 'wpgdprc_access_request_mail_subject',
118
+ sprintf(__('%s - Your data request', WP_GDPR_C_SLUG), $siteName),
119
+ $request,
120
+ $siteName
121
+ );
122
  $message = sprintf(
123
  __('You have requested to access your data on %s.', WP_GDPR_C_SLUG),
124
  sprintf('<a target="_blank" href="%s">%s</a>', $siteUrl, $siteName)
125
  ) . '<br /><br />';
126
  $message .= sprintf(
127
  __('Please visit this %s to view the data linked to the email address %s', WP_GDPR_C_SLUG),
128
+ $deleteRequestPage,
 
 
 
 
 
 
 
 
 
 
 
 
129
  $emailAddress
130
  ) . '<br /><br />';
131
  $message .= __('This page is available for 24 hours and can only be reached from the same IP address you requested from.', WP_GDPR_C_SLUG) . '<br />';
133
  __('If your link is invalid please fill in a new request: %s.', WP_GDPR_C_SLUG),
134
  sprintf('<a target="_blank" href="%s">%s</a>', get_permalink($page), get_the_title($page))
135
  );
136
+ $message = apply_filters('wpgdprc_access_request_mail_content', $message, $request, $deleteRequestPage);
137
  $headers = array(
138
  'Content-Type: text/html; charset=UTF-8',
139
  "From: $siteName <$siteEmail>"
190
  $id = $request->save();
191
  if ($id === false) {
192
  $output['error'] = __('Something went wrong while saving this request. Please try again.', WP_GDPR_C_SLUG);
193
+ } else {
194
+ $siteName = Helper::getSiteData('blogname', $request->getSiteId());
195
+ $siteEmail = Helper::getSiteData('admin_email', $request->getSiteId());
196
+ $siteUrl = Helper::getSiteData('siteurl', $request->getSiteId());
197
+ $adminPage = sprintf(
198
+ '<a target="_blank" href="%s">%s</a>',
199
+ add_query_arg(
200
+ array('type' => 'requests'),
201
+ Helper::getPluginAdminUrl()
202
+ ),
203
+ __('Requests', WP_GDPR_C_SLUG)
204
+ );
205
+ $subject = apply_filters(
206
+ 'wpgdprc_delete_request_admin_mail_subject',
207
+ sprintf(__('%s - New anonymise request', WP_GDPR_C_SLUG), $siteName),
208
+ $request,
209
+ $siteName
210
+ );
211
+ $message = sprintf(
212
+ __('You have received a new anonymise request on %s.', WP_GDPR_C_SLUG),
213
+ sprintf('<a target="_blank" href="%s">%s</a>', $siteUrl, $siteName)
214
+ ) . '<br /><br />';
215
+ $message .= sprintf(
216
+ __('You can manage this request in the admin panel: %s', WP_GDPR_C_SLUG),
217
+ $adminPage
218
+ );
219
+ $message = apply_filters('wpgdprc_delete_request_admin_mail_content', $message, $request, $adminPage);
220
+ $headers = array(
221
+ 'Content-Type: text/html; charset=UTF-8',
222
+ "From: $siteName <$siteEmail>"
223
+ );
224
+ wp_mail($siteEmail, $subject, $message, $headers);
225
  }
226
  } else {
227
  $output['error'] = __('Session doesn\'t match.', WP_GDPR_C_SLUG);
263
  }
264
 
265
  if ($id === 0 || !DeleteRequest::getInstance()->exists($id)) {
266
+ $output['error'] = __('This request doesn\'t exist.', WP_GDPR_C_SLUG);
267
  }
268
 
269
  // Let's do this!
330
  update_post_meta($request->getDataId(), '_shipping_address_2', 'ADDRESS_2');
331
  update_post_meta($request->getDataId(), '_shipping_postcode', 'ZIP_CODE');
332
  update_post_meta($request->getDataId(), '_shipping_city', 'CITY');
333
+ $request->setProcessed(1);
334
+ $request->save();
335
  } else {
336
  $output['error'] = __('You\'re not allowed to edit WooCommerce orders.', WP_GDPR_C_SLUG);
337
  }
338
  break;
339
  }
340
+
341
+ if (empty($output['error']) && $request->getProcessed()) {
342
+ $accessRequest = new AccessRequest($request->getAccessRequestId());
343
+ $siteName = Helper::getSiteData('blogname', $request->getSiteId());
344
+ $siteEmail = Helper::getSiteData('admin_email', $request->getSiteId());
345
+ $siteUrl = Helper::getSiteData('siteurl', $request->getSiteId());
346
+ $subject = apply_filters(
347
+ 'wpgdprc_delete_request_mail_subject',
348
+ sprintf(__('%s - Your request', WP_GDPR_C_SLUG), $siteName),
349
+ $request,
350
+ $accessRequest
351
+ );
352
+ $message = sprintf(
353
+ __('We have successfully processed your request and your data has been anonymised on %s.', WP_GDPR_C_SLUG),
354
+ sprintf('<a target="_blank" href="%s">%s</a>', $siteUrl, $siteName)
355
+ ) . '<br /><br />';
356
+ $message .= __('The following has been processed:', WP_GDPR_C_SLUG) . '<br />';
357
+ $message .= sprintf('%s #%d with email address %s.', $request->getNiceTypeLabel(), $request->getDataId(), $accessRequest->getEmailAddress());
358
+ $message = apply_filters('wpgdprc_delete_request_mail_content', $message, $request, $accessRequest);
359
+ $headers = array(
360
+ 'Content-Type: text/html; charset=UTF-8',
361
+ "From: $siteName <$siteEmail>"
362
+ );
363
+ $response = wp_mail($accessRequest->getEmailAddress(), $subject, $message, $headers);
364
+ if ($response !== false) {
365
+ $output['message'] = __('Successfully sent an confirmation mail to the user.', WP_GDPR_C_SLUG);
366
+ }
367
+ }
368
  } else {
369
+ $output['error'] = __('This request has already been processed.', WP_GDPR_C_SLUG);
370
  }
371
  }
372
 
Includes/Data.php CHANGED
@@ -171,7 +171,7 @@ class Data {
171
  $output .= '</tbody>';
172
  $output .= '</table>';
173
  $output .= sprintf(
174
- '<p><input type="submit" class="wpgdprc-remove" value="Remove selected %s(s)" /></p>',
175
  str_replace('_', ' ', $type)
176
  );
177
  $output .= '</form>';
171
  $output .= '</tbody>';
172
  $output .= '</table>';
173
  $output .= sprintf(
174
+ '<p><input type="submit" class="wpgdprc-remove" value="Anonymise selected %s(s)" /></p>',
175
  str_replace('_', ' ', $type)
176
  );
177
  $output .= '</form>';
Includes/DeleteRequest.php CHANGED
@@ -209,6 +209,27 @@ class DeleteRequest {
209
  return '';
210
  }
211
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
212
  /**
213
  * @return null|DeleteRequest
214
  */
209
  return '';
210
  }
211
 
212
+ /**
213
+ * @return string
214
+ */
215
+ public function getNiceTypeLabel() {
216
+ switch ($this->getType()) {
217
+ case 'user' :
218
+ $output = __('User', WP_GDPR_C_SLUG);
219
+ break;
220
+ case 'comment' :
221
+ $output = __('Comment', WP_GDPR_C_SLUG);
222
+ break;
223
+ case 'woocommerce_order' :
224
+ $output = __('WooCommerce Order', WP_GDPR_C_SLUG);
225
+ break;
226
+ default :
227
+ $output = $this->getType();
228
+ break;
229
+ }
230
+ return $output;
231
+ }
232
+
233
  /**
234
  * @return null|DeleteRequest
235
  */
Includes/Extensions/WP.php CHANGED
@@ -21,7 +21,7 @@ class WP {
21
  public function addField($submitField = '') {
22
  $field = apply_filters(
23
  'wpgdprc_wordpress_field',
24
- '<p class="wpgdprc-checkbox"><label><input type="checkbox" name="wpgdprc" id="wpgdprc" value="1" />' . Integration::getCheckboxText(self::ID) . ' <abbr class="required" title="' . esc_attr__('required', WP_GDPR_C_SLUG) . '">*</abbr></label></p>',
25
  $submitField
26
  );
27
  return $field . $submitField;
21
  public function addField($submitField = '') {
22
  $field = apply_filters(
23
  'wpgdprc_wordpress_field',
24
+ '<p class="wpgdprc-checkbox"><label><input type="checkbox" name="wpgdprc" id="wpgdprc" value="1" /> ' . Integration::getCheckboxText(self::ID) . ' <abbr class="required" title="' . esc_attr__('required', WP_GDPR_C_SLUG) . '">*</abbr></label></p>',
25
  $submitField
26
  );
27
  return $field . $submitField;
Includes/Helper.php CHANGED
@@ -388,6 +388,19 @@ class Helper {
388
  return self::getClientIpAddress() === $ipAddress;
389
  }
390
 
 
 
 
 
 
 
 
 
 
 
 
 
 
391
  /**
392
  * @return bool|\WP_Post
393
  */
@@ -458,7 +471,7 @@ class Helper {
458
  $output .= " )";
459
  } else {
460
  $value = (isset($filter['value'])) ? $filter['value'] : false;
461
- if (!empty($value)) {
462
  $or = (isset($filter['or']) && filter_var($filter['or'], FILTER_VALIDATE_BOOLEAN)) ? 'OR' : 'AND';
463
  $or = ($grouped === true && $count === 0) ? '' : $or;
464
  $compare = (isset($filter['compare'])) ? $filter['compare'] : '=';
388
  return self::getClientIpAddress() === $ipAddress;
389
  }
390
 
391
+ /**
392
+ * @param string $type
393
+ * @param int $siteId
394
+ * @return string
395
+ */
396
+ public static function getSiteData($type = '', $siteId = 0) {
397
+ $output = '';
398
+ if (!empty($type)) {
399
+ $output = (!empty($siteId)) ? get_blog_option($siteId, $type) : get_option($type);
400
+ }
401
+ return $output;
402
+ }
403
+
404
  /**
405
  * @return bool|\WP_Post
406
  */
471
  $output .= " )";
472
  } else {
473
  $value = (isset($filter['value'])) ? $filter['value'] : false;
474
+ if ($value !== false) {
475
  $or = (isset($filter['or']) && filter_var($filter['or'], FILTER_VALIDATE_BOOLEAN)) ? 'OR' : 'AND';
476
  $or = ($grouped === true && $count === 0) ? '' : $or;
477
  $compare = (isset($filter['compare'])) ? $filter['compare'] : '=';
Includes/Integration.php CHANGED
@@ -284,7 +284,7 @@ class Integration {
284
  $link = apply_filters(
285
  'wpgdprc_privacy_policy_link',
286
  sprintf(
287
- '<a target="_blank" href="%s">%s</a>',
288
  get_page_link($page),
289
  esc_html($text)
290
  ),
284
  $link = apply_filters(
285
  'wpgdprc_privacy_policy_link',
286
  sprintf(
287
+ '<a target="_blank" href="%s" rel="noopener noreferrer">%s</a>',
288
  get_page_link($page),
289
  esc_html($text)
290
  ),
Includes/Page.php CHANGED
@@ -55,80 +55,102 @@ class Page {
55
  ?>
56
  <div class="wrap">
57
  <div class="wpgdprc">
58
- <h1 class="wpgdprc-title"><?php echo $pluginData['Name']; ?> <?php printf('v%s', $pluginData['Version']); ?></h1>
 
59
 
60
- <?php settings_errors(); ?>
61
 
62
- <div class="wpgdprc-navigation wpgdprc-clearfix">
63
- <a class="<?php echo (empty($type)) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>"><?php _e('Integration', WP_GDPR_C_SLUG); ?></a>
64
- <?php
65
- if ($enableAccessRequest) :
66
- $totalDeleteRequests = DeleteRequest::getInstance()->getTotal();
67
- ?>
68
- <a class="<?php echo checked('requests', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=requests">
69
- <?php _e('Requests', WP_GDPR_C_SLUG); ?>
 
 
 
 
 
 
 
 
 
 
70
  <?php
71
- if ($totalDeleteRequests > 1) {
72
- printf('<span class="wpgdprc-badge">%d</span>', $totalDeleteRequests);
73
- } ?>
74
- </a>
 
 
 
75
  <?php
76
- endif;
77
- ?>
78
- <a class="<?php echo checked('checklist', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=checklist"><?php _e('Checklist', WP_GDPR_C_SLUG); ?></a>
79
- <a class="<?php echo checked('settings', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=settings"><?php _e('Settings', WP_GDPR_C_SLUG); ?></a>
80
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
 
82
- <div class="wpgdprc-content wpgdprc-clearfix">
83
- <?php
84
- switch ($type) {
85
- case 'requests' :
86
- $id = (isset($_REQUEST['id']) && is_numeric($_REQUEST['id'])) ? intval($_REQUEST['id']) : 0;
87
- if (!empty($id) && AccessRequest::getInstance()->exists($id)) {
88
- self::renderManageRequestPage($id);
89
- } else {
90
- self::renderRequestsPage();
91
- }
92
- break;
93
- case 'checklist' :
94
- self::renderChecklistPage();
95
- break;
96
- case 'settings' :
97
- self::renderSettingsPage();
98
- break;
99
- default :
100
- self::renderIntegrationsPage();
101
- break;
102
- }
103
- ?>
104
- </div>
105
 
106
- <div class="wpgdprc-description">
107
- <p><?php _e('This plugin assists website and webshop owners to comply with European privacy regulations known as GDPR. By May 25th, 2018 your site or shop has to comply.', WP_GDPR_C_SLUG); ?></p>
108
- <p><?php
109
- printf(
110
- __('%s currently supports %s. Please visit %s for frequently asked questions and our development roadmap.', WP_GDPR_C_SLUG),
111
- $pluginData['Name'],
112
- implode(', ', Integration::getSupportedIntegrationsLabels()),
113
- sprintf('<a target="_blank" href="%s">%s</a>', '//www.wpgdprc.com/', 'www.wpgdprc.com')
114
- );
115
- ?></p>
116
  </div>
117
 
118
- <p class="wpgdprc-disclaimer"><?php _e('Disclaimer: The creators of this plugin do not have a legal background please contact a law firm for rock solid legal advice.', WP_GDPR_C_SLUG); ?></p>
119
-
120
- <?php if ($daysLeftToComply > 0) : ?>
121
- <div class="wpgdprc-countdown">
122
- <div class="wpgdprc-countdown-inner">
123
- <h2><?php echo date(get_option('date_format'), strtotime('25 May 2018')); ?></h2>
124
- <p><?php printf(__('You have %s left to comply with GDPR.', WP_GDPR_C_SLUG), sprintf(_n('%s day', '%s days', $daysLeftToComply, WP_GDPR_C_SLUG), number_format_i18n($daysLeftToComply))); ?></p>
 
 
125
  </div>
 
 
 
 
 
 
 
126
  </div>
127
- <?php endif; ?>
128
 
129
  <div class="wpgdprc-background"><?php include(WP_GDPR_C_DIR_SVG . '/inline-waves.svg.php'); ?></div>
130
  </div>
131
  </div>
 
 
 
 
132
  <?php
133
  }
134
 
@@ -330,7 +352,7 @@ class Page {
330
  </div>
331
  </div>
332
  <div class="wpgdprc-setting">
333
- <label for="<?php echo $optionNameDeleteRequestFormExplanationText; ?>"><?php _e('Delete request explanation', WP_GDPR_C_SLUG); ?></label>
334
  <div class="wpgdprc-options">
335
  <textarea name="<?php echo $optionNameDeleteRequestFormExplanationText; ?>" rows="5" id="<?php echo $optionNameAccessRequestFormCheckboxText; ?>" placeholder="<?php echo $deleteRequestFormExplanationText; ?>"><?php echo $deleteRequestFormExplanationText; ?></textarea>
336
  <?php echo Helper::getAllowedHTMLTagsOutput(); ?>
@@ -390,7 +412,7 @@ class Page {
390
  ?>
391
  <tr data-id="<?php echo $request->getId(); ?>">
392
  <td><?php printf('#%d', $request->getId()); ?></td>
393
- <td><?php echo $request->getType(); ?></td>
394
  <td><?php echo $request->getIpAddress(); ?></td>
395
  <td><?php echo $request->getDateCreated(); ?></td>
396
  <td><span class="dashicons dashicons-<?php echo ($request->getProcessed()) ? 'yes' : 'no'; ?>"></span></td>
@@ -436,7 +458,7 @@ class Page {
436
  <?php
437
  else :
438
  ?>
439
- <p><strong><?php _e('No delete requests found.', WP_GDPR_C_SLUG); ?></strong></p>
440
  <?php
441
  endif;
442
  ?>
55
  ?>
56
  <div class="wrap">
57
  <div class="wpgdprc">
58
+ <div class="wpgdprc-contents">
59
+ <h1 class="wpgdprc-title"><?php echo $pluginData['Name']; ?> <?php printf('v%s', $pluginData['Version']); ?></h1>
60
 
61
+ <?php settings_errors(); ?>
62
 
63
+ <div class="wpgdprc-navigation wpgdprc-clearfix">
64
+ <a class="<?php echo (empty($type)) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>"><?php _e('Integration', WP_GDPR_C_SLUG); ?></a>
65
+ <?php
66
+ if ($enableAccessRequest) :
67
+ $totalDeleteRequests = DeleteRequest::getInstance()->getTotal(array(
68
+ 'processed' => array(
69
+ 'value' => 0
70
+ )
71
+ ));
72
+ ?>
73
+ <a class="<?php echo checked('requests', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=requests">
74
+ <?php _e('Requests', WP_GDPR_C_SLUG); ?>
75
+ <?php
76
+ if ($totalDeleteRequests > 1) {
77
+ printf('<span class="wpgdprc-badge">%d</span>', $totalDeleteRequests);
78
+ }
79
+ ?>
80
+ </a>
81
  <?php
82
+ endif;
83
+ ?>
84
+ <a class="<?php echo checked('checklist', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=checklist"><?php _e('Checklist', WP_GDPR_C_SLUG); ?></a>
85
+ <a class="<?php echo checked('settings', $type, false) ? 'wpgdprc-active' : ''; ?>" href="<?php echo $adminUrl; ?>&type=settings"><?php _e('Settings', WP_GDPR_C_SLUG); ?></a>
86
+ </div>
87
+
88
+ <div class="wpgdprc-content wpgdprc-clearfix">
89
  <?php
90
+ switch ($type) {
91
+ case 'requests' :
92
+ $id = (isset($_REQUEST['id']) && is_numeric($_REQUEST['id'])) ? intval($_REQUEST['id']) : 0;
93
+ if (!empty($id) && AccessRequest::getInstance()->exists($id)) {
94
+ self::renderManageRequestPage($id);
95
+ } else {
96
+ self::renderRequestsPage();
97
+ }
98
+ break;
99
+ case 'checklist' :
100
+ self::renderChecklistPage();
101
+ break;
102
+ case 'settings' :
103
+ self::renderSettingsPage();
104
+ break;
105
+ default :
106
+ self::renderIntegrationsPage();
107
+ break;
108
+ }
109
+ ?>
110
+ </div>
111
 
112
+ <div class="wpgdprc-description">
113
+ <p><?php _e('This plugin assists website and webshop owners to comply with European privacy regulations known as GDPR. By May 25th, 2018 your site or shop has to comply.', WP_GDPR_C_SLUG); ?></p>
114
+ <p><?php
115
+ printf(
116
+ __('%s currently supports %s. Please visit %s for frequently asked questions and our development roadmap.', WP_GDPR_C_SLUG),
117
+ $pluginData['Name'],
118
+ implode(', ', Integration::getSupportedIntegrationsLabels()),
119
+ sprintf('<a target="_blank" href="%s">%s</a>', '//www.wpgdprc.com/', 'www.wpgdprc.com')
120
+ );
121
+ ?></p>
122
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
123
 
124
+ <p class="wpgdprc-disclaimer"><?php _e('Disclaimer: The creators of this plugin do not have a legal background please contact a law firm for rock solid legal advice.', WP_GDPR_C_SLUG); ?></p>
 
 
 
 
 
 
 
 
 
125
  </div>
126
 
127
+ <div class="wpgdprc-sidebar">
128
+ <?php if ($daysLeftToComply > 0) : ?>
129
+ <div class="wpgdprc-sidebar-block wpgdprc-sidebar-block--no-background">
130
+ <div class="wpgdprc-countdown">
131
+ <div class="wpgdprc-countdown-inner">
132
+ <h2><?php echo date(get_option('date_format'), strtotime('25 May 2018')); ?></h2>
133
+ <p><?php printf(__('You have %s left to comply with GDPR.', WP_GDPR_C_SLUG), sprintf(_n('%s day', '%s days', $daysLeftToComply, WP_GDPR_C_SLUG), number_format_i18n($daysLeftToComply))); ?></p>
134
+ </div>
135
+ </div>
136
  </div>
137
+ <?php endif; ?>
138
+
139
+ <div class="wpgdprc-sidebar-block">
140
+ <h3><?php _e('Rate us', WP_GDPR_C_SLUG); ?></h3>
141
+ <div class="wpgdprc-stars"></div>
142
+ <p><?php echo sprintf(__('Did %s help you out? Please leave a positive 5-star review.', WP_GDPR_C_SLUG), $pluginData['Name']); ?></p>
143
+ <a target="_blank" href="//wordpress.org/support/plugin/wp-gdpr-compliance/reviews/#new-post" class="button button-primary" rel="noopener noreferrer"><?php _e('Write a review', WP_GDPR_C_SLUG); ?></a>
144
  </div>
145
+ </div>
146
 
147
  <div class="wpgdprc-background"><?php include(WP_GDPR_C_DIR_SVG . '/inline-waves.svg.php'); ?></div>
148
  </div>
149
  </div>
150
+ <style>
151
+ .wpgdprc-switch .wpgdprc-switch-inner:before { content: '<?php _e('Yes', WP_GDPR_C_SLUG); ?>'; }
152
+ .wpgdprc-switch .wpgdprc-switch-inner:after { content: '<?php _e('No', WP_GDPR_C_SLUG); ?>'; }
153
+ </style>
154
  <?php
155
  }
156
 
352
  </div>
353
  </div>
354
  <div class="wpgdprc-setting">
355
+ <label for="<?php echo $optionNameDeleteRequestFormExplanationText; ?>"><?php _e('Anonymise request explanation', WP_GDPR_C_SLUG); ?></label>
356
  <div class="wpgdprc-options">
357
  <textarea name="<?php echo $optionNameDeleteRequestFormExplanationText; ?>" rows="5" id="<?php echo $optionNameAccessRequestFormCheckboxText; ?>" placeholder="<?php echo $deleteRequestFormExplanationText; ?>"><?php echo $deleteRequestFormExplanationText; ?></textarea>
358
  <?php echo Helper::getAllowedHTMLTagsOutput(); ?>
412
  ?>
413
  <tr data-id="<?php echo $request->getId(); ?>">
414
  <td><?php printf('#%d', $request->getId()); ?></td>
415
+ <td><?php echo $request->getNiceTypeLabel(); ?></td>
416
  <td><?php echo $request->getIpAddress(); ?></td>
417
  <td><?php echo $request->getDateCreated(); ?></td>
418
  <td><span class="dashicons dashicons-<?php echo ($request->getProcessed()) ? 'yes' : 'no'; ?>"></span></td>
458
  <?php
459
  else :
460
  ?>
461
+ <p><strong><?php _e('No requests found.', WP_GDPR_C_SLUG); ?></strong></p>
462
  <?php
463
  endif;
464
  ?>
Includes/Shortcode.php CHANGED
@@ -92,15 +92,27 @@ class Shortcode {
92
  $output .= self::getAccessRequestData();
93
  } else {
94
  $output .= '<form class="wpgdprc-form wpgdprc-form--access-request" name="wpgdprc_form" method="POST">';
95
- $output .= apply_filters('wpgdprc_request_form_email_field', '<p><input type="email" name="wpgdprc_email" id="wpgdprc-form__email" placeholder="' . esc_attr__(apply_filters('wpgdprc_request_form_email_placeholder', __('Your Email Address', WP_GDPR_C_SLUG))) . '" required /></p>');
 
 
 
 
 
 
96
  $output .= apply_filters(
97
  'wpgdprc_request_form_consent_field',
98
  sprintf(
99
- '<p><input type="checkbox" name="wpgdprc_consent" id="wpgdprc-form__consent" value="1" required /> %s</p>',
100
  Integration::getAccessRequestFormCheckboxText()
101
  )
102
  );
103
- $output .= apply_filters('wpgdprc_request_form_submit_field', '<p><input type="submit" name="wpgdprc_submit" value="' . esc_attr__(apply_filters('wpgdprc_request_form_submit_label', __('Send', WP_GDPR_C_SLUG))) . '" /></p>');
 
 
 
 
 
 
104
  $output .= '<div class="wpgdprc-feedback" style="display: none;"></div>';
105
  $output .= '</form>';
106
  }
92
  $output .= self::getAccessRequestData();
93
  } else {
94
  $output .= '<form class="wpgdprc-form wpgdprc-form--access-request" name="wpgdprc_form" method="POST">';
95
+ $output .= apply_filters(
96
+ 'wpgdprc_request_form_email_field',
97
+ sprintf(
98
+ '<p><input type="email" name="wpgdprc_email" id="wpgdprc-form__email" placeholder="%s" required /></p>',
99
+ esc_attr__(apply_filters('wpgdprc_request_form_email_placeholder', __('Your Email Address', WP_GDPR_C_SLUG)))
100
+ )
101
+ );
102
  $output .= apply_filters(
103
  'wpgdprc_request_form_consent_field',
104
  sprintf(
105
+ '<p><label><input type="checkbox" name="wpgdprc_consent" id="wpgdprc-form__consent" value="1" required /> %s</label></p>',
106
  Integration::getAccessRequestFormCheckboxText()
107
  )
108
  );
109
+ $output .= apply_filters(
110
+ 'wpgdprc_request_form_submit_field',
111
+ sprintf(
112
+ '<p><input type="submit" name="wpgdprc_submit" value="%s" /></p>',
113
+ esc_attr__(apply_filters('wpgdprc_request_form_submit_label', __('Send', WP_GDPR_C_SLUG)))
114
+ )
115
+ );
116
  $output .= '<div class="wpgdprc-feedback" style="display: none;"></div>';
117
  $output .= '</form>';
118
  }
assets/css/admin.css CHANGED
@@ -1,3 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .wpgdprc-clearfix:before, .wpgdprc-clearfix:after {
2
  content: " ";
3
  display: table;
@@ -26,17 +59,17 @@
26
  }
27
 
28
  .wpgdprc {
 
29
  padding: 20px;
30
  -webkit-box-sizing: border-box;
31
  -moz-box-sizing: border-box;
32
  box-sizing: border-box;
33
- max-width: 900px;
34
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
35
  font-weight: normal;
36
  font-size: 14px;
37
  line-height: 1.4;
38
- text-rendering: optimizeLegibility;
39
  color: #0A0A0A;
 
40
  }
41
 
42
  .wpgdprc h1, .wpgdprc h2, .wpgdprc p {
@@ -96,6 +129,10 @@ div.wpgdprc-message p:first-child {
96
  margin-top: 0;
97
  }
98
 
 
 
 
 
99
  div.wpgdprc-message--notice {
100
  background: #FFF3D9;
101
  border-color: #E7D996;
@@ -141,8 +178,10 @@ h1.wpgdprc-title {
141
 
142
  div.wpgdprc-description {
143
  margin-top: 20px;
144
- padding: 10px;
145
- background: #F1F1F1;
 
 
146
  }
147
 
148
  div.wpgdprc-description p {
@@ -189,6 +228,41 @@ table.wpgdprc-table tr:nth-child(even) {
189
  fill: #4AA94F;
190
  }
191
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
  .wpgdprc-navigation {
193
  border-bottom: 1px solid #DBD6D6;
194
  }
@@ -343,18 +417,18 @@ span.wpgdprc-instructions {
343
  .wpgdprc-switch .wpgdprc-switch-inner:after {
344
  float: left;
345
  width: 50%;
 
346
  line-height: 30px;
347
  color: #FFFFFF;
 
348
  }
349
 
350
  .wpgdprc-switch .wpgdprc-switch-inner:before {
351
- content: 'YES';
352
  padding-left: 10px;
353
  background-color: #4AA94F;
354
  }
355
 
356
  .wpgdprc-switch .wpgdprc-switch-inner:after {
357
- content: 'NO';
358
  padding-right: 10px;
359
  background-color: #0A0A0A;
360
  text-align: right;
@@ -472,7 +546,7 @@ span.wpgdprc-instructions {
472
 
473
  .wpgdprc-countdown {
474
  display: table;
475
- margin: 30px auto 0;
476
  padding: 20px;
477
  background: #4AA94F;
478
  -webkit-border-radius: 50%;
@@ -516,6 +590,17 @@ span.wpgdprc-instructions {
516
  margin-left: 10px;
517
  }
518
 
 
 
 
 
 
 
 
 
 
 
 
519
  @media screen and (max-width: 639px) {
520
  .wpgdprc-instructions {
521
  display: none;
@@ -540,11 +625,35 @@ span.wpgdprc-instructions {
540
  }
541
  }
542
 
543
- @media screen and (min-width: 1400px) {
544
- .wpgdprc-countdown {
545
- position: absolute;
546
- top: 30px;
547
- right: 30px;
548
- margin: 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
549
  }
550
  }
1
+ @keyframes wpgdprc-stars {
2
+ 1% {
3
+ background-position: 0;
4
+ }
5
+ 2% {
6
+ background-position: 30px;
7
+ }
8
+ 3% {
9
+ background-position: 60px;
10
+ }
11
+ 4% {
12
+ background-position: 90px;
13
+ }
14
+ 5% {
15
+ background-position: 120px;
16
+ }
17
+ 6% {
18
+ background-position: 150px;
19
+ }
20
+ 7% {
21
+ background-position: 180px;
22
+ }
23
+ 8% {
24
+ background-position: 210px;
25
+ }
26
+ 9% {
27
+ background-position: 240px;
28
+ }
29
+ 100% {
30
+ background-position: 240px;
31
+ }
32
+ }
33
+
34
  .wpgdprc-clearfix:before, .wpgdprc-clearfix:after {
35
  content: " ";
36
  display: table;
59
  }
60
 
61
  .wpgdprc {
62
+ display: flex;
63
  padding: 20px;
64
  -webkit-box-sizing: border-box;
65
  -moz-box-sizing: border-box;
66
  box-sizing: border-box;
 
67
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
68
  font-weight: normal;
69
  font-size: 14px;
70
  line-height: 1.4;
 
71
  color: #0A0A0A;
72
+ flex-direction: row;
73
  }
74
 
75
  .wpgdprc h1, .wpgdprc h2, .wpgdprc p {
129
  margin-top: 0;
130
  }
131
 
132
+ div.wpgdprc-message p:last-child {
133
+ margin-bottom: 0;
134
+ }
135
+
136
  div.wpgdprc-message--notice {
137
  background: #FFF3D9;
138
  border-color: #E7D996;
178
 
179
  div.wpgdprc-description {
180
  margin-top: 20px;
181
+ padding: 20px;
182
+ background: #F3F3F3;
183
+ border-bottom: 2px solid #DFDFDF;
184
+ border-radius: 5px;
185
  }
186
 
187
  div.wpgdprc-description p {
228
  fill: #4AA94F;
229
  }
230
 
231
+ .wpgdprc-contents {
232
+ flex: 11;
233
+ }
234
+
235
+ .wpgdprc-sidebar {
236
+ flex: 3;
237
+ padding: 0 20px;
238
+ align-items: flex-start;
239
+ align-content: flex-start;
240
+ }
241
+
242
+ .wpgdprc-sidebar-block {
243
+ background: #F3F3F3;
244
+ padding: 20px;
245
+ margin: 0 0 20px 0;
246
+ border-bottom: 2px solid #DFDFDF;
247
+ border-radius: 5px;
248
+ }
249
+
250
+ .wpgdprc-sidebar-block h3 {
251
+ display: inline-block;
252
+ margin: 0;
253
+ }
254
+
255
+ .wpgdprc-sidebar-block--no-background {
256
+ background: none;
257
+ border: 0;
258
+ }
259
+
260
+ .wpgdprc-sidebar-donate {
261
+ margin: 5px 0 0 10px;
262
+ display: inline-block;
263
+ float: right;
264
+ }
265
+
266
  .wpgdprc-navigation {
267
  border-bottom: 1px solid #DBD6D6;
268
  }
417
  .wpgdprc-switch .wpgdprc-switch-inner:after {
418
  float: left;
419
  width: 50%;
420
+ text-transform: uppercase;
421
  line-height: 30px;
422
  color: #FFFFFF;
423
+ content: '';
424
  }
425
 
426
  .wpgdprc-switch .wpgdprc-switch-inner:before {
 
427
  padding-left: 10px;
428
  background-color: #4AA94F;
429
  }
430
 
431
  .wpgdprc-switch .wpgdprc-switch-inner:after {
 
432
  padding-right: 10px;
433
  background-color: #0A0A0A;
434
  text-align: right;
546
 
547
  .wpgdprc-countdown {
548
  display: table;
549
+ margin: 0 auto;
550
  padding: 20px;
551
  background: #4AA94F;
552
  -webkit-border-radius: 50%;
590
  margin-left: 10px;
591
  }
592
 
593
+ .wpgdprc-stars {
594
+ margin: 15px auto;
595
+ width: 150px;
596
+ height: 30px;
597
+ background: url('../svg/stars.svg');
598
+ animation: wpgdprc-stars 4.5s steps(1, end) infinite;
599
+ -webkit-animation: wpgdprc-stars 4.5s steps(1, end) infinite;
600
+ -moz-animation: wpgdprc-stars 4.5s steps(1, end) infinite;
601
+ -o-animation: wpgdprc-stars 4.5s steps(1, end) infinite;
602
+ }
603
+
604
  @media screen and (max-width: 639px) {
605
  .wpgdprc-instructions {
606
  display: none;
625
  }
626
  }
627
 
628
+ @media screen and (max-width: 1400px) {
629
+ .wpgdprc {
630
+ display: block;
631
+ }
632
+ .wpgdprc-contents, .wpgdprc-sidebar {
633
+ display: block;
634
+ max-width: 100%;
635
+ width: 100%;
636
+ }
637
+ .wpgdprc-sidebar {
638
+ display: flex;
639
+ margin: 30px 0 0 0;
640
+ }
641
+ .wpgdprc-sidebar-block {
642
+ margin: 0 30px 0 0;
643
+ width: 33%;
644
+ }
645
+ }
646
+
647
+ @media screen and (min-width: 320px) and (max-width: 840px) {
648
+ .wpgdprc-sidebar {
649
+ display: block;
650
+ }
651
+ .wpgdprc-sidebar-block {
652
+ max-width: 400px;
653
+ width: 100%;
654
+ margin: 0 auto;
655
+ }
656
+ .wpgdprc .button.button-primary {
657
+ height: auto;
658
  }
659
  }
assets/svg/stars.svg ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="240" height="30" viewBox="0 0 240 30">
2
+ <g fill="none" fill-rule="evenodd">
3
+ <path d="M0 0h30v30H0zM30 0h30v30H30zM60 0h30v30H60zM90 0h30v30H90zM120 0h30v30h-30zM180 0h30v30h-30zM150 0h30v30h-30zM210 0h30v30h-30z"/>
4
+ <path fill="#4AA94F" d="M14.362 5.703c.157-.312.386-.52.687-.625.3-.104.601-.104.902 0 .301.104.53.313.687.625l2.551 5.156 5.73.82c.34.053.609.209.805.47a1.3 1.3 0 0 1 .275.859 1.196 1.196 0 0 1-.373.82l-4.16 4.024.98 5.703c.053.312-.006.605-.176.879-.17.273-.412.449-.726.527-.314.078-.615.039-.903-.117L15.5 22.187l-5.141 2.657a1.216 1.216 0 0 1-.903.117 1.152 1.152 0 0 1-.726-.527 1.229 1.229 0 0 1-.177-.88l.981-5.702-4.16-4.024a1.196 1.196 0 0 1-.373-.82 1.3 1.3 0 0 1 .275-.86c.196-.26.464-.416.805-.468l5.73-.82 2.55-5.157zM44.362 5.703c.157-.312.386-.52.687-.625.3-.104.601-.104.902 0 .301.104.53.313.687.625l2.551 5.156 5.73.82c.34.053.609.209.805.47a1.3 1.3 0 0 1 .275.859 1.196 1.196 0 0 1-.373.82l-4.16 4.024.98 5.703c.053.312-.006.605-.176.879-.17.273-.412.449-.726.527-.314.078-.615.039-.903-.117L45.5 22.187l-5.141 2.657a1.216 1.216 0 0 1-.903.117 1.152 1.152 0 0 1-.726-.527 1.229 1.229 0 0 1-.177-.88l.981-5.702-4.16-4.024a1.196 1.196 0 0 1-.373-.82 1.3 1.3 0 0 1 .275-.86c.196-.26.464-.416.805-.468l5.73-.82 2.55-5.157zM74.362 5.703c.157-.312.386-.52.687-.625.3-.104.601-.104.902 0 .301.104.53.313.687.625l2.551 5.156 5.73.82c.34.053.609.209.805.47a1.3 1.3 0 0 1 .275.859 1.196 1.196 0 0 1-.373.82l-4.16 4.024.98 5.703c.053.312-.006.605-.176.879-.17.273-.412.449-.726.527-.314.078-.615.039-.903-.117L75.5 22.187l-5.141 2.657a1.216 1.216 0 0 1-.903.117 1.152 1.152 0 0 1-.726-.527 1.229 1.229 0 0 1-.177-.88l.981-5.702-4.16-4.024a1.196 1.196 0 0 1-.373-.82 1.3 1.3 0 0 1 .275-.86c.196-.26.464-.416.805-.468l5.73-.82 2.55-5.157zM104.362 5.703c.157-.312.386-.52.687-.625.3-.104.601-.104.902 0 .301.104.53.313.687.625l2.551 5.156 5.73.82c.34.053.609.209.805.47a1.3 1.3 0 0 1 .275.859 1.196 1.196 0 0 1-.373.82l-4.16 4.024.98 5.703c.053.312-.006.605-.176.879-.17.273-.412.449-.726.527-.314.078-.615.039-.903-.117l-5.141-2.657-5.141 2.657a1.216 1.216 0 0 1-.903.117 1.152 1.152 0 0 1-.726-.527 1.229 1.229 0 0 1-.177-.88l.981-5.702-4.16-4.024a1.196 1.196 0 0 1-.373-.82 1.3 1.3 0 0 1 .275-.86c.196-.26.464-.416.805-.468l5.73-.82 2.55-5.157zM134.362 5.703c.157-.312.386-.52.687-.625.3-.104.601-.104.902 0 .301.104.53.313.687.625l2.551 5.156 5.73.82c.34.053.609.209.805.47a1.3 1.3 0 0 1 .275.859 1.196 1.196 0 0 1-.373.82l-4.16 4.024.98 5.703c.053.312-.006.605-.176.879-.17.273-.412.449-.726.527-.314.078-.615.039-.903-.117l-5.141-2.657-5.141 2.657a1.216 1.216 0 0 1-.903.117 1.152 1.152 0 0 1-.726-.527 1.229 1.229 0 0 1-.177-.88l.981-5.702-4.16-4.024a1.196 1.196 0 0 1-.373-.82 1.3 1.3 0 0 1 .275-.86c.196-.26.464-.416.805-.468l5.73-.82 2.55-5.157z"/>
5
+ <path fill="#57B75C" d="M164.064 5.006c.169-.336.415-.56.738-.672.324-.112.647-.112.97 0 .324.112.57.336.739.672l2.742 5.543 6.16.882c.366.056.654.224.865.504.211.28.31.587.296.923-.014.336-.148.63-.401.882l-4.472 4.325 1.054 6.131c.057.336-.007.651-.19.945a1.238 1.238 0 0 1-.78.567 1.307 1.307 0 0 1-.97-.126l-5.528-2.855-5.527 2.855c-.309.168-.632.21-.97.126a1.238 1.238 0 0 1-.78-.567 1.321 1.321 0 0 1-.19-.945l1.054-6.13-4.472-4.326a1.286 1.286 0 0 1-.4-.882 1.398 1.398 0 0 1 .295-.923c.21-.28.499-.448.865-.504l6.16-.882 2.742-5.543zM224.064 5.006c.169-.336.415-.56.738-.672.324-.112.647-.112.97 0 .324.112.57.336.739.672l2.742 5.543 6.16.882c.366.056.654.224.865.504.211.28.31.587.296.923-.014.336-.148.63-.401.882l-4.472 4.325 1.054 6.131c.057.336-.007.651-.19.945a1.238 1.238 0 0 1-.78.567 1.307 1.307 0 0 1-.97-.126l-5.528-2.855-5.527 2.855c-.309.168-.632.21-.97.126a1.238 1.238 0 0 1-.78-.567 1.321 1.321 0 0 1-.19-.945l1.054-6.13-4.472-4.326a1.286 1.286 0 0 1-.4-.882 1.398 1.398 0 0 1 .295-.923c.21-.28.499-.448.865-.504l6.16-.882 2.742-5.543z"/>
6
+ <path fill="#61C166" d="M193.7 3.809c.179-.36.44-.6.784-.72.344-.119.688-.119 1.032 0 .344.12.605.36.785.72l2.915 5.93 6.55.943c.388.06.694.24.919.539.224.3.329.629.314.988a1.38 1.38 0 0 1-.427.943l-4.754 4.627 1.121 6.559c.06.36-.007.696-.202 1.01a1.317 1.317 0 0 1-.83.607c-.358.09-.702.045-1.031-.135L195 22.766l-5.876 3.054c-.329.18-.673.225-1.032.135a1.317 1.317 0 0 1-.83-.606 1.42 1.42 0 0 1-.201-1.011l1.121-6.559-4.754-4.627a1.38 1.38 0 0 1-.427-.943c-.015-.36.09-.689.314-.988.225-.3.531-.48.92-.54l6.549-.943 2.915-5.93z"/>
7
+ </g>
8
+ </svg>
languages/wp-gdpr-compliance.pot CHANGED
@@ -2,7 +2,7 @@
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: WP GDPR Compliance\n"
5
- "POT-Creation-Date: 2018-05-08 14:46+0200\n"
6
  "Last-Translator: \n"
7
  "Language-Team: Van Ons <info@van-ons.nl>\n"
8
  "MIME-Version: 1.0\n"
@@ -29,7 +29,7 @@ msgstr ""
29
  msgid "Retry"
30
  msgstr ""
31
 
32
- #: Includes/Ajax.php:27 Includes/Ajax.php:229
33
  msgid "Missing data."
34
  msgstr ""
35
 
@@ -53,25 +53,25 @@ msgstr ""
53
  msgid "You need to accept the privacy checkbox."
54
  msgstr ""
55
 
56
- #: Includes/Ajax.php:109
 
 
 
 
57
  #, php-format
58
  msgid "%s - Your data request"
59
  msgstr ""
60
 
61
- #: Includes/Ajax.php:111
62
  #, php-format
63
  msgid "You have requested to access your data on %s."
64
  msgstr ""
65
 
66
- #: Includes/Ajax.php:115
67
  #, php-format
68
  msgid "Please visit this %s to view the data linked to the email address %s"
69
  msgstr ""
70
 
71
- #: Includes/Ajax.php:127
72
- msgid "page"
73
- msgstr ""
74
-
75
  #: Includes/Ajax.php:131
76
  msgid ""
77
  "This page is available for 24 hours and can only be reached from the same IP "
@@ -83,74 +83,113 @@ msgstr ""
83
  msgid "If your link is invalid please fill in a new request: %s."
84
  msgstr ""
85
 
86
- #: Includes/Ajax.php:142
87
  msgid "Success. You will receive an email with your data shortly."
88
  msgstr ""
89
 
90
- #: Includes/Ajax.php:146
91
  msgid "Something went wrong while saving the request. Please try again."
92
  msgstr ""
93
 
94
- #: Includes/Ajax.php:149
95
  msgid ""
96
  "You have already requested your data. Please check your mailbox. After 24 "
97
  "hours you can put in a new request."
98
  msgstr ""
99
 
100
- #: Includes/Ajax.php:162
101
  msgid "Missing session."
102
  msgstr ""
103
 
104
- #: Includes/Ajax.php:166
105
  msgid "Missing or invalid type."
106
  msgstr ""
107
 
108
- #: Includes/Ajax.php:170
109
  msgid "No value selected."
110
  msgstr ""
111
 
112
- #: Includes/Ajax.php:191
113
  msgid "Something went wrong while saving this request. Please try again."
114
  msgstr ""
115
 
116
- #: Includes/Ajax.php:194
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
  msgid "Session doesn't match."
118
  msgstr ""
119
 
120
- #: Includes/Ajax.php:197
121
  msgid "No session found."
122
  msgstr ""
123
 
124
- #: Includes/Ajax.php:219
125
  msgid "The access request functionality is not enabled."
126
  msgstr ""
127
 
128
- #: Includes/Ajax.php:233
129
- msgid "This delete request doesn't exist."
130
  msgstr ""
131
 
132
- #: Includes/Ajax.php:253
133
  msgid "This user doesn't exist."
134
  msgstr ""
135
 
136
- #: Includes/Ajax.php:259
137
  msgid "You're not allowed to edit users."
138
  msgstr ""
139
 
140
- #: Includes/Ajax.php:272
141
  msgid "This comment doesn't exist."
142
  msgstr ""
143
 
144
- #: Includes/Ajax.php:278
145
  msgid "You're not allowed to edit comments."
146
  msgstr ""
147
 
148
- #: Includes/Ajax.php:301
149
  msgid "You're not allowed to edit WooCommerce orders."
150
  msgstr ""
151
 
152
- #: Includes/Ajax.php:306
153
- msgid "This delete request has already been processed."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
154
  msgstr ""
155
 
156
  #: Includes/Data.php:27 Includes/Extensions/WP.php:34 Includes/Shortcode.php:72
@@ -171,7 +210,7 @@ msgid "Display Name"
171
  msgstr ""
172
 
173
  #: Includes/Data.php:54 Includes/Data.php:63 Includes/Data.php:70
174
- #: Includes/Page.php:463
175
  msgid "Email Address"
176
  msgstr ""
177
 
@@ -191,7 +230,7 @@ msgstr ""
191
  msgid "Content"
192
  msgstr ""
193
 
194
- #: Includes/Data.php:64 Includes/Page.php:379 Includes/Page.php:464
195
  msgid "IP Address"
196
  msgstr ""
197
 
@@ -215,6 +254,18 @@ msgstr ""
215
  msgid "City"
216
  msgstr ""
217
 
 
 
 
 
 
 
 
 
 
 
 
 
218
  #: Includes/Extensions/CF7.php:184 Includes/Extensions/GForms.php:111
219
  #: Includes/Extensions/GForms.php:127 Includes/Extensions/GForms.php:146
220
  #: Includes/Extensions/WC.php:55 Includes/Extensions/WP.php:69
@@ -251,7 +302,7 @@ msgstr ""
251
  msgid "You can use: %s"
252
  msgstr ""
253
 
254
- #: Includes/Helper.php:90 Includes/Helper.php:111 Includes/Page.php:297
255
  msgid "Note"
256
  msgstr ""
257
 
@@ -339,7 +390,7 @@ msgid "Activate for this form:"
339
  msgstr ""
340
 
341
  #: Includes/Integration.php:115 Includes/Integration.php:156
342
- #: Includes/Integration.php:183 Includes/Page.php:327
343
  msgid "Checkbox text"
344
  msgstr ""
345
 
@@ -362,7 +413,7 @@ msgstr ""
362
  msgid "Please accept the privacy checkbox."
363
  msgstr ""
364
 
365
- #: Includes/Integration.php:243 Includes/Page.php:263 Includes/Page.php:267
366
  msgid "Privacy Policy"
367
  msgstr ""
368
 
@@ -375,7 +426,7 @@ msgid ""
375
  "request. When your data is anonymised you will receive an email confirmation."
376
  msgstr ""
377
 
378
- #: Includes/Integration.php:306 Includes/Page.php:367
379
  msgid "WordPress Comments"
380
  msgstr ""
381
 
@@ -397,7 +448,7 @@ msgstr ""
397
  msgid "Gravity Forms"
398
  msgstr ""
399
 
400
- #: Includes/Integration.php:335 Includes/Page.php:368
401
  msgid "WooCommerce"
402
  msgstr ""
403
 
@@ -407,92 +458,109 @@ msgid ""
407
  "page."
408
  msgstr ""
409
 
410
- #: Includes/Page.php:63
411
  msgid "Integration"
412
  msgstr ""
413
 
414
- #: Includes/Page.php:69
415
- msgid "Requests"
416
- msgstr ""
417
-
418
- #: Includes/Page.php:78
419
  msgid "Checklist"
420
  msgstr ""
421
 
422
- #: Includes/Page.php:79 wp-gdpr-compliance.php:108
423
  msgid "Settings"
424
  msgstr ""
425
 
426
- #: Includes/Page.php:107
427
  msgid ""
428
  "This plugin assists website and webshop owners to comply with European "
429
  "privacy regulations known as GDPR. By May 25th, 2018 your site or shop has "
430
  "to comply."
431
  msgstr ""
432
 
433
- #: Includes/Page.php:110
434
  #, php-format
435
  msgid ""
436
  "%s currently supports %s. Please visit %s for frequently asked questions and "
437
  "our development roadmap."
438
  msgstr ""
439
 
440
- #: Includes/Page.php:118
441
  msgid ""
442
  "Disclaimer: The creators of this plugin do not have a legal background "
443
  "please contact a law firm for rock solid legal advice."
444
  msgstr ""
445
 
446
- #: Includes/Page.php:124
447
  #, php-format
448
  msgid "You have %s left to comply with GDPR."
449
  msgstr ""
450
 
451
- #: Includes/Page.php:124
452
  #, php-format
453
  msgid "%s day"
454
  msgstr ""
455
 
456
- #: Includes/Page.php:157
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
457
  msgid "Enable:"
458
  msgstr ""
459
 
460
- #: Includes/Page.php:183
461
  #, php-format
462
  msgid "This plugin is outdated. %s supports version %s and up."
463
  msgstr ""
464
 
465
- #: Includes/Page.php:192
466
  msgid "Couldn't find any supported plugins installed."
467
  msgstr ""
468
 
469
- #: Includes/Page.php:193
470
  msgid "The following plugins are supported as of now:"
471
  msgstr ""
472
 
473
- #: Includes/Page.php:199
474
  msgid "More plugins will be added in the future."
475
  msgstr ""
476
 
477
- #: Includes/Page.php:211
478
  msgid ""
479
  "Below we ask you what private data you currently collect and provide you "
480
  "with tips to comply."
481
  msgstr ""
482
 
483
- #: Includes/Page.php:272 Includes/Page.php:314
484
  msgid "Select an option"
485
  msgstr ""
486
 
487
- #: Includes/Page.php:280
488
  msgid "Link text"
489
  msgstr ""
490
 
491
- #: Includes/Page.php:285
492
  msgid "Request User Data"
493
  msgstr ""
494
 
495
- #: Includes/Page.php:287
496
  msgid ""
497
  "Allow your site's visitors to request their data stored in the WordPress "
498
  "database (comments, WooCommerce orders etc.). Data found is send to their "
@@ -500,100 +568,96 @@ msgid ""
500
  "data anonymised."
501
  msgstr ""
502
 
503
- #: Includes/Page.php:290
504
  msgid "Activate"
505
  msgstr ""
506
 
507
- #: Includes/Page.php:292
508
  msgid "Activate page"
509
  msgstr ""
510
 
511
- #: Includes/Page.php:299
512
  #, php-format
513
  msgid ""
514
  "Enabling this will create one private page containing the necessary "
515
  "shortcode: %s. You can determine when and how to publish this page yourself."
516
  msgstr ""
517
 
518
- #: Includes/Page.php:309
519
  msgid "Page"
520
  msgstr ""
521
 
522
- #: Includes/Page.php:321
523
  msgid "Click here to edit this page"
524
  msgstr ""
525
 
526
- #: Includes/Page.php:333
527
- msgid "Delete request explanation"
528
  msgstr ""
529
 
530
- #: Includes/Page.php:364
531
  msgid ""
532
  "Anonymise a request by ticking the checkbox and clicking on the green "
533
  "anonymise button below."
534
  msgstr ""
535
 
536
- #: Includes/Page.php:366
537
  msgid "WordPress Users"
538
  msgstr ""
539
 
540
- #: Includes/Page.php:377
541
  msgid "Request"
542
  msgstr ""
543
 
544
- #: Includes/Page.php:378
545
  msgid "Type"
546
  msgstr ""
547
 
548
- #: Includes/Page.php:380 Includes/Page.php:465
549
  msgid "Date"
550
  msgstr ""
551
 
552
- #: Includes/Page.php:381
553
  msgid "Processed"
554
  msgstr ""
555
 
556
- #: Includes/Page.php:382
557
  msgid "Action"
558
  msgstr ""
559
 
560
- #: Includes/Page.php:397
561
  msgid "View"
562
  msgstr ""
563
 
564
- #: Includes/Page.php:411
565
  msgid "Anonymise selected request(s)"
566
  msgstr ""
567
 
568
- #: Includes/Page.php:433 Includes/Page.php:524
569
  #, php-format
570
  msgid "%d of %d results found"
571
  msgstr ""
572
 
573
- #: Includes/Page.php:439
574
- msgid "No delete requests found."
575
  msgstr ""
576
 
577
- #: Includes/Page.php:461
578
  msgid "ID"
579
  msgstr ""
580
 
581
- #: Includes/Page.php:462
582
  msgid "Requests to Process"
583
  msgstr ""
584
 
585
- #: Includes/Page.php:466
586
  msgid "Expired"
587
  msgstr ""
588
 
589
- #: Includes/Page.php:490
590
  msgid "Manage"
591
  msgstr ""
592
 
593
- #: Includes/Page.php:530
594
- msgid "No requests found."
595
- msgstr ""
596
-
597
  #: Includes/Shortcode.php:33
598
  msgid "Users"
599
  msgstr ""
@@ -629,11 +693,11 @@ msgstr ""
629
  msgid "This request is expired or doesn't exist."
630
  msgstr ""
631
 
632
- #: Includes/Shortcode.php:95
633
  msgid "Your Email Address"
634
  msgstr ""
635
 
636
- #: Includes/Shortcode.php:103
637
  msgid "Send"
638
  msgstr ""
639
 
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: WP GDPR Compliance\n"
5
+ "POT-Creation-Date: 2018-05-11 13:34+0200\n"
6
  "Last-Translator: \n"
7
  "Language-Team: Van Ons <info@van-ons.nl>\n"
8
  "MIME-Version: 1.0\n"
29
  msgid "Retry"
30
  msgstr ""
31
 
32
+ #: Includes/Ajax.php:27 Includes/Ajax.php:262
33
  msgid "Missing data."
34
  msgstr ""
35
 
53
  msgid "You need to accept the privacy checkbox."
54
  msgstr ""
55
 
56
+ #: Includes/Ajax.php:111
57
+ msgid "page"
58
+ msgstr ""
59
+
60
+ #: Includes/Ajax.php:118
61
  #, php-format
62
  msgid "%s - Your data request"
63
  msgstr ""
64
 
65
+ #: Includes/Ajax.php:123
66
  #, php-format
67
  msgid "You have requested to access your data on %s."
68
  msgstr ""
69
 
70
+ #: Includes/Ajax.php:127
71
  #, php-format
72
  msgid "Please visit this %s to view the data linked to the email address %s"
73
  msgstr ""
74
 
 
 
 
 
75
  #: Includes/Ajax.php:131
76
  msgid ""
77
  "This page is available for 24 hours and can only be reached from the same IP "
83
  msgid "If your link is invalid please fill in a new request: %s."
84
  msgstr ""
85
 
86
+ #: Includes/Ajax.php:143
87
  msgid "Success. You will receive an email with your data shortly."
88
  msgstr ""
89
 
90
+ #: Includes/Ajax.php:147
91
  msgid "Something went wrong while saving the request. Please try again."
92
  msgstr ""
93
 
94
+ #: Includes/Ajax.php:150
95
  msgid ""
96
  "You have already requested your data. Please check your mailbox. After 24 "
97
  "hours you can put in a new request."
98
  msgstr ""
99
 
100
+ #: Includes/Ajax.php:163
101
  msgid "Missing session."
102
  msgstr ""
103
 
104
+ #: Includes/Ajax.php:167
105
  msgid "Missing or invalid type."
106
  msgstr ""
107
 
108
+ #: Includes/Ajax.php:171
109
  msgid "No value selected."
110
  msgstr ""
111
 
112
+ #: Includes/Ajax.php:192
113
  msgid "Something went wrong while saving this request. Please try again."
114
  msgstr ""
115
 
116
+ #: Includes/Ajax.php:203 Includes/Page.php:74
117
+ msgid "Requests"
118
+ msgstr ""
119
+
120
+ #: Includes/Ajax.php:207
121
+ #, php-format
122
+ msgid "%s - New anonymise request"
123
+ msgstr ""
124
+
125
+ #: Includes/Ajax.php:212
126
+ #, php-format
127
+ msgid "You have received a new anonymise request on %s."
128
+ msgstr ""
129
+
130
+ #: Includes/Ajax.php:216
131
+ #, php-format
132
+ msgid "You can manage this request in the admin panel: %s"
133
+ msgstr ""
134
+
135
+ #: Includes/Ajax.php:227
136
  msgid "Session doesn't match."
137
  msgstr ""
138
 
139
+ #: Includes/Ajax.php:230
140
  msgid "No session found."
141
  msgstr ""
142
 
143
+ #: Includes/Ajax.php:252
144
  msgid "The access request functionality is not enabled."
145
  msgstr ""
146
 
147
+ #: Includes/Ajax.php:266
148
+ msgid "This request doesn't exist."
149
  msgstr ""
150
 
151
+ #: Includes/Ajax.php:286
152
  msgid "This user doesn't exist."
153
  msgstr ""
154
 
155
+ #: Includes/Ajax.php:292
156
  msgid "You're not allowed to edit users."
157
  msgstr ""
158
 
159
+ #: Includes/Ajax.php:305
160
  msgid "This comment doesn't exist."
161
  msgstr ""
162
 
163
+ #: Includes/Ajax.php:311
164
  msgid "You're not allowed to edit comments."
165
  msgstr ""
166
 
167
+ #: Includes/Ajax.php:336
168
  msgid "You're not allowed to edit WooCommerce orders."
169
  msgstr ""
170
 
171
+ #: Includes/Ajax.php:348
172
+ #, php-format
173
+ msgid "%s - Your request"
174
+ msgstr ""
175
+
176
+ #: Includes/Ajax.php:353
177
+ #, php-format
178
+ msgid ""
179
+ "We have successfully processed your request and your data has been "
180
+ "anonymised on %s."
181
+ msgstr ""
182
+
183
+ #: Includes/Ajax.php:356
184
+ msgid "The following has been processed:"
185
+ msgstr ""
186
+
187
+ #: Includes/Ajax.php:365
188
+ msgid "Successfully sent an confirmation mail to the user."
189
+ msgstr ""
190
+
191
+ #: Includes/Ajax.php:369
192
+ msgid "This request has already been processed."
193
  msgstr ""
194
 
195
  #: Includes/Data.php:27 Includes/Extensions/WP.php:34 Includes/Shortcode.php:72
210
  msgstr ""
211
 
212
  #: Includes/Data.php:54 Includes/Data.php:63 Includes/Data.php:70
213
+ #: Includes/Page.php:485
214
  msgid "Email Address"
215
  msgstr ""
216
 
230
  msgid "Content"
231
  msgstr ""
232
 
233
+ #: Includes/Data.php:64 Includes/Page.php:401 Includes/Page.php:486
234
  msgid "IP Address"
235
  msgstr ""
236
 
254
  msgid "City"
255
  msgstr ""
256
 
257
+ #: Includes/DeleteRequest.php:218
258
+ msgid "User"
259
+ msgstr ""
260
+
261
+ #: Includes/DeleteRequest.php:221
262
+ msgid "Comment"
263
+ msgstr ""
264
+
265
+ #: Includes/DeleteRequest.php:224
266
+ msgid "WooCommerce Order"
267
+ msgstr ""
268
+
269
  #: Includes/Extensions/CF7.php:184 Includes/Extensions/GForms.php:111
270
  #: Includes/Extensions/GForms.php:127 Includes/Extensions/GForms.php:146
271
  #: Includes/Extensions/WC.php:55 Includes/Extensions/WP.php:69
302
  msgid "You can use: %s"
303
  msgstr ""
304
 
305
+ #: Includes/Helper.php:90 Includes/Helper.php:111 Includes/Page.php:319
306
  msgid "Note"
307
  msgstr ""
308
 
390
  msgstr ""
391
 
392
  #: Includes/Integration.php:115 Includes/Integration.php:156
393
+ #: Includes/Integration.php:183 Includes/Page.php:349
394
  msgid "Checkbox text"
395
  msgstr ""
396
 
413
  msgid "Please accept the privacy checkbox."
414
  msgstr ""
415
 
416
+ #: Includes/Integration.php:243 Includes/Page.php:285 Includes/Page.php:289
417
  msgid "Privacy Policy"
418
  msgstr ""
419
 
426
  "request. When your data is anonymised you will receive an email confirmation."
427
  msgstr ""
428
 
429
+ #: Includes/Integration.php:306 Includes/Page.php:389
430
  msgid "WordPress Comments"
431
  msgstr ""
432
 
448
  msgid "Gravity Forms"
449
  msgstr ""
450
 
451
+ #: Includes/Integration.php:335 Includes/Page.php:390
452
  msgid "WooCommerce"
453
  msgstr ""
454
 
458
  "page."
459
  msgstr ""
460
 
461
+ #: Includes/Page.php:64
462
  msgid "Integration"
463
  msgstr ""
464
 
465
+ #: Includes/Page.php:84
 
 
 
 
466
  msgid "Checklist"
467
  msgstr ""
468
 
469
+ #: Includes/Page.php:85 wp-gdpr-compliance.php:108
470
  msgid "Settings"
471
  msgstr ""
472
 
473
+ #: Includes/Page.php:113
474
  msgid ""
475
  "This plugin assists website and webshop owners to comply with European "
476
  "privacy regulations known as GDPR. By May 25th, 2018 your site or shop has "
477
  "to comply."
478
  msgstr ""
479
 
480
+ #: Includes/Page.php:116
481
  #, php-format
482
  msgid ""
483
  "%s currently supports %s. Please visit %s for frequently asked questions and "
484
  "our development roadmap."
485
  msgstr ""
486
 
487
+ #: Includes/Page.php:124
488
  msgid ""
489
  "Disclaimer: The creators of this plugin do not have a legal background "
490
  "please contact a law firm for rock solid legal advice."
491
  msgstr ""
492
 
493
+ #: Includes/Page.php:133
494
  #, php-format
495
  msgid "You have %s left to comply with GDPR."
496
  msgstr ""
497
 
498
+ #: Includes/Page.php:133
499
  #, php-format
500
  msgid "%s day"
501
  msgstr ""
502
 
503
+ #: Includes/Page.php:140
504
+ msgid "Rate us"
505
+ msgstr ""
506
+
507
+ #: Includes/Page.php:142
508
+ #, php-format
509
+ msgid "Did %s help you out? Please leave a positive 5-star review."
510
+ msgstr ""
511
+
512
+ #: Includes/Page.php:143
513
+ msgid "Write a review"
514
+ msgstr ""
515
+
516
+ #: Includes/Page.php:151
517
+ msgid "Yes"
518
+ msgstr ""
519
+
520
+ #: Includes/Page.php:152
521
+ msgid "No"
522
+ msgstr ""
523
+
524
+ #: Includes/Page.php:179
525
  msgid "Enable:"
526
  msgstr ""
527
 
528
+ #: Includes/Page.php:205
529
  #, php-format
530
  msgid "This plugin is outdated. %s supports version %s and up."
531
  msgstr ""
532
 
533
+ #: Includes/Page.php:214
534
  msgid "Couldn't find any supported plugins installed."
535
  msgstr ""
536
 
537
+ #: Includes/Page.php:215
538
  msgid "The following plugins are supported as of now:"
539
  msgstr ""
540
 
541
+ #: Includes/Page.php:221
542
  msgid "More plugins will be added in the future."
543
  msgstr ""
544
 
545
+ #: Includes/Page.php:233
546
  msgid ""
547
  "Below we ask you what private data you currently collect and provide you "
548
  "with tips to comply."
549
  msgstr ""
550
 
551
+ #: Includes/Page.php:294 Includes/Page.php:336
552
  msgid "Select an option"
553
  msgstr ""
554
 
555
+ #: Includes/Page.php:302
556
  msgid "Link text"
557
  msgstr ""
558
 
559
+ #: Includes/Page.php:307
560
  msgid "Request User Data"
561
  msgstr ""
562
 
563
+ #: Includes/Page.php:309
564
  msgid ""
565
  "Allow your site's visitors to request their data stored in the WordPress "
566
  "database (comments, WooCommerce orders etc.). Data found is send to their "
568
  "data anonymised."
569
  msgstr ""
570
 
571
+ #: Includes/Page.php:312
572
  msgid "Activate"
573
  msgstr ""
574
 
575
+ #: Includes/Page.php:314
576
  msgid "Activate page"
577
  msgstr ""
578
 
579
+ #: Includes/Page.php:321
580
  #, php-format
581
  msgid ""
582
  "Enabling this will create one private page containing the necessary "
583
  "shortcode: %s. You can determine when and how to publish this page yourself."
584
  msgstr ""
585
 
586
+ #: Includes/Page.php:331
587
  msgid "Page"
588
  msgstr ""
589
 
590
+ #: Includes/Page.php:343
591
  msgid "Click here to edit this page"
592
  msgstr ""
593
 
594
+ #: Includes/Page.php:355
595
+ msgid "Anonymise request explanation"
596
  msgstr ""
597
 
598
+ #: Includes/Page.php:386
599
  msgid ""
600
  "Anonymise a request by ticking the checkbox and clicking on the green "
601
  "anonymise button below."
602
  msgstr ""
603
 
604
+ #: Includes/Page.php:388
605
  msgid "WordPress Users"
606
  msgstr ""
607
 
608
+ #: Includes/Page.php:399
609
  msgid "Request"
610
  msgstr ""
611
 
612
+ #: Includes/Page.php:400
613
  msgid "Type"
614
  msgstr ""
615
 
616
+ #: Includes/Page.php:402 Includes/Page.php:487
617
  msgid "Date"
618
  msgstr ""
619
 
620
+ #: Includes/Page.php:403
621
  msgid "Processed"
622
  msgstr ""
623
 
624
+ #: Includes/Page.php:404
625
  msgid "Action"
626
  msgstr ""
627
 
628
+ #: Includes/Page.php:419
629
  msgid "View"
630
  msgstr ""
631
 
632
+ #: Includes/Page.php:433
633
  msgid "Anonymise selected request(s)"
634
  msgstr ""
635
 
636
+ #: Includes/Page.php:455 Includes/Page.php:546
637
  #, php-format
638
  msgid "%d of %d results found"
639
  msgstr ""
640
 
641
+ #: Includes/Page.php:461 Includes/Page.php:552
642
+ msgid "No requests found."
643
  msgstr ""
644
 
645
+ #: Includes/Page.php:483
646
  msgid "ID"
647
  msgstr ""
648
 
649
+ #: Includes/Page.php:484
650
  msgid "Requests to Process"
651
  msgstr ""
652
 
653
+ #: Includes/Page.php:488
654
  msgid "Expired"
655
  msgstr ""
656
 
657
+ #: Includes/Page.php:512
658
  msgid "Manage"
659
  msgstr ""
660
 
 
 
 
 
661
  #: Includes/Shortcode.php:33
662
  msgid "Users"
663
  msgstr ""
693
  msgid "This request is expired or doesn't exist."
694
  msgstr ""
695
 
696
+ #: Includes/Shortcode.php:99
697
  msgid "Your Email Address"
698
  msgstr ""
699
 
700
+ #: Includes/Shortcode.php:113
701
  msgid "Send"
702
  msgstr ""
703
 
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: gdpr, law, regulations, compliance, data, protection, privacy, data protec
4
  Requires at least: 4.5
5
  Tested up to: 4.9.4
6
  Requires PHP: 5.3
7
- Stable tag: 1.3.1
8
  License: GPLv2 or later
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -38,6 +38,13 @@ You'll find answers to many of your questions on [wpgdprc.com](https://www.wpgdp
38
 
39
  == Changelog ==
40
 
 
 
 
 
 
 
 
41
  = 1.3.1 =
42
  *Release date: May 8th, 2018*
43
  * Added a button to retry creating database tables required by the request user data functionality.
4
  Requires at least: 4.5
5
  Tested up to: 4.9.4
6
  Requires PHP: 5.3
7
+ Stable tag: 1.3.2
8
  License: GPLv2 or later
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
38
 
39
  == Changelog ==
40
 
41
+ = 1.3.2 =
42
+ *Release date: May 11th, 2018*
43
+ * Added translatable 'Yes' and 'No' strings.
44
+ * Added confirmation mails sent after processing a anonymise request.
45
+ * Added mail sent to the admin when a new request is created.
46
+ * Added 'noopener noreferrer' to the Privacy Policy link.
47
+
48
  = 1.3.1 =
49
  *Release date: May 8th, 2018*
50
  * Added a button to retry creating database tables required by the request user data functionality.
wp-gdpr-compliance.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: WP GDPR Compliance
5
  Plugin URI: https://www.wpgdprc.com/
6
  Description: This plugin assists website and webshop owners to comply with European privacy regulations known as GDPR. By May 24th, 2018 your website or shop has to comply to avoid large fines.
7
- Version: 1.3.1
8
  Author: Van Ons
9
  Author URI: https://www.van-ons.nl/
10
  License: GPL2
4
  Plugin Name: WP GDPR Compliance
5
  Plugin URI: https://www.wpgdprc.com/
6
  Description: This plugin assists website and webshop owners to comply with European privacy regulations known as GDPR. By May 24th, 2018 your website or shop has to comply to avoid large fines.
7
+ Version: 1.3.2
8
  Author: Van Ons
9
  Author URI: https://www.van-ons.nl/
10
  License: GPL2