| 1 |
<?php |
| 2 |
|
| 3 |
namespace Codelight\GDPR; |
| 4 |
|
| 5 |
if ( ! defined( 'ABSPATH' ) ) exit; |
| 6 |
|
| 7 |
/** |
| 8 |
* General helper functions |
| 9 |
* |
| 10 |
* Class Helpers |
| 11 |
* |
| 12 |
* @package Codelight\GDPR |
| 13 |
*/ |
| 14 |
class Helpers |
| 15 |
{ |
| 16 |
public function supportUrl($url = '') |
| 17 |
{ |
| 18 |
global $gdpr; |
| 19 |
return $gdpr->HelpUrl . $url; |
| 20 |
} |
| 21 |
|
| 22 |
/** |
| 23 |
* Get an associative array of EU countries |
| 24 |
* |
| 25 |
* @return array |
| 26 |
*/ |
| 27 |
public function getEUCountryList() |
| 28 |
{ |
| 29 |
return [ |
| 30 |
'AT' => _x('Austria', '(Admin)', 'gdpr-framework'), |
| 31 |
'BE' => _x('Belgium', '(Admin)', 'gdpr-framework'), |
| 32 |
'BG' => _x('Bulgaria', '(Admin)', 'gdpr-framework'), |
| 33 |
'HR' => _x('Croatia','(Admin)', 'gdpr-framework'), |
| 34 |
'CY' => _x('Cyprus', '(Admin)', 'gdpr-framework'), |
| 35 |
'CZ' => _x('Czech Republic', '(Admin)', 'gdpr-framework'), |
| 36 |
'DK' => _x('Denmark', '(Admin)', 'gdpr-framework'), |
| 37 |
'EE' => _x('Estonia', '(Admin)', 'gdpr-framework'), |
| 38 |
'FI' => _x('Finland', '(Admin)', 'gdpr-framework'), |
| 39 |
'FR' => _x('France', '(Admin)', 'gdpr-framework'), |
| 40 |
'DE' => _x('Germany', '(Admin)', 'gdpr-framework'), |
| 41 |
'GR' => _x('Greece', '(Admin)', 'gdpr-framework'), |
| 42 |
'HU' => _x('Hungary', '(Admin)', 'gdpr-framework'), |
| 43 |
'IE' => _x('Ireland', '(Admin)', 'gdpr-framework'), |
| 44 |
'IT' => _x('Italy', '(Admin)', 'gdpr-framework'), |
| 45 |
'LV' => _x('Latvia', '(Admin)', 'gdpr-framework'), |
| 46 |
'LT' => _x('Lithuania', '(Admin)', 'gdpr-framework'), |
| 47 |
'LU' => _x('Luxembourg', '(Admin)', 'gdpr-framework'), |
| 48 |
'MT' => _x('Malta', '(Admin)', 'gdpr-framework'), |
| 49 |
'NL' => _x('Netherlands', '(Admin)', 'gdpr-framework'), |
| 50 |
'PL' => _x('Poland', '(Admin)', 'gdpr-framework'), |
| 51 |
'PT' => _x('Portugal', '(Admin)', 'gdpr-framework'), |
| 52 |
'RO' => _x('Romania', '(Admin)', 'gdpr-framework'), |
| 53 |
'SK' => _x('Slovakia', '(Admin)', 'gdpr-framework'), |
| 54 |
'SI' => _x('Slovenia', '(Admin)', 'gdpr-framework'), |
| 55 |
'ES' => _x('Spain', '(Admin)', 'gdpr-framework'), |
| 56 |
'SE' => _x('Sweden', '(Admin)', 'gdpr-framework'), |
| 57 |
'UK' => _x('United Kingdom', '(Admin)', 'gdpr-framework'), |
| 58 |
// All country list |
| 59 |
'AF' => _x('Afghanistan ', '(Admin)', 'gdpr-framework'), |
| 60 |
'AX' => _x('� |
| 61 |
land Islands', '(Admin)', 'gdpr-framework'), |
| 62 |
'AL' => _x('Albania', '(Admin)', 'gdpr-framework'), |
| 63 |
'DZ' => _x('Algeria', '(Admin)', 'gdpr-framework'), |
| 64 |
'AS' => _x('American Samoa ', '(Admin)', 'gdpr-framework'), |
| 65 |
'AD' => _x('Andorra', '(Admin)', 'gdpr-framework'), |
| 66 |
'AO' => _x('Angola', '(Admin)', 'gdpr-framework'), |
| 67 |
'AI' => _x('Anguilla', '(Admin)', 'gdpr-framework'), |
| 68 |
'AQ' => _x('Antarctica', '(Admin)', 'gdpr-framework'), |
| 69 |
'AG' => _x('Antigua and Barbuda', '(Admin)', 'gdpr-framework'), |
| 70 |
'AR' => _x('Argentina', '(Admin)', 'gdpr-framework'), |
| 71 |
'AM' => _x('Armenia', '(Admin)', 'gdpr-framework'), |
| 72 |
'AW' => _x('Aruba', '(Admin)', 'gdpr-framework'), |
| 73 |
'AU' => _x('Australia', '(Admin)', 'gdpr-framework'), |
| 74 |
'AZ' => _x('Azerbaijan', '(Admin)', 'gdpr-framework'), |
| 75 |
'BH' => _x('Bahrain', '(Admin)', 'gdpr-framework'), |
| 76 |
'BS' => _x('Bahamas', '(Admin)', 'gdpr-framework'), |
| 77 |
'BD' => _x('Bangladesh', '(Admin)', 'gdpr-framework'), |
| 78 |
'BB' => _x('Barbados', '(Admin)', 'gdpr-framework'), |
| 79 |
'BY' => _x('Belarus', '(Admin)', 'gdpr-framework'), |
| 80 |
'BZ' => _x('Belize', '(Admin)', 'gdpr-framework'), |
| 81 |
'BJ' => _x('Benin', '(Admin)', 'gdpr-framework'), |
| 82 |
'BM' => _x('Bermuda', '(Admin)', 'gdpr-framework'), |
| 83 |
'BT' => _x('Bhutan', '(Admin)', 'gdpr-framework'), |
| 84 |
'BO' => _x('Bolivia, Plurinational State of', '(Admin)', 'gdpr-framework'), |
| 85 |
'BQ' => _x('Bonaire, Sint Eustatius and Saba', '(Admin)', 'gdpr-framework'), |
| 86 |
'BA' => _x('Bosnia and Herzegovina', '(Admin)', 'gdpr-framework'), |
| 87 |
'BW' => _x('Botswana', '(Admin)', 'gdpr-framework'), |
| 88 |
'BV' => _x('Bouvet Island', '(Admin)', 'gdpr-framework'), |
| 89 |
'BR' => _x('Brazil', '(Admin)', 'gdpr-framework'), |
| 90 |
'IO' => _x('British Indian Ocean Territory', '(Admin)', 'gdpr-framework'), |
| 91 |
'BN' => _x('Brunei Darussalam', '(Admin)', 'gdpr-framework'), |
| 92 |
'BF' => _x('Burkina Faso', '(Admin)', 'gdpr-framework'), |
| 93 |
'BI' => _x('Burundi', '(Admin)', 'gdpr-framework'), |
| 94 |
'KH' => _x('Cambodia', '(Admin)', 'gdpr-framework'), |
| 95 |
'CM' => _x('Cameroon', '(Admin)', 'gdpr-framework'), |
| 96 |
'CA' => _x('Canada', '(Admin)', 'gdpr-framework'), |
| 97 |
'CV' => _x('Cape Verde', '(Admin)', 'gdpr-framework'), |
| 98 |
'KY' => _x('Cayman Islands', '(Admin)', 'gdpr-framework'), |
| 99 |
'CF' => _x('Central African Republic', '(Admin)', 'gdpr-framework'), |
| 100 |
'TD' => _x('Chad', '(Admin)', 'gdpr-framework'), |
| 101 |
'CL' => _x('Chile', '(Admin)', 'gdpr-framework'), |
| 102 |
'CN' => _x('China', '(Admin)', 'gdpr-framework'), |
| 103 |
'CX' => _x('Christmas Island', '(Admin)', 'gdpr-framework'), |
| 104 |
'CC' => _x('Cocos (Keeling) Islands', '(Admin)', 'gdpr-framework'), |
| 105 |
'CO' => _x('Colombia', '(Admin)', 'gdpr-framework'), |
| 106 |
'KM' => _x('Comoros', '(Admin)', 'gdpr-framework'), |
| 107 |
'CG' => _x('Congo', '(Admin)', 'gdpr-framework'), |
| 108 |
'CD' => _x('Congo, the Democratic Republic of the', '(Admin)', 'gdpr-framework'), |
| 109 |
'CK' => _x('Cook Islands', '(Admin)', 'gdpr-framework'), |
| 110 |
'CR' => _x('Costa Rica', '(Admin)', 'gdpr-framework'), |
| 111 |
'CI' => _x('Côte dIvoire', '(Admin)', 'gdpr-framework'), |
| 112 |
'CU' => _x('Cuba', '(Admin)', 'gdpr-framework'), |
| 113 |
'CW' => _x('Curaçao', '(Admin)', 'gdpr-framework'), |
| 114 |
'DJ' => _x('Djibouti', '(Admin)', 'gdpr-framework'), |
| 115 |
'DM' => _x('Dominica', '(Admin)', 'gdpr-framework'), |
| 116 |
'DO' => _x('Dominican Republic', '(Admin)', 'gdpr-framework'), |
| 117 |
'EC' => _x('Ecuador', '(Admin)', 'gdpr-framework'), |
| 118 |
'EG' => _x('Egypt', '(Admin)', 'gdpr-framework'), |
| 119 |
'SV' => _x('El Salvador', '(Admin)', 'gdpr-framework'), |
| 120 |
'GQ' => _x('Equatorial Guinea', '(Admin)', 'gdpr-framework'), |
| 121 |
'ER' => _x('Eritrea', '(Admin)', 'gdpr-framework'), |
| 122 |
'ET' => _x('Ethiopia', '(Admin)', 'gdpr-framework'), |
| 123 |
'FK' => _x('Falkland Islands (Malvinas)', '(Admin)', 'gdpr-framework'), |
| 124 |
'FO' => _x('Faroe Islands', '(Admin)', 'gdpr-framework'), |
| 125 |
'FJ' => _x('Fiji', '(Admin)', 'gdpr-framework'), |
| 126 |
'GF' => _x('French Guiana', '(Admin)', 'gdpr-framework'), |
| 127 |
'PF' => _x('French Polynesia', '(Admin)', 'gdpr-framework'), |
| 128 |
'TF' => _x('French Southern Territories', '(Admin)', 'gdpr-framework'), |
| 129 |
'GA' => _x('Gabon', '(Admin)', 'gdpr-framework'), |
| 130 |
'GM' => _x('Gambia', '(Admin)', 'gdpr-framework'), |
| 131 |
'GE' => _x('Georgia', '(Admin)', 'gdpr-framework'), |
| 132 |
'GE' => _x('Georgia ', '(Admin)', 'gdpr-framework'), |
| 133 |
'GH' => _x('Ghana', '(Admin)', 'gdpr-framework'), |
| 134 |
'GI' => _x('Gibraltar', '(Admin)', 'gdpr-framework'), |
| 135 |
'GL' => _x('Greenland', '(Admin)', 'gdpr-framework'), |
| 136 |
'GD' => _x('Grenada ', '(Admin)', 'gdpr-framework'), |
| 137 |
'GP' => _x('Guadeloupe ', '(Admin)', 'gdpr-framework'), |
| 138 |
'GU' => _x('Guam', '(Admin)', 'gdpr-framework'), |
| 139 |
'GT' => _x('Guatemala', '(Admin)', 'gdpr-framework'), |
| 140 |
'GG' => _x('Guernsey', '(Admin)', 'gdpr-framework'), |
| 141 |
'GN' => _x('Guinea ', '(Admin)', 'gdpr-framework'), |
| 142 |
'GW' => _x('Guinea-Bissau ', '(Admin)', 'gdpr-framework'), |
| 143 |
'GY' => _x('Guyana ', '(Admin)', 'gdpr-framework'), |
| 144 |
'HT' => _x('Haiti ', '(Admin)', 'gdpr-framework'), |
| 145 |
'HM' => _x('Heard Island and McDonald Islands ', '(Admin)', 'gdpr-framework'), |
| 146 |
'VA' => _x('Holy See (Vatican City State) ', '(Admin)', 'gdpr-framework'), |
| 147 |
'HN' => _x('Honduras ', '(Admin)', 'gdpr-framework'), |
| 148 |
'HK' => _x('Hong Kong ', '(Admin)', 'gdpr-framework'), |
| 149 |
'IN' => _x('India ', '(Admin)', 'gdpr-framework'), |
| 150 |
'ID' => _x('Indonesia ', '(Admin)', 'gdpr-framework'), |
| 151 |
'IR' => _x('Iran, Islamic Republic of ', '(Admin)', 'gdpr-framework'), |
| 152 |
'IQ' => _x('Iraq ', '(Admin)', 'gdpr-framework'), |
| 153 |
'IM' => _x('Isle of Man ', '(Admin)', 'gdpr-framework'), |
| 154 |
'IL' => _x('Israel ', '(Admin)', 'gdpr-framework'), |
| 155 |
'JM' => _x('Jamaica ', '(Admin)', 'gdpr-framework'), |
| 156 |
'JP' => _x('Japan ', '(Admin)', 'gdpr-framework'), |
| 157 |
'JE' => _x('Jersey ', '(Admin)', 'gdpr-framework'), |
| 158 |
'JO' => _x('Jordan ', '(Admin)', 'gdpr-framework'), |
| 159 |
'KZ' => _x('Kazakhstan ', '(Admin)', 'gdpr-framework'), |
| 160 |
'KE' => _x('Kenya ', '(Admin)', 'gdpr-framework'), |
| 161 |
'KI' => _x('Kiribati ', '(Admin)', 'gdpr-framework'), |
| 162 |
'KP' => _x('Korea, Democratic Peoples Republic of ', '(Admin)', 'gdpr-framework'), |
| 163 |
'KR' => _x('Korea, Republic of ', '(Admin)', 'gdpr-framework'), |
| 164 |
'KW' => _x('Kuwait ', '(Admin)', 'gdpr-framework'), |
| 165 |
'KG' => _x('Kyrgyzstan ', '(Admin)', 'gdpr-framework'), |
| 166 |
'LA' => _x('Lao Peoples Democratic Republic ', '(Admin)', 'gdpr-framework'), |
| 167 |
'LB' => _x('Lebanon ', '(Admin)', 'gdpr-framework'), |
| 168 |
'LS' => _x('Lesotho ', '(Admin)', 'gdpr-framework'), |
| 169 |
'LR' => _x('Liberia ', '(Admin)', 'gdpr-framework'), |
| 170 |
'LY' => _x('Libya ', '(Admin)', 'gdpr-framework'), |
| 171 |
'MO' => _x('Macao ', '(Admin)', 'gdpr-framework'), |
| 172 |
'MK' => _x('Macedonia, the Former Yugoslav Republic of ', '(Admin)', 'gdpr-framework'), |
| 173 |
'MG' => _x('Madagascar ', '(Admin)', 'gdpr-framework'), |
| 174 |
'MW' => _x('Malawi ', '(Admin)', 'gdpr-framework'), |
| 175 |
'MY' => _x('Malaysia ', '(Admin)', 'gdpr-framework'), |
| 176 |
'MV' => _x('Maldives ', '(Admin)', 'gdpr-framework'), |
| 177 |
'ML' => _x('Mali ', '(Admin)', 'gdpr-framework'), |
| 178 |
'MH' => _x('Marshall Islands ', '(Admin)', 'gdpr-framework'), |
| 179 |
'MQ' => _x('Martinique ', '(Admin)', 'gdpr-framework'), |
| 180 |
'MR' => _x('Mauritania ', '(Admin)', 'gdpr-framework'), |
| 181 |
'MU' => _x('Mauritius ', '(Admin)', 'gdpr-framework'), |
| 182 |
'YT' => _x('Mayotte ', '(Admin)', 'gdpr-framework'), |
| 183 |
'MX' => _x('Mexico ', '(Admin)', 'gdpr-framework'), |
| 184 |
'FM' => _x('Micronesia, Federated States of ', '(Admin)', 'gdpr-framework'), |
| 185 |
'MD' => _x('Moldova, Republic of ', '(Admin)', 'gdpr-framework'), |
| 186 |
'MC' => _x('Monaco ', '(Admin)', 'gdpr-framework'), |
| 187 |
'MN' => _x('Mongolia ', '(Admin)', 'gdpr-framework'), |
| 188 |
'ME' => _x('Montenegro ', '(Admin)', 'gdpr-framework'), |
| 189 |
'MS' => _x('Montserrat ', '(Admin)', 'gdpr-framework'), |
| 190 |
'MA' => _x('Morocco ', '(Admin)', 'gdpr-framework'), |
| 191 |
'MZ' => _x('Mozambique ', '(Admin)', 'gdpr-framework'), |
| 192 |
'MM' => _x('Myanmar ', '(Admin)', 'gdpr-framework'), |
| 193 |
'NA' => _x('Namibia ', '(Admin)', 'gdpr-framework'), |
| 194 |
'NR' => _x('Nauru ', '(Admin)', 'gdpr-framework'), |
| 195 |
'NP' => _x('Nepal ', '(Admin)', 'gdpr-framework'), |
| 196 |
'NC' => _x('New Caledonia ', '(Admin)', 'gdpr-framework'), |
| 197 |
'NZ' => _x('New Zealand ', '(Admin)', 'gdpr-framework'), |
| 198 |
'NI' => _x('Nicaragua ', '(Admin)', 'gdpr-framework'), |
| 199 |
'NE' => _x('Niger ', '(Admin)', 'gdpr-framework'), |
| 200 |
'NG' => _x('Nigeria ', '(Admin)', 'gdpr-framework'), |
| 201 |
'NU' => _x('Niue ', '(Admin)', 'gdpr-framework'), |
| 202 |
'NF' => _x('Norfolk Island ', '(Admin)', 'gdpr-framework'), |
| 203 |
'MP' => _x('Northern Mariana Islands ', '(Admin)', 'gdpr-framework'), |
| 204 |
'OM' => _x('Oman ', '(Admin)', 'gdpr-framework'), |
| 205 |
'PK' => _x('Pakistan ', '(Admin)', 'gdpr-framework'), |
| 206 |
'PW' => _x('Palau ', '(Admin)', 'gdpr-framework'), |
| 207 |
'PS' => _x('Palestine, State of ', '(Admin)', 'gdpr-framework'), |
| 208 |
'PA' => _x('Panama ', '(Admin)', 'gdpr-framework'), |
| 209 |
'PG' => _x('Papua New Guinea ', '(Admin)', 'gdpr-framework'), |
| 210 |
'PY' => _x('Paraguay ', '(Admin)', 'gdpr-framework'), |
| 211 |
'PE' => _x('Peru ', '(Admin)', 'gdpr-framework'), |
| 212 |
'PH' => _x('Philippines ', '(Admin)', 'gdpr-framework'), |
| 213 |
'PN' => _x('Pitcairn ', '(Admin)', 'gdpr-framework'), |
| 214 |
'PR' => _x('Puerto Rico ', '(Admin)', 'gdpr-framework'), |
| 215 |
'QA' => _x('Qatar ', '(Admin)', 'gdpr-framework'), |
| 216 |
'RE' => _x('Réunion ', '(Admin)', 'gdpr-framework'), |
| 217 |
'RU' => _x('Russian Federation ', '(Admin)', 'gdpr-framework'), |
| 218 |
'RW' => _x('Rwanda ', '(Admin)', 'gdpr-framework'), |
| 219 |
'BL' => _x('Saint Barthélemy ', '(Admin)', 'gdpr-framework'), |
| 220 |
'SH' => _x('Saint Helena, Ascension and Tristan da Cunha ', '(Admin)', 'gdpr-framework'), |
| 221 |
'KN' => _x('Saint Kitts and Nevis ', '(Admin)', 'gdpr-framework'), |
| 222 |
'LC' => _x('Saint Lucia ', '(Admin)', 'gdpr-framework'), |
| 223 |
'MF' => _x('Saint Martin (French part) ', '(Admin)', 'gdpr-framework'), |
| 224 |
'PM' => _x('Saint Pierre and Miquelon ', '(Admin)', 'gdpr-framework'), |
| 225 |
'VC' => _x('Saint Vincent and the Grenadines ', '(Admin)', 'gdpr-framework'), |
| 226 |
'WS' => _x('Samoa ', '(Admin)', 'gdpr-framework'), |
| 227 |
'SM' => _x('San Marino ', '(Admin)', 'gdpr-framework'), |
| 228 |
'ST' => _x('Sao Tome and Principe ', '(Admin)', 'gdpr-framework'), |
| 229 |
'SA' => _x('Saudi Arabia ', '(Admin)', 'gdpr-framework'), |
| 230 |
'SN' => _x('Senegal ', '(Admin)', 'gdpr-framework'), |
| 231 |
'RS' => _x('Serbia ', '(Admin)', 'gdpr-framework'), |
| 232 |
'SC' => _x('Seychelles ', '(Admin)', 'gdpr-framework'), |
| 233 |
'SL' => _x('Sierra Leone ', '(Admin)', 'gdpr-framework'), |
| 234 |
'SG' => _x('Singapore ', '(Admin)', 'gdpr-framework'), |
| 235 |
'SX' => _x('Sint Maarten (Dutch part) ', '(Admin)', 'gdpr-framework'), |
| 236 |
'SB' => _x('Solomon Islands ', '(Admin)', 'gdpr-framework'), |
| 237 |
'SO' => _x('Somalia ', '(Admin)', 'gdpr-framework'), |
| 238 |
'ZA' => _x('South Africa ', '(Admin)', 'gdpr-framework'), |
| 239 |
'GS' => _x('South Georgia and the South Sandwich Islands ', '(Admin)', 'gdpr-framework'), |
| 240 |
'SS' => _x('South Sudan ', '(Admin)', 'gdpr-framework'), |
| 241 |
'LK' => _x('Sri Lanka ', '(Admin)', 'gdpr-framework'), |
| 242 |
'SD' => _x('Sudan ', '(Admin)', 'gdpr-framework'), |
| 243 |
'SR' => _x('Suriname ', '(Admin)', 'gdpr-framework'), |
| 244 |
'SJ' => _x('Svalbard and Jan Mayen ', '(Admin)', 'gdpr-framework'), |
| 245 |
'SZ' => _x('Swaziland ', '(Admin)', 'gdpr-framework'), |
| 246 |
'SY' => _x('Syrian Arab Republic ', '(Admin)', 'gdpr-framework'), |
| 247 |
'TW' => _x('Taiwan ', '(Admin)', 'gdpr-framework'), |
| 248 |
'TJ' => _x('Tajikistan ', '(Admin)', 'gdpr-framework'), |
| 249 |
'TZ' => _x('Tanzania, United Republic of ', '(Admin)', 'gdpr-framework'), |
| 250 |
'TH' => _x('Thailand ', '(Admin)', 'gdpr-framework'), |
| 251 |
'TL' => _x('Timor-Leste ', '(Admin)', 'gdpr-framework'), |
| 252 |
'TG' => _x('Togo ', '(Admin)', 'gdpr-framework'), |
| 253 |
'TK' => _x('Tokelau ', '(Admin)', 'gdpr-framework'), |
| 254 |
'TO' => _x('Tonga ', '(Admin)', 'gdpr-framework'), |
| 255 |
'TT' => _x('Trinidad and Tobago ', '(Admin)', 'gdpr-framework'), |
| 256 |
'TN' => _x('Tunisia ', '(Admin)', 'gdpr-framework'), |
| 257 |
'TR' => _x('Turkey ', '(Admin)', 'gdpr-framework'), |
| 258 |
'TM' => _x('Turkmenistan ', '(Admin)', 'gdpr-framework'), |
| 259 |
'TC' => _x('Turks and Caicos Islands ', '(Admin)', 'gdpr-framework'), |
| 260 |
'TV' => _x('Tuvalu ', '(Admin)', 'gdpr-framework'), |
| 261 |
'UG' => _x('Uganda ', '(Admin)', 'gdpr-framework'), |
| 262 |
'UA' => _x('Ukraine ', '(Admin)', 'gdpr-framework'), |
| 263 |
'AE' => _x('United Arab Emirates ', '(Admin)', 'gdpr-framework'), |
| 264 |
'UM' => _x('United States Minor Outlying Islands ', '(Admin)', 'gdpr-framework'), |
| 265 |
'UY' => _x('Uruguay ', '(Admin)', 'gdpr-framework'), |
| 266 |
'UZ' => _x('Uzbekistan ', '(Admin)', 'gdpr-framework'), |
| 267 |
'VU' => _x('Vanuatu ', '(Admin)', 'gdpr-framework'), |
| 268 |
'VE' => _x('Venezuela, Bolivarian Republic of ', '(Admin)', 'gdpr-framework'), |
| 269 |
'VN' => _x('Viet Nam ', '(Admin)', 'gdpr-framework'), |
| 270 |
'VG' => _x('Virgin Islands, British ', '(Admin)', 'gdpr-framework'), |
| 271 |
'VI' => _x('Virgin Islands, U.S. ', '(Admin)', 'gdpr-framework'), |
| 272 |
'WF' => _x('Wallis and Futuna ', '(Admin)', 'gdpr-framework'), |
| 273 |
'EH' => _x('Western Sahara ', '(Admin)', 'gdpr-framework'), |
| 274 |
'YE' => _x('Yemen ', '(Admin)', 'gdpr-framework'), |
| 275 |
'ZM' => _x('Zambia ', '(Admin)', 'gdpr-framework'), |
| 276 |
'ZW' => _x('Zimbabwe ', '(Admin)', 'gdpr-framework'), |
| 277 |
]; |
| 278 |
} |
| 279 |
|
| 280 |
/** |
| 281 |
* Get a list of <option> values for the country selector |
| 282 |
* |
| 283 |
* @param null $current |
| 284 |
* |
| 285 |
* @return mixed |
| 286 |
*/ |
| 287 |
public function getCountrySelectOptions($current = null) |
| 288 |
{ |
| 289 |
$eu = $this->getEUCountryList(); |
| 290 |
$outside = [ |
| 291 |
"IS" => _x('Iceland', '(Admin)', 'gdpr-framework'), |
| 292 |
"NO" => _x('Norway', '(Admin)', 'gdpr-framework'), |
| 293 |
"LI" => _x('Liechtenstein', '(Admin)', 'gdpr-framework'), |
| 294 |
"CH" => _x('Switzerland', '(Admin)', 'gdpr-framework'), |
| 295 |
"US" => _x('United States', '(Admin)', 'gdpr-framework'), |
| 296 |
// "other" => _x('Rest of the world', '(Admin)', 'gdpr-framework'), |
| 297 |
]; |
| 298 |
|
| 299 |
return gdpr('view')->render('global/country-options', compact('eu', 'outside', 'current')); |
| 300 |
} |
| 301 |
|
| 302 |
/** |
| 303 |
* Check if a controller from the given country needs a representative in the EU |
| 304 |
* |
| 305 |
* @param $code |
| 306 |
* @return bool |
| 307 |
*/ |
| 308 |
public function countryNeedsRepresentative($code) |
| 309 |
{ |
| 310 |
return in_array($code, ['US', 'other']); |
| 311 |
} |
| 312 |
|
| 313 |
/** |
| 314 |
* Get the data protection authority information for a given country |
| 315 |
* |
| 316 |
* @param null $countryCode |
| 317 |
* @return array |
| 318 |
*/ |
| 319 |
public function getDataProtectionAuthorityInfo($countryCode = null) |
| 320 |
{ |
| 321 |
global $gdpr; |
| 322 |
|
| 323 |
if (!$countryCode) { |
| 324 |
$countryCode = $gdpr->Options->get('company_location'); |
| 325 |
} |
| 326 |
|
| 327 |
$dpaData = require($gdpr->PluginPath . 'assets/data-protection-authorities.php'); |
| 328 |
|
| 329 |
if (isset($dpaData[$countryCode])) { |
| 330 |
return $dpaData[$countryCode]; |
| 331 |
} |
| 332 |
|
| 333 |
return []; |
| 334 |
} |
| 335 |
|
| 336 |
/** |
| 337 |
* Get the info regarding all DPAs |
| 338 |
*/ |
| 339 |
public function getDataProtectionAuthorities() |
| 340 |
{ |
| 341 |
global $gdpr; |
| 342 |
return require($gdpr->PluginPath . 'assets/data-protection-authorities.php'); |
| 343 |
} |
| 344 |
|
| 345 |
public function getAdminUrl($suffix = '') |
| 346 |
{ |
| 347 |
return admin_url('tools.php?page=privacy' . $suffix); |
| 348 |
} |
| 349 |
|
| 350 |
public function premiumStore() |
| 351 |
{ |
| 352 |
return 'https://orders.data443.com/index.php?rp=/store/gdpr-framework'; |
| 353 |
} |
| 354 |
|
| 355 |
public function getDashboardDataPageUrl($suffix = '') |
| 356 |
{ |
| 357 |
return admin_url('users.php?page=gdpr-profile' . $suffix); |
| 358 |
} |
| 359 |
|
| 360 |
public function getPrivacyToolsPageUrl() |
| 361 |
{ |
| 362 |
global $gdpr; |
| 363 |
if($gdpr->Options->get('custom_tools_page')){ |
| 364 |
$privacyToolsUrl = $gdpr->Options->get('custom_tools_page'); |
| 365 |
return $privacyToolsUrl; |
| 366 |
}else{ |
| 367 |
$toolsPageId = $gdpr->Options->get('tools_page'); |
| 368 |
return $toolsPageId ? get_permalink($toolsPageId) : ''; |
| 369 |
} |
| 370 |
|
| 371 |
} |
| 372 |
|
| 373 |
public function getPrivacyPolicyPageUrl() |
| 374 |
{ |
| 375 |
global $gdpr; |
| 376 |
$policyPageId = $gdpr->Options->get('policy_page'); |
| 377 |
$policyPageurl = get_permalink($policyPageId); |
| 378 |
add_filter( 'gdpr_custom_policy_link', 'gdprfPrivacyPolicyurl' ); |
| 379 |
$policyPageurl = apply_filters( 'gdpr_custom_policy_link',$policyPageurl); |
| 380 |
return $policyPageurl ? $policyPageurl : ''; |
| 381 |
} |
| 382 |
|
| 383 |
public function error() |
| 384 |
{ |
| 385 |
wp_die( |
| 386 |
__('An error has occurred. Please contact the site administrator.', 'gdpr-framework') |
| 387 |
); |
| 388 |
} |
| 389 |
|
| 390 |
public function docs($url = '') |
| 391 |
{ |
| 392 |
return 'https://www.data443.com/' . $url; |
| 393 |
} |
| 394 |
|
| 395 |
public function data443() |
| 396 |
{ |
| 397 |
return 'https://data443.com/'; |
| 398 |
} |
| 399 |
|
| 400 |
public function wordpressReview() |
| 401 |
{ |
| 402 |
return 'https://wordpress.org/plugins/gdpr-framework/#reviews'; |
| 403 |
} |
| 404 |
|
| 405 |
public function supportRequest() |
| 406 |
{ |
| 407 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/group/6'; |
| 408 |
} |
| 409 |
|
| 410 |
public function siteOwnersGuide() |
| 411 |
{ |
| 412 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/2078998660'; |
| 413 |
} |
| 414 |
|
| 415 |
public function developerDocs() |
| 416 |
{ |
| 417 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/2082439194'; |
| 418 |
} |
| 419 |
|
| 420 |
public function knowledgeBase() |
| 421 |
{ |
| 422 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/192708653'; |
| 423 |
} |
| 424 |
|
| 425 |
public function controllingPersonalData() |
| 426 |
{ |
| 427 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/2082439201'; |
| 428 |
} |
| 429 |
|
| 430 |
public function legalGrounds() |
| 431 |
{ |
| 432 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/2079293576'; |
| 433 |
} |
| 434 |
|
| 435 |
public function personalData() |
| 436 |
{ |
| 437 |
return ' https://data443.atlassian.net/servicedesk/customer/portal/2/article/2083029023'; |
| 438 |
} |
| 439 |
|
| 440 |
public function privacyPolicy() |
| 441 |
{ |
| 442 |
return 'https://data443.atlassian.net/servicedesk/customer/portal/2/article/2082897943'; |
| 443 |
} |
| 444 |
|
| 445 |
/** |
| 446 |
* Wrapper around wp_mail() to filter the headers |
| 447 |
* Example code for changing the sender email: |
| 448 |
* |
| 449 |
* add_filter('gdpr/mail/headers', function($headers) { |
| 450 |
* $headers[] = 'From: Firstname Lastname <test@example.com>'; |
| 451 |
* return $headers; |
| 452 |
* }); |
| 453 |
* |
| 454 |
* |
| 455 |
*/ |
| 456 |
public function mail($to, $subject, $message, $headers = '', $attachments = []) |
| 457 |
{ |
| 458 |
$gdpr_name_from = get_option( 'gdpr_name_from' ); |
| 459 |
$gdpr_email_from = get_option( 'gdpr_email_from' ); |
| 460 |
if($gdpr_name_from == ""){ |
| 461 |
$gdpr_name_from = "Data443 GDPR"; |
| 462 |
} |
| 463 |
if($gdpr_email_from == ""){ |
| 464 |
$gdpr_email_from = get_option('admin_email'); |
| 465 |
} |
| 466 |
$headers = apply_filters('gdpr/mail/headers', $headers); |
| 467 |
$headers[] = 'From: '.$gdpr_name_from.' <'.$gdpr_email_from.'>'; |
| 468 |
|
| 469 |
wp_mail($to, $subject, $message, $headers, $attachments); |
| 470 |
} |
| 471 |
} |
| 472 |
|