@@ -190,17 +190,17 @@ discard block |
||
190 | 190 | if (FunctionsMedia::hasMemoryForImage($main_file)) { |
191 | 191 | try { |
192 | 192 | switch ($imgsize['mime']) { |
193 | - case 'image/png': |
|
194 | - $main_image = imagecreatefrompng($main_file); |
|
195 | - break; |
|
196 | - case 'image/gif': |
|
197 | - $main_image = imagecreatefromgif($main_file); |
|
198 | - break; |
|
199 | - case 'image/jpeg': |
|
200 | - $main_image = imagecreatefromjpeg($main_file); |
|
201 | - break; |
|
202 | - default: |
|
203 | - return $file; // Nothing else we can do :-( |
|
193 | + case 'image/png': |
|
194 | + $main_image = imagecreatefrompng($main_file); |
|
195 | + break; |
|
196 | + case 'image/gif': |
|
197 | + $main_image = imagecreatefromgif($main_file); |
|
198 | + break; |
|
199 | + case 'image/jpeg': |
|
200 | + $main_image = imagecreatefromjpeg($main_file); |
|
201 | + break; |
|
202 | + default: |
|
203 | + return $file; // Nothing else we can do :-( |
|
204 | 204 | } |
205 | 205 | if ($main_image) { |
206 | 206 | // How big should the thumbnail be? |
@@ -213,15 +213,15 @@ discard block |
||
213 | 213 | // Shrink the image |
214 | 214 | imagecopyresampled($thumb_image, $main_image, 0, 0, 0, 0, $width, $height, $imgsize[0], $imgsize[1]); |
215 | 215 | switch ($imgsize['mime']) { |
216 | - case 'image/png': |
|
217 | - imagepng($thumb_image, $file); |
|
218 | - break; |
|
219 | - case 'image/gif': |
|
220 | - imagegif($thumb_image, $file); |
|
221 | - break; |
|
222 | - case 'image/jpeg': |
|
223 | - imagejpeg($thumb_image, $file); |
|
224 | - break; |
|
216 | + case 'image/png': |
|
217 | + imagepng($thumb_image, $file); |
|
218 | + break; |
|
219 | + case 'image/gif': |
|
220 | + imagegif($thumb_image, $file); |
|
221 | + break; |
|
222 | + case 'image/jpeg': |
|
223 | + imagejpeg($thumb_image, $file); |
|
224 | + break; |
|
225 | 225 | } |
226 | 226 | imagedestroy($main_image); |
227 | 227 | imagedestroy($thumb_image); |
@@ -490,54 +490,54 @@ discard block |
||
490 | 490 | public function mimeType() { |
491 | 491 | // Themes contain icon definitions for some/all of these mime-types |
492 | 492 | switch ($this->extension()) { |
493 | - case 'bmp': |
|
494 | - return 'image/bmp'; |
|
495 | - case 'doc': |
|
496 | - return 'application/msword'; |
|
497 | - case 'docx': |
|
498 | - return 'application/msword'; |
|
499 | - case 'ged': |
|
500 | - return 'text/x-gedcom'; |
|
501 | - case 'gif': |
|
502 | - return 'image/gif'; |
|
503 | - case 'htm': |
|
504 | - return 'text/html'; |
|
505 | - case 'html': |
|
506 | - return 'text/html'; |
|
507 | - case 'jpeg': |
|
508 | - return 'image/jpeg'; |
|
509 | - case 'jpg': |
|
510 | - return 'image/jpeg'; |
|
511 | - case 'mov': |
|
512 | - return 'video/quicktime'; |
|
513 | - case 'mp3': |
|
514 | - return 'audio/mpeg'; |
|
515 | - case 'ogv': |
|
516 | - return 'video/ogg'; |
|
517 | - case 'pdf': |
|
518 | - return 'application/pdf'; |
|
519 | - case 'png': |
|
520 | - return 'image/png'; |
|
521 | - case 'rar': |
|
522 | - return 'application/x-rar-compressed'; |
|
523 | - case 'swf': |
|
524 | - return 'application/x-shockwave-flash'; |
|
525 | - case 'svg': |
|
526 | - return 'image/svg'; |
|
527 | - case 'tif': |
|
528 | - return 'image/tiff'; |
|
529 | - case 'tiff': |
|
530 | - return 'image/tiff'; |
|
531 | - case 'xls': |
|
532 | - return 'application/vnd-ms-excel'; |
|
533 | - case 'xlsx': |
|
534 | - return 'application/vnd-ms-excel'; |
|
535 | - case 'wmv': |
|
536 | - return 'video/x-ms-wmv'; |
|
537 | - case 'zip': |
|
538 | - return 'application/zip'; |
|
539 | - default: |
|
540 | - return 'application/octet-stream'; |
|
493 | + case 'bmp': |
|
494 | + return 'image/bmp'; |
|
495 | + case 'doc': |
|
496 | + return 'application/msword'; |
|
497 | + case 'docx': |
|
498 | + return 'application/msword'; |
|
499 | + case 'ged': |
|
500 | + return 'text/x-gedcom'; |
|
501 | + case 'gif': |
|
502 | + return 'image/gif'; |
|
503 | + case 'htm': |
|
504 | + return 'text/html'; |
|
505 | + case 'html': |
|
506 | + return 'text/html'; |
|
507 | + case 'jpeg': |
|
508 | + return 'image/jpeg'; |
|
509 | + case 'jpg': |
|
510 | + return 'image/jpeg'; |
|
511 | + case 'mov': |
|
512 | + return 'video/quicktime'; |
|
513 | + case 'mp3': |
|
514 | + return 'audio/mpeg'; |
|
515 | + case 'ogv': |
|
516 | + return 'video/ogg'; |
|
517 | + case 'pdf': |
|
518 | + return 'application/pdf'; |
|
519 | + case 'png': |
|
520 | + return 'image/png'; |
|
521 | + case 'rar': |
|
522 | + return 'application/x-rar-compressed'; |
|
523 | + case 'swf': |
|
524 | + return 'application/x-shockwave-flash'; |
|
525 | + case 'svg': |
|
526 | + return 'image/svg'; |
|
527 | + case 'tif': |
|
528 | + return 'image/tiff'; |
|
529 | + case 'tiff': |
|
530 | + return 'image/tiff'; |
|
531 | + case 'xls': |
|
532 | + return 'application/vnd-ms-excel'; |
|
533 | + case 'xlsx': |
|
534 | + return 'application/vnd-ms-excel'; |
|
535 | + case 'wmv': |
|
536 | + return 'video/x-ms-wmv'; |
|
537 | + case 'zip': |
|
538 | + return 'application/zip'; |
|
539 | + default: |
|
540 | + return 'application/octet-stream'; |
|
541 | 541 | } |
542 | 542 | } |
543 | 543 |
@@ -141,13 +141,13 @@ discard block |
||
141 | 141 | public static function collation() { |
142 | 142 | $collation = self::$locale->collation(); |
143 | 143 | switch ($collation) { |
144 | - case 'croatian_ci': |
|
145 | - case 'german2_ci': |
|
146 | - case 'vietnamese_ci': |
|
147 | - // Only available in MySQL 5.6 |
|
148 | - return 'utf8_unicode_ci'; |
|
149 | - default: |
|
150 | - return 'utf8_' . $collation; |
|
144 | + case 'croatian_ci': |
|
145 | + case 'german2_ci': |
|
146 | + case 'vietnamese_ci': |
|
147 | + // Only available in MySQL 5.6 |
|
148 | + return 'utf8_unicode_ci'; |
|
149 | + default: |
|
150 | + return 'utf8_' . $collation; |
|
151 | 151 | } |
152 | 152 | } |
153 | 153 | |
@@ -283,15 +283,15 @@ discard block |
||
283 | 283 | */ |
284 | 284 | public static function gedcomAge($string) { |
285 | 285 | switch ($string) { |
286 | - case 'STILLBORN': |
|
287 | - // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (stillborn) |
|
288 | - return self::translate('(stillborn)'); |
|
289 | - case 'INFANT': |
|
290 | - // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (in infancy) |
|
291 | - return self::translate('(in infancy)'); |
|
292 | - case 'CHILD': |
|
293 | - // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (in childhood) |
|
294 | - return self::translate('(in childhood)'); |
|
286 | + case 'STILLBORN': |
|
287 | + // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (stillborn) |
|
288 | + return self::translate('(stillborn)'); |
|
289 | + case 'INFANT': |
|
290 | + // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (in infancy) |
|
291 | + return self::translate('(in infancy)'); |
|
292 | + case 'CHILD': |
|
293 | + // I18N: Description of an individual’s age at an event. For example, Died 14 Jan 1900 (in childhood) |
|
294 | + return self::translate('(in childhood)'); |
|
295 | 295 | } |
296 | 296 | $age = array(); |
297 | 297 | if (preg_match('/(\d+)y/', $string, $match)) { |
@@ -591,13 +591,13 @@ discard block |
||
591 | 591 | */ |
592 | 592 | public static function scriptDirection($script) { |
593 | 593 | switch ($script) { |
594 | - case 'Arab': |
|
595 | - case 'Hebr': |
|
596 | - case 'Mong': |
|
597 | - case 'Thaa': |
|
598 | - return 'rtl'; |
|
599 | - default: |
|
600 | - return 'ltr'; |
|
594 | + case 'Arab': |
|
595 | + case 'Hebr': |
|
596 | + case 'Mong': |
|
597 | + case 'Thaa': |
|
598 | + return 'rtl'; |
|
599 | + default: |
|
600 | + return 'ltr'; |
|
601 | 601 | } |
602 | 602 | } |
603 | 603 | |
@@ -878,15 +878,15 @@ discard block |
||
878 | 878 | */ |
879 | 879 | public static function defaultCalendar() { |
880 | 880 | switch (self::$locale->languageTag()) { |
881 | - case 'ar': |
|
882 | - return new ArabicCalendar; |
|
883 | - case 'fa': |
|
884 | - return new PersianCalendar; |
|
885 | - case 'he': |
|
886 | - case 'yi': |
|
887 | - return new JewishCalendar; |
|
888 | - default: |
|
889 | - return new GregorianCalendar; |
|
881 | + case 'ar': |
|
882 | + return new ArabicCalendar; |
|
883 | + case 'fa': |
|
884 | + return new PersianCalendar; |
|
885 | + case 'he': |
|
886 | + case 'yi': |
|
887 | + return new JewishCalendar; |
|
888 | + default: |
|
889 | + return new GregorianCalendar; |
|
890 | 890 | } |
891 | 891 | } |
892 | 892 | } |
@@ -879,33 +879,33 @@ |
||
879 | 879 | public function getPrimaryChildFamily() { |
880 | 880 | $families = $this->getChildFamilies(); |
881 | 881 | switch (count($families)) { |
882 | - case 0: |
|
883 | - return null; |
|
884 | - case 1: |
|
885 | - return reset($families); |
|
886 | - default: |
|
887 | - // If there is more than one FAMC record, choose the preferred parents: |
|
888 | - // a) records with '2 _PRIMARY' |
|
889 | - foreach ($families as $famid => $fam) { |
|
890 | - if (preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 _PRIMARY Y)/", $this->getGedcom())) { |
|
891 | - return $fam; |
|
882 | + case 0: |
|
883 | + return null; |
|
884 | + case 1: |
|
885 | + return reset($families); |
|
886 | + default: |
|
887 | + // If there is more than one FAMC record, choose the preferred parents: |
|
888 | + // a) records with '2 _PRIMARY' |
|
889 | + foreach ($families as $famid => $fam) { |
|
890 | + if (preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 _PRIMARY Y)/", $this->getGedcom())) { |
|
891 | + return $fam; |
|
892 | + } |
|
892 | 893 | } |
893 | - } |
|
894 | - // b) records with '2 PEDI birt' |
|
895 | - foreach ($families as $famid => $fam) { |
|
896 | - if (preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 PEDI birth)/", $this->getGedcom())) { |
|
897 | - return $fam; |
|
894 | + // b) records with '2 PEDI birt' |
|
895 | + foreach ($families as $famid => $fam) { |
|
896 | + if (preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 PEDI birth)/", $this->getGedcom())) { |
|
897 | + return $fam; |
|
898 | + } |
|
898 | 899 | } |
899 | - } |
|
900 | - // c) records with no '2 PEDI' |
|
901 | - foreach ($families as $famid => $fam) { |
|
902 | - if (!preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 PEDI)/", $this->getGedcom())) { |
|
903 | - return $fam; |
|
900 | + // c) records with no '2 PEDI' |
|
901 | + foreach ($families as $famid => $fam) { |
|
902 | + if (!preg_match("/\n1 FAMC @{$famid}@\n(?:[2-9].*\n)*(?:2 PEDI)/", $this->getGedcom())) { |
|
903 | + return $fam; |
|
904 | + } |
|
904 | 905 | } |
905 | - } |
|
906 | 906 | |
907 | - // d) any record |
|
908 | - return reset($families); |
|
907 | + // d) any record |
|
908 | + return reset($families); |
|
909 | 909 | } |
910 | 910 | } |
911 | 911 |
@@ -37,12 +37,12 @@ |
||
37 | 37 | */ |
38 | 38 | public function generate(Individual $individual, Individual $head = null) { |
39 | 39 | switch ($individual->getSex()) { |
40 | - case 'M': |
|
41 | - return $this->male; |
|
42 | - case 'F': |
|
43 | - return $this->female; |
|
44 | - default: |
|
45 | - return ''; |
|
40 | + case 'M': |
|
41 | + return $this->male; |
|
42 | + case 'F': |
|
43 | + return $this->female; |
|
44 | + default: |
|
45 | + return ''; |
|
46 | 46 | } |
47 | 47 | } |
48 | 48 | } |
@@ -41,10 +41,10 @@ |
||
41 | 41 | protected function flashMessageContainer(\stdClass $message) { |
42 | 42 | // This theme uses jQueryUI markup. |
43 | 43 | switch ($message->status) { |
44 | - case 'danger': |
|
45 | - return '<p class="ui-state-error">' . $message->text . '</p>'; |
|
46 | - default: |
|
47 | - return '<p class="ui-state-highlight">' . $message->text . '</p>'; |
|
44 | + case 'danger': |
|
45 | + return '<p class="ui-state-error">' . $message->text . '</p>'; |
|
46 | + default: |
|
47 | + return '<p class="ui-state-highlight">' . $message->text . '</p>'; |
|
48 | 48 | } |
49 | 49 | } |
50 | 50 |
@@ -265,12 +265,12 @@ discard block |
||
265 | 265 | $method = $user->getPreference('contactmethod'); |
266 | 266 | |
267 | 267 | switch ($method) { |
268 | - case 'none': |
|
269 | - return ''; |
|
270 | - case 'mailto': |
|
271 | - return '<a href="mailto:' . Filter::escapeHtml($user->getEmail()) . '">' . $user->getRealNameHtml() . '</a>'; |
|
272 | - default: |
|
273 | - return "<a href='#' onclick='message(\"" . Filter::escapeHtml($user->getUserName()) . "\", \"" . $method . "\", \"" . WT_BASE_URL . Filter::escapeHtml(Functions::getQueryUrl()) . "\", \"\");return false;'>" . $user->getRealNameHtml() . '</a>'; |
|
268 | + case 'none': |
|
269 | + return ''; |
|
270 | + case 'mailto': |
|
271 | + return '<a href="mailto:' . Filter::escapeHtml($user->getEmail()) . '">' . $user->getRealNameHtml() . '</a>'; |
|
272 | + default: |
|
273 | + return "<a href='#' onclick='message(\"" . Filter::escapeHtml($user->getUserName()) . "\", \"" . $method . "\", \"" . WT_BASE_URL . Filter::escapeHtml(Functions::getQueryUrl()) . "\", \"\");return false;'>" . $user->getRealNameHtml() . '</a>'; |
|
274 | 274 | } |
275 | 275 | } |
276 | 276 | |
@@ -1346,20 +1346,20 @@ discard block |
||
1346 | 1346 | $records = array(); |
1347 | 1347 | foreach ($favorites as $favorite) { |
1348 | 1348 | switch ($favorite['type']) { |
1349 | - case 'URL': |
|
1350 | - $submenus[] = new Menu($favorite['title'], $favorite['url']); |
|
1351 | - break; |
|
1352 | - case 'INDI': |
|
1353 | - case 'FAM': |
|
1354 | - case 'SOUR': |
|
1355 | - case 'OBJE': |
|
1356 | - case 'NOTE': |
|
1357 | - $record = GedcomRecord::getInstance($favorite['gid'], $this->tree); |
|
1358 | - if ($record && $record->canShowName()) { |
|
1359 | - $submenus[] = new Menu($record->getFullName(), $record->getHtmlUrl()); |
|
1360 | - $records[] = $record; |
|
1361 | - } |
|
1362 | - break; |
|
1349 | + case 'URL': |
|
1350 | + $submenus[] = new Menu($favorite['title'], $favorite['url']); |
|
1351 | + break; |
|
1352 | + case 'INDI': |
|
1353 | + case 'FAM': |
|
1354 | + case 'SOUR': |
|
1355 | + case 'OBJE': |
|
1356 | + case 'NOTE': |
|
1357 | + $record = GedcomRecord::getInstance($favorite['gid'], $this->tree); |
|
1358 | + if ($record && $record->canShowName()) { |
|
1359 | + $submenus[] = new Menu($record->getFullName(), $record->getHtmlUrl()); |
|
1360 | + $records[] = $record; |
|
1361 | + } |
|
1362 | + break; |
|
1363 | 1363 | } |
1364 | 1364 | } |
1365 | 1365 |
@@ -102,26 +102,26 @@ discard block |
||
102 | 102 | |
103 | 103 | $this->arrows = new \stdClass(); |
104 | 104 | switch ($this->orientation) { |
105 | - case self::PORTRAIT: |
|
106 | - //drop through |
|
107 | - case self::LANDSCAPE: |
|
108 | - $this->arrows->prevGen = I18N::direction() === 'rtl' ? 'icon-larrow' : 'icon-rarrow'; |
|
109 | - $this->arrows->menu = I18N::direction() === 'rtl' ? 'icon-rarrow' : 'icon-larrow'; |
|
110 | - $addoffset['x'] = $this->chartHasAncestors ? self::ARROW_SIZE : 0; |
|
111 | - $addoffset['y'] = 0; |
|
112 | - break; |
|
113 | - case self::OLDEST_AT_TOP: |
|
114 | - $this->arrows->prevGen = 'icon-uarrow'; |
|
115 | - $this->arrows->menu = 'icon-darrow'; |
|
116 | - $addoffset['x'] = 0; |
|
117 | - $addoffset['y'] = $this->root->getSpouseFamilies() ? self::ARROW_SIZE : 0; |
|
118 | - break; |
|
119 | - case self::OLDEST_AT_BOTTOM: |
|
120 | - $this->arrows->prevGen = 'icon-darrow'; |
|
121 | - $this->arrows->menu = 'icon-uarrow'; |
|
122 | - $addoffset['x'] = 0; |
|
123 | - $addoffset['y'] = $this->chartHasAncestors ? self::ARROW_SIZE : 0; |
|
124 | - break; |
|
105 | + case self::PORTRAIT: |
|
106 | + //drop through |
|
107 | + case self::LANDSCAPE: |
|
108 | + $this->arrows->prevGen = I18N::direction() === 'rtl' ? 'icon-larrow' : 'icon-rarrow'; |
|
109 | + $this->arrows->menu = I18N::direction() === 'rtl' ? 'icon-rarrow' : 'icon-larrow'; |
|
110 | + $addoffset['x'] = $this->chartHasAncestors ? self::ARROW_SIZE : 0; |
|
111 | + $addoffset['y'] = 0; |
|
112 | + break; |
|
113 | + case self::OLDEST_AT_TOP: |
|
114 | + $this->arrows->prevGen = 'icon-uarrow'; |
|
115 | + $this->arrows->menu = 'icon-darrow'; |
|
116 | + $addoffset['x'] = 0; |
|
117 | + $addoffset['y'] = $this->root->getSpouseFamilies() ? self::ARROW_SIZE : 0; |
|
118 | + break; |
|
119 | + case self::OLDEST_AT_BOTTOM: |
|
120 | + $this->arrows->prevGen = 'icon-darrow'; |
|
121 | + $this->arrows->menu = 'icon-uarrow'; |
|
122 | + $addoffset['x'] = 0; |
|
123 | + $addoffset['y'] = $this->chartHasAncestors ? self::ARROW_SIZE : 0; |
|
124 | + break; |
|
125 | 125 | } |
126 | 126 | |
127 | 127 | // -- this next section will create and position the DIV layers for the pedigree tree |
@@ -150,73 +150,73 @@ discard block |
||
150 | 150 | |
151 | 151 | // -- calculate the xoffset |
152 | 152 | switch ($this->orientation) { |
153 | - case self::PORTRAIT: |
|
154 | - $xoffset = ($this->generations - $curgen) * (($this->getBoxDimensions()->width + $bxspacing) / 1.8); |
|
155 | - if (!$i && $this->root->getSpouseFamilies()) { |
|
156 | - $xoffset -= self::ARROW_SIZE; |
|
157 | - } |
|
158 | - // -- compact the tree |
|
159 | - if ($curgen < $this->generations) { |
|
160 | - if ($i % 2 == 0) { |
|
161 | - $yoffset = $yoffset - (($boxspacing / 2) * ($curgen - 1)); |
|
162 | - } else { |
|
163 | - $yoffset = $yoffset + (($boxspacing / 2) * ($curgen - 1)); |
|
153 | + case self::PORTRAIT: |
|
154 | + $xoffset = ($this->generations - $curgen) * (($this->getBoxDimensions()->width + $bxspacing) / 1.8); |
|
155 | + if (!$i && $this->root->getSpouseFamilies()) { |
|
156 | + $xoffset -= self::ARROW_SIZE; |
|
164 | 157 | } |
165 | - $parent = (int) (($i - 1) / 2); |
|
166 | - $pgen = $curgen; |
|
167 | - while ($parent > 0) { |
|
168 | - if ($parent % 2 == 0) { |
|
169 | - $yoffset = $yoffset - (($boxspacing / 2) * $pgen); |
|
158 | + // -- compact the tree |
|
159 | + if ($curgen < $this->generations) { |
|
160 | + if ($i % 2 == 0) { |
|
161 | + $yoffset = $yoffset - (($boxspacing / 2) * ($curgen - 1)); |
|
170 | 162 | } else { |
171 | - $yoffset = $yoffset + (($boxspacing / 2) * $pgen); |
|
163 | + $yoffset = $yoffset + (($boxspacing / 2) * ($curgen - 1)); |
|
164 | + } |
|
165 | + $parent = (int) (($i - 1) / 2); |
|
166 | + $pgen = $curgen; |
|
167 | + while ($parent > 0) { |
|
168 | + if ($parent % 2 == 0) { |
|
169 | + $yoffset = $yoffset - (($boxspacing / 2) * $pgen); |
|
170 | + } else { |
|
171 | + $yoffset = $yoffset + (($boxspacing / 2) * $pgen); |
|
172 | + } |
|
173 | + $pgen++; |
|
174 | + if ($pgen > 3) { |
|
175 | + $temp = 0; |
|
176 | + for ($j = 1; $j < ($pgen - 2); $j++) { |
|
177 | + $temp += (pow(2, $j) - 1); |
|
178 | + } |
|
179 | + if ($parent % 2 == 0) { |
|
180 | + $yoffset = $yoffset - (($boxspacing / 2) * $temp); |
|
181 | + } else { |
|
182 | + $yoffset = $yoffset + (($boxspacing / 2) * $temp); |
|
183 | + } |
|
184 | + } |
|
185 | + $parent = (int) (($parent - 1) / 2); |
|
172 | 186 | } |
173 | - $pgen++; |
|
174 | - if ($pgen > 3) { |
|
187 | + if ($curgen > 3) { |
|
175 | 188 | $temp = 0; |
176 | - for ($j = 1; $j < ($pgen - 2); $j++) { |
|
189 | + for ($j = 1; $j < ($curgen - 2); $j++) { |
|
177 | 190 | $temp += (pow(2, $j) - 1); |
178 | 191 | } |
179 | - if ($parent % 2 == 0) { |
|
192 | + if ($i % 2 == 0) { |
|
180 | 193 | $yoffset = $yoffset - (($boxspacing / 2) * $temp); |
181 | 194 | } else { |
182 | 195 | $yoffset = $yoffset + (($boxspacing / 2) * $temp); |
183 | 196 | } |
184 | 197 | } |
185 | - $parent = (int) (($parent - 1) / 2); |
|
186 | 198 | } |
187 | - if ($curgen > 3) { |
|
188 | - $temp = 0; |
|
189 | - for ($j = 1; $j < ($curgen - 2); $j++) { |
|
190 | - $temp += (pow(2, $j) - 1); |
|
191 | - } |
|
192 | - if ($i % 2 == 0) { |
|
193 | - $yoffset = $yoffset - (($boxspacing / 2) * $temp); |
|
194 | - } else { |
|
195 | - $yoffset = $yoffset + (($boxspacing / 2) * $temp); |
|
196 | - } |
|
199 | + $yoffset -= (($boxspacing / 2) * pow(2, ($this->generations - 2)) - ($boxspacing / 2)); |
|
200 | + break; |
|
201 | + case self::LANDSCAPE: |
|
202 | + $xoffset = ($this->generations - $curgen) * ($this->getBoxDimensions()->width + $bxspacing); |
|
203 | + if ($curgen == 1) { |
|
204 | + $xoffset += 10; |
|
197 | 205 | } |
198 | - } |
|
199 | - $yoffset -= (($boxspacing / 2) * pow(2, ($this->generations - 2)) - ($boxspacing / 2)); |
|
200 | - break; |
|
201 | - case self::LANDSCAPE: |
|
202 | - $xoffset = ($this->generations - $curgen) * ($this->getBoxDimensions()->width + $bxspacing); |
|
203 | - if ($curgen == 1) { |
|
204 | - $xoffset += 10; |
|
205 | - } |
|
206 | - break; |
|
207 | - case self::OLDEST_AT_TOP: |
|
208 | - //swap x & y offsets as chart is rotated |
|
209 | - $xoffset = $yoffset; |
|
210 | - $yoffset = $curgen * ($this->getBoxDimensions()->height + ($byspacing * 4)); |
|
211 | - break; |
|
212 | - case self::OLDEST_AT_BOTTOM: |
|
213 | - //swap x & y offsets as chart is rotated |
|
214 | - $xoffset = $yoffset; |
|
215 | - $yoffset = ($this->generations - $curgen) * ($this->getBoxDimensions()->height + ($byspacing * 2)); |
|
216 | - if ($i && $this->root->getSpouseFamilies()) { |
|
217 | - $yoffset += self::ARROW_SIZE; |
|
218 | - } |
|
219 | - break; |
|
206 | + break; |
|
207 | + case self::OLDEST_AT_TOP: |
|
208 | + //swap x & y offsets as chart is rotated |
|
209 | + $xoffset = $yoffset; |
|
210 | + $yoffset = $curgen * ($this->getBoxDimensions()->height + ($byspacing * 4)); |
|
211 | + break; |
|
212 | + case self::OLDEST_AT_BOTTOM: |
|
213 | + //swap x & y offsets as chart is rotated |
|
214 | + $xoffset = $yoffset; |
|
215 | + $yoffset = ($this->generations - $curgen) * ($this->getBoxDimensions()->height + ($byspacing * 2)); |
|
216 | + if ($i && $this->root->getSpouseFamilies()) { |
|
217 | + $yoffset += self::ARROW_SIZE; |
|
218 | + } |
|
219 | + break; |
|
220 | 220 | } |
221 | 221 | $this->nodes[$i]["x"] = (int) $xoffset; |
222 | 222 | $this->nodes[$i]["y"] = (int) $yoffset; |
@@ -182,22 +182,22 @@ discard block |
||
182 | 182 | $name = str_replace('/', '', $name); |
183 | 183 | $name = preg_replace('/(\S*)\*/', '<span class="starredname">\\1</span>', $name); |
184 | 184 | switch ($fact) { |
185 | - case 'TYPE': |
|
186 | - echo GedcomCodeName::getValue($name, $this->record); |
|
187 | - break; |
|
188 | - case 'SURN': |
|
189 | - // The SURN field is not necessarily the surname. |
|
190 | - // Where it is not a substring of the real surname, show it after the real surname. |
|
191 | - $surname = Filter::escapeHtml($primary_name['surname']); |
|
192 | - if (strpos($primary_name['surname'], str_replace(',', ' ', $nmatch[$i][2])) !== false) { |
|
193 | - echo '<span dir="auto">' . $surname . '</span>'; |
|
194 | - } else { |
|
195 | - echo I18N::translate('%1$s (%2$s)', '<span dir="auto">' . $surname . '</span>', '<span dir="auto">' . $name . '</span>'); |
|
196 | - } |
|
197 | - break; |
|
198 | - default: |
|
199 | - echo '<span dir="auto">' . $name . '</span>'; |
|
200 | - break; |
|
185 | + case 'TYPE': |
|
186 | + echo GedcomCodeName::getValue($name, $this->record); |
|
187 | + break; |
|
188 | + case 'SURN': |
|
189 | + // The SURN field is not necessarily the surname. |
|
190 | + // Where it is not a substring of the real surname, show it after the real surname. |
|
191 | + $surname = Filter::escapeHtml($primary_name['surname']); |
|
192 | + if (strpos($primary_name['surname'], str_replace(',', ' ', $nmatch[$i][2])) !== false) { |
|
193 | + echo '<span dir="auto">' . $surname . '</span>'; |
|
194 | + } else { |
|
195 | + echo I18N::translate('%1$s (%2$s)', '<span dir="auto">' . $surname . '</span>', '<span dir="auto">' . $name . '</span>'); |
|
196 | + } |
|
197 | + break; |
|
198 | + default: |
|
199 | + echo '<span dir="auto">' . $name . '</span>'; |
|
200 | + break; |
|
201 | 201 | } |
202 | 202 | } |
203 | 203 | echo '</dd>'; |
@@ -232,33 +232,33 @@ discard block |
||
232 | 232 | echo 'new '; |
233 | 233 | } |
234 | 234 | switch ($sex) { |
235 | - case 'M': |
|
236 | - echo 'male_gender"'; |
|
237 | - if ($event->canEdit()) { |
|
238 | - echo ' title="', I18N::translate('Male'), ' - ', I18N::translate('Edit'), '"'; |
|
239 | - echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
240 | - } else { |
|
241 | - echo ' title="', I18N::translate('Male'), '">'; |
|
242 | - } |
|
243 | - break; |
|
244 | - case 'F': |
|
245 | - echo 'female_gender"'; |
|
246 | - if ($event->canEdit()) { |
|
247 | - echo ' title="', I18N::translate('Female'), ' - ', I18N::translate('Edit'), '"'; |
|
248 | - echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
249 | - } else { |
|
250 | - echo ' title="', I18N::translate('Female'), '">'; |
|
251 | - } |
|
252 | - break; |
|
253 | - default: |
|
254 | - echo 'unknown_gender"'; |
|
255 | - if ($event->canEdit()) { |
|
256 | - echo ' title="', I18N::translateContext('unknown gender', 'Unknown'), ' - ', I18N::translate('Edit'), '"'; |
|
257 | - echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
258 | - } else { |
|
259 | - echo ' title="', I18N::translateContext('unknown gender', 'Unknown'), '">'; |
|
260 | - } |
|
261 | - break; |
|
235 | + case 'M': |
|
236 | + echo 'male_gender"'; |
|
237 | + if ($event->canEdit()) { |
|
238 | + echo ' title="', I18N::translate('Male'), ' - ', I18N::translate('Edit'), '"'; |
|
239 | + echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
240 | + } else { |
|
241 | + echo ' title="', I18N::translate('Male'), '">'; |
|
242 | + } |
|
243 | + break; |
|
244 | + case 'F': |
|
245 | + echo 'female_gender"'; |
|
246 | + if ($event->canEdit()) { |
|
247 | + echo ' title="', I18N::translate('Female'), ' - ', I18N::translate('Edit'), '"'; |
|
248 | + echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
249 | + } else { |
|
250 | + echo ' title="', I18N::translate('Female'), '">'; |
|
251 | + } |
|
252 | + break; |
|
253 | + default: |
|
254 | + echo 'unknown_gender"'; |
|
255 | + if ($event->canEdit()) { |
|
256 | + echo ' title="', I18N::translateContext('unknown gender', 'Unknown'), ' - ', I18N::translate('Edit'), '"'; |
|
257 | + echo ' onclick="edit_record(\'' . $this->record->getXref() . '\', \'' . $event->getFactId() . '\'); return false;">'; |
|
258 | + } else { |
|
259 | + echo ' title="', I18N::translateContext('unknown gender', 'Unknown'), '">'; |
|
260 | + } |
|
261 | + break; |
|
262 | 262 | } |
263 | 263 | echo '</span>'; |
264 | 264 | } |
@@ -324,15 +324,15 @@ discard block |
||
324 | 324 | */ |
325 | 325 | public function getPersonStyle($person) { |
326 | 326 | switch ($person->getSex()) { |
327 | - case 'M': |
|
328 | - $class = 'person_box'; |
|
329 | - break; |
|
330 | - case 'F': |
|
331 | - $class = 'person_boxF'; |
|
332 | - break; |
|
333 | - default: |
|
334 | - $class = 'person_boxNN'; |
|
335 | - break; |
|
327 | + case 'M': |
|
328 | + $class = 'person_box'; |
|
329 | + break; |
|
330 | + case 'F': |
|
331 | + $class = 'person_boxF'; |
|
332 | + break; |
|
333 | + default: |
|
334 | + $class = 'person_boxNN'; |
|
335 | + break; |
|
336 | 336 | } |
337 | 337 | if ($person->isPendingDeletion()) { |
338 | 338 | $class .= ' old'; |
@@ -247,15 +247,15 @@ discard block |
||
247 | 247 | $text .= "\n" . I18N::reverseText($person->getLifeSpan()); |
248 | 248 | |
249 | 249 | switch ($person->getSex()) { |
250 | - case 'M': |
|
251 | - $bg = $bgcolorM; |
|
252 | - break; |
|
253 | - case 'F': |
|
254 | - $bg = $bgcolorF; |
|
255 | - break; |
|
256 | - default: |
|
257 | - $bg = $bgcolor; |
|
258 | - break; |
|
250 | + case 'M': |
|
251 | + $bg = $bgcolorM; |
|
252 | + break; |
|
253 | + case 'F': |
|
254 | + $bg = $bgcolorF; |
|
255 | + break; |
|
256 | + default: |
|
257 | + $bg = $bgcolor; |
|
258 | + break; |
|
259 | 259 | } |
260 | 260 | |
261 | 261 | imagefilledarc($image, $cx, $cy, $rx, $rx, $deg1, $deg2, $bg, IMG_ARC_PIE); |
@@ -366,19 +366,19 @@ discard block |
||
366 | 366 | $imagemap .= '</map>'; |
367 | 367 | |
368 | 368 | switch ($what) { |
369 | - case 'html': |
|
370 | - return $html . $imagemap . '<div id="fan_chart_img"><img src="' . WT_SCRIPT_NAME . '?rootid=' . $this->root->getXref() . '&fan_style=' . $this->fan_style . '&generations=' . $this->generations . '&fan_width=' . $this->fan_width . '&img=1" width="' . $fanw . '" height="' . $fanh . '" alt="' . strip_tags($this->getPageTitle()) . '" usemap="#fanmap"></div>'; |
|
369 | + case 'html': |
|
370 | + return $html . $imagemap . '<div id="fan_chart_img"><img src="' . WT_SCRIPT_NAME . '?rootid=' . $this->root->getXref() . '&fan_style=' . $this->fan_style . '&generations=' . $this->generations . '&fan_width=' . $this->fan_width . '&img=1" width="' . $fanw . '" height="' . $fanh . '" alt="' . strip_tags($this->getPageTitle()) . '" usemap="#fanmap"></div>'; |
|
371 | 371 | |
372 | - case 'png': |
|
373 | - imagestringup($image, 1, $fanw - 10, $fanh / 3, WT_BASE_URL, $color); |
|
374 | - ob_start(); |
|
375 | - imagepng($image); |
|
376 | - imagedestroy($image); |
|
372 | + case 'png': |
|
373 | + imagestringup($image, 1, $fanw - 10, $fanh / 3, WT_BASE_URL, $color); |
|
374 | + ob_start(); |
|
375 | + imagepng($image); |
|
376 | + imagedestroy($image); |
|
377 | 377 | |
378 | - return ob_get_clean(); |
|
378 | + return ob_get_clean(); |
|
379 | 379 | |
380 | - default: |
|
381 | - throw new \InvalidArgumentException(__METHOD__ . ' ' . $what); |
|
380 | + default: |
|
381 | + throw new \InvalidArgumentException(__METHOD__ . ' ' . $what); |
|
382 | 382 | } |
383 | 383 | } |
384 | 384 | } |