PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.19.7
GiveWP – Donation Plugin and Fundraising Platform v2.19.7
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / vendor / fakerphp / faker / src / Faker / Provider / pl_PL / Person.php
give / vendor / fakerphp / faker / src / Faker / Provider / pl_PL Last commit date
Address.php 5 years ago Company.php 5 years ago Internet.php 5 years ago Payment.php 5 years ago Person.php 5 years ago PhoneNumber.php 5 years ago Text.php 5 years ago
Person.php
234 lines
1 <?php
2
3 namespace Faker\Provider\pl_PL;
4
5 /**
6 * Most popular first and last names published by Ministry of the Interior:
7 * @link https://msw.gov.pl/pl/sprawy-obywatelskie/ewidencja-ludnosci-dowo/statystyki-imion-i-nazw
8 */
9 class Person extends \Faker\Provider\Person
10 {
11 protected static $lastNameFormat = array(
12 '{{lastNameMale}}',
13 '{{lastNameFemale}}',
14 );
15
16 protected static $maleNameFormats = array(
17 '{{firstNameMale}} {{lastNameMale}}',
18 '{{firstNameMale}} {{lastNameMale}}',
19 '{{firstNameMale}} {{lastNameMale}}',
20 '{{title}} {{firstNameMale}} {{lastNameMale}}',
21 '{{firstNameMale}} {{lastNameMale}}',
22 '{{title}} {{title}} {{firstNameMale}} {{lastNameMale}}',
23 );
24
25 protected static $femaleNameFormats = array(
26 '{{firstNameFemale}} {{lastNameFemale}}',
27 '{{firstNameFemale}} {{lastNameFemale}}',
28 '{{firstNameFemale}} {{lastNameFemale}}',
29 '{{title}} {{firstNameFemale}} {{lastNameFemale}}',
30 '{{firstNameFemale}} {{lastNameFemale}}',
31 '{{title}} {{title}} {{firstNameFemale}} {{lastNameFemale}}',
32 );
33
34 protected static $firstNameMale = array(
35 'Adam', 'Adrian', 'Alan', 'Albert', 'Aleks', 'Aleksander', 'Alex', 'Andrzej', 'Antoni', 'Arkadiusz', 'Artur',
36 'Bartek', 'Błażej', 'Borys', 'Bruno', 'Cezary', 'Cyprian', 'Damian', 'Daniel', 'Dariusz', 'Dawid', 'Dominik',
37 'Emil', 'Ernest', 'Eryk', 'Fabian', 'Filip', 'Franciszek', 'Fryderyk', 'Gabriel', 'Grzegorz', 'Gustaw', 'Hubert',
38 'Ignacy', 'Igor', 'Iwo', 'Jacek', 'Jakub', 'Jan', 'Jeremi', 'Jerzy', 'Jędrzej', 'Józef', 'Julian', 'Juliusz',
39 'Kacper', 'Kajetan', 'Kamil', 'Karol', 'Kazimierz', 'Konrad', 'Konstanty', 'Kornel', 'Krystian', 'Krzysztof', 'Ksawery',
40 'Leon', 'Leonard', 'Łukasz', 'Maciej', 'Maks', 'Maksymilian', 'Marcel', 'Marcin', 'Marek', 'Mariusz', 'Mateusz', 'Maurycy',
41 'Michał', 'Mieszko', 'Mikołaj', 'Miłosz', 'Natan', 'Nataniel', 'Nikodem', 'Norbert', 'Olaf', 'Olgierd', 'Oliwier', 'Oskar',
42 'Patryk', 'Paweł', 'Piotr', 'Przemysław', 'Radosław', 'Rafał', 'Robert', 'Ryszard', 'Sebastian', 'Stanisław', 'Stefan', 'Szymon',
43 'Tadeusz', 'Tomasz', 'Tymon', 'Tymoteusz', 'Wiktor', 'Witold', 'Wojciech',
44 );
45
46 protected static $firstNameFemale = array(
47 'Ada', 'Adrianna', 'Agata', 'Agnieszka', 'Aleksandra', 'Alicja', 'Amelia', 'Anastazja', 'Angelika', 'Aniela', 'Anita',
48 'Anna', 'Anna', 'Antonina', 'Apolonia', 'Aurelia', 'Barbara', 'Bianka', 'Blanka', 'Dagmara', 'Daria', 'Dominika', 'Dorota',
49 'Eliza', 'Elżbieta', 'Emilia', 'Ewa', 'Ewelina', 'Gabriela', 'Hanna', 'Helena', 'Ida', 'Iga', 'Inga', 'Izabela',
50 'Jagoda', 'Janina', 'Joanna', 'Julia', 'Julianna', 'Julita', 'Justyna', 'Kaja', 'Kalina', 'Kamila', 'Karina', 'Karolina',
51 'Katarzyna', 'Kinga', 'Klara', 'Klaudia', 'Kornelia', 'Krystyna', 'Laura', 'Lena', 'Lidia', 'Liliana', 'Liwia', 'Łucja',
52 'Magdalena', 'Maja', 'Malwina', 'Małgorzata', 'Marcelina', 'Maria', 'Marianna', 'Marika', 'Marta', 'Martyna', 'Matylda',
53 'Melania', 'Michalina', 'Milena', 'Monika', 'Nadia', 'Natalia', 'Natasza', 'Nela', 'Nicole', 'Nikola', 'Nina',
54 'Olga', 'Oliwia', 'Patrycja', 'Paulina', 'Pola', 'Roksana', 'Rozalia', 'Róża', 'Sandra', 'Sara', 'Sonia', 'Sylwia',
55 'Tola', 'Urszula', 'Weronika', 'Wiktoria', 'Zofia', 'Zuzanna',
56 );
57
58 protected static $lastNameMale = array(
59 'Adamczyk', 'Adamski', 'Andrzejewski', 'Baran', 'Baranowski', 'B�
60 k', 'Błaszczyk', 'Borkowski', 'Borowski', 'Brzeziński',
61 'Chmielewski', 'Cieślak', 'Czarnecki', 'Czerwiński', 'D�
62 browski', 'Duda', 'Dudek', 'Gajewski', 'Głowacki', 'Górski', 'Grabowski',
63 'Jabłoński', 'Jakubowski', 'Jankowski', 'Jasiński', 'Jaworski', 'Kaczmarczyk', 'Kaczmarek', 'Kalinowski', 'Kamiński', 'Kaźmierczak',
64 'Kołodziej', 'Konieczny', 'Kowalczyk', 'Kowalski', 'Kozłowski', 'Krajewski', 'Krawczyk', 'Król', 'Krupa', 'Kubiak', 'Kucharski', 'Kwiatkowski',
65 'Laskowski', 'Lewandowski', 'Lis', 'Maciejewski', 'Majewski', 'Makowski', 'Malinowski', 'Marciniak', 'Mazur', 'Mazurek', 'Michalak',
66 'Michalski', 'Mróz', 'Nowak', 'Nowakowski', 'Nowicki', 'Olszewski', 'Ostrowski', 'Pawlak', 'Pawłowski', 'Pietrzak', 'Piotrowski', 'Przybylski',
67 'Rutkowski', 'Sadowski', 'Sawicki', 'Sikora', 'Sikorski', 'Sobczak', 'Sokołowski', 'Stępień', 'Szczepański', 'Szewczyk', 'Szulc', 'Szymański', 'Szymczak',
68 'Tomaszewski', 'Urbański', 'Walczak', 'Wasilewski', 'Wieczorek', 'Wilk', 'Wiśniewski', 'Witkowski', 'Włodarczyk', 'Wojciechowski',
69 'Woźniak', 'Wójcik', 'Wróbel', 'Wróblewski', 'Wysocki', 'Zaj�
70 c', 'Zakrzewski', 'Zalewski', 'Zawadzki', 'Zieliński', 'Ziółkowski',
71 );
72
73 protected static $lastNameFemale = array(
74 'Adamczyk', 'Adamska', 'Andrzejewska', 'Baran', 'Baranowska', 'B�
75 k', 'Błaszczyk', 'Borkowska', 'Borowska', 'Brzezińska',
76 'Chmielewska', 'Cieślak', 'Czarnecka', 'Czerwińska', 'D�
77 browska', 'Duda', 'Dudek', 'Gajewska', 'Głowacka', 'Górecka', 'Górska', 'Grabowska',
78 'Jabłońska', 'Jakubowska', 'Jankowska', 'Jasińska', 'Jaworska', 'Kaczmarczyk', 'Kaczmarek', 'Kalinowska', 'Kamińska', 'Kaźmierczak',
79 'Kołodziej', 'Kowalczyk', 'Kowalska', 'Kozłowska', 'Krajewska', 'Krawczyk', 'Król', 'Krupa', 'Kubiak', 'Kucharska', 'Kwiatkowska',
80 'Laskowska', 'Lewandowska', 'Lis', 'Maciejewska', 'Majewska', 'Makowska', 'Malinowska', 'Marciniak', 'Mazur', 'Mazurek', 'Michalak',
81 'Michalska', 'Mróz', 'Nowak', 'Nowakowska', 'Nowicka', 'Olszewska', 'Ostrowska', 'Pawlak', 'Pawłowska', 'Pietrzak', 'Piotrowska', 'Przybylska',
82 'Rutkowska', 'Sadowska', 'Sawicka', 'Sikora', 'Sikorska', 'Sobczak', 'Sokołowska', 'Stępień', 'Szczepańska', 'Szewczyk', 'Szulc', 'Szymańska', 'Szymczak',
83 'Tomaszewska', 'Urbańska', 'Walczak', 'Wasilewska', 'Wieczorek', 'Wilk', 'Wiśniewska', 'Witkowska', 'Włodarczyk', 'Wojciechowska',
84 'Woźniak', 'Wójcik', 'Wróbel', 'Wróblewska', 'Wysocka', 'Zaj�
85 c', 'Zakrzewska', 'Zalewska', 'Zawadzka', 'Zielińska', 'Ziółkowska',
86 );
87
88 /**
89 *
90 * Unisex academic degree
91 *
92 * @var string
93 */
94 protected static $title = array('mgr','inż.', 'dr', 'doc.');
95
96 /**
97 * @param string|null $gender 'male', 'female' or null for any
98 * @example 'Adamczyk'
99 */
100 public function lastName($gender = null)
101 {
102 if ($gender === static::GENDER_MALE) {
103 return static::lastNameMale();
104 } elseif ($gender === static::GENDER_FEMALE) {
105 return static::lastNameFemale();
106 }
107
108 return $this->generator->parse(static::randomElement(static::$lastNameFormat));
109 }
110
111 public static function lastNameMale()
112 {
113 return static::randomElement(static::$lastNameMale);
114 }
115
116 public static function lastNameFemale()
117 {
118 return static::randomElement(static::$lastNameFemale);
119 }
120
121 public function title($gender = null)
122 {
123 return static::randomElement(static::$title);
124 }
125
126 /**
127 * replaced by specific unisex Polish title
128 */
129 public static function titleMale()
130 {
131 return static::title();
132 }
133
134 /**
135 * replaced by specific unisex Polish title
136 */
137 public static function titleFemale()
138 {
139 return static::title();
140 }
141
142 /**
143 * PESEL - Universal Electronic System for Registration of the Population
144 * @link http://en.wikipedia.org/wiki/PESEL
145 * @param DateTime $birthdate
146 * @param string $sex M for male or F for female
147 * @return string 11 digit number, like 44051401358
148 */
149 public static function pesel($birthdate = null, $sex = null)
150 {
151 if ($birthdate === null) {
152 $birthdate = \Faker\Provider\DateTime::dateTimeThisCentury();
153 }
154
155 $weights = array(1, 3, 7, 9, 1, 3, 7, 9, 1, 3);
156 $length = count($weights);
157
158 $fullYear = (int) $birthdate->format('Y');
159 $year = (int) $birthdate->format('y');
160 $month = $birthdate->format('m') + (((int) ($fullYear/100) - 14) % 5) * 20;
161 $day = $birthdate->format('d');
162
163 $result = array((int) ($year / 10), $year % 10, (int) ($month / 10), $month % 10, (int) ($day / 10), $day % 10);
164
165 for ($i = 6; $i < $length; $i++) {
166 $result[$i] = static::randomDigit();
167 }
168
169 $result[$length - 1] |= 1;
170 if ($sex == "F") {
171 $result[$length - 1] -= 1;
172 }
173
174 $checksum = 0;
175 for ($i = 0; $i < $length; $i++) {
176 $checksum += $weights[$i] * $result[$i];
177 }
178 $checksum = (10 - ($checksum % 10)) % 10;
179 $result[] = $checksum;
180
181 return implode('', $result);
182 }
183
184 /**
185 * National Identity Card number
186 * @link http://en.wikipedia.org/wiki/Polish_National_Identity_Card
187 * @return string 3 letters and 6 digits, like ABA300000
188 */
189 public static function personalIdentityNumber()
190 {
191 $range = str_split("ABCDEFGHIJKLMNPRSTUVWXYZ");
192 $low = array("A", static::randomElement($range), static::randomElement($range));
193 $high = array(static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit());
194 $weights = array(7, 3, 1, 7, 3, 1, 7, 3);
195 $checksum = 0;
196 for ($i = 0, $size = count($low); $i < $size; $i++) {
197 $checksum += $weights[$i] * (ord($low[$i]) - 55);
198 }
199 for ($i = 0, $size = count($high); $i < $size; $i++) {
200 $checksum += $weights[$i+3] * $high[$i];
201 }
202 $checksum %= 10;
203
204 return implode('', $low).$checksum.implode('', $high);
205 }
206
207 /**
208 * Taxpayer Identification Number (NIP in Polish)
209 * @link http://en.wikipedia.org/wiki/PESEL#Other_identifiers
210 * @link http://pl.wikipedia.org/wiki/NIP
211 * @return string 10 digit number
212 */
213 public static function taxpayerIdentificationNumber()
214 {
215 $weights = array(6, 5, 7, 2, 3, 4, 5, 6, 7);
216 $result = array();
217 do {
218 $result = array(
219 static::randomDigitNotNull(), static::randomDigitNotNull(), static::randomDigitNotNull(),
220 static::randomDigit(), static::randomDigit(), static::randomDigit(),
221 static::randomDigit(), static::randomDigit(), static::randomDigit(),
222 );
223 $checksum = 0;
224 for ($i = 0, $size = count($result); $i < $size; $i++) {
225 $checksum += $weights[$i] * $result[$i];
226 }
227 $checksum %= 11;
228 } while ($checksum == 10);
229 $result[] = $checksum;
230
231 return implode('', $result);
232 }
233 }
234