@@ -28,15 +28,15 @@ discard block |
||
28 | 28 | * {@inhericDoc} |
29 | 29 | * @see \MyArtJaub\Webtrees\Mvc\View\AbstractView::renderContent() |
30 | 30 | */ |
31 | - protected function renderContent() { |
|
31 | + protected function renderContent() { |
|
32 | 32 | |
33 | - if (Module::getModuleByName('ckeditor')) { |
|
34 | - CkeditorModule::enableEditor($this->ctrl); |
|
35 | - } |
|
33 | + if (Module::getModuleByName('ckeditor')) { |
|
34 | + CkeditorModule::enableEditor($this->ctrl); |
|
35 | + } |
|
36 | 36 | |
37 | - /** @var AbstractModule $module */ |
|
38 | - $module = $this->data->get('module'); |
|
39 | - ?> |
|
37 | + /** @var AbstractModule $module */ |
|
38 | + $module = $this->data->get('module'); |
|
39 | + ?> |
|
40 | 40 | <ol class="breadcrumb small"> |
41 | 41 | <li><a href="admin.php"><?php echo I18N::translate('Control panel'); ?></a></li> |
42 | 42 | <li><a href="admin_modules.php"><?php echo I18N::translate('Module administration'); ?></a></li> |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | </form> |
188 | 188 | |
189 | 189 | <?php |
190 | - } |
|
190 | + } |
|
191 | 191 | |
192 | 192 | } |
193 | 193 | |
194 | 194 | \ No newline at end of file |
@@ -44,7 +44,7 @@ discard block |
||
44 | 44 | * |
45 | 45 | * @return (OutlineMap|null) |
46 | 46 | */ |
47 | - public function getMap(){ |
|
47 | + public function getMap() { |
|
48 | 48 | return $this->map; |
49 | 49 | } |
50 | 50 | |
@@ -64,7 +64,7 @@ discard block |
||
64 | 64 | * |
65 | 65 | * @return int |
66 | 66 | */ |
67 | - public function getMapLevel(){ |
|
67 | + public function getMapLevel() { |
|
68 | 68 | return $this->map_level; |
69 | 69 | } |
70 | 70 | |
@@ -84,7 +84,7 @@ discard block |
||
84 | 84 | * |
85 | 85 | * @return bool |
86 | 86 | */ |
87 | - public function isUsingFlags(){ |
|
87 | + public function isUsingFlags() { |
|
88 | 88 | return $this->use_flags; |
89 | 89 | } |
90 | 90 | |
@@ -104,7 +104,7 @@ discard block |
||
104 | 104 | * |
105 | 105 | * @return int |
106 | 106 | */ |
107 | - public function getMaxDetailsInGen(){ |
|
107 | + public function getMaxDetailsInGen() { |
|
108 | 108 | return $this->max_details_in_gen; |
109 | 109 | } |
110 | 110 |
@@ -15,58 +15,58 @@ discard block |
||
15 | 15 | */ |
16 | 16 | class GeoDisplayOptions { |
17 | 17 | |
18 | - /** |
|
18 | + /** |
|
19 | 19 | * Outline map to be used for diaplay |
20 | - * @var (null|OutlineMap) $map |
|
21 | - */ |
|
22 | - protected $map; |
|
20 | + * @var (null|OutlineMap) $map |
|
21 | + */ |
|
22 | + protected $map; |
|
23 | 23 | |
24 | 24 | /** |
25 | 25 | * Level in the Gedcom hierarchy of the parent level of the outline map. |
26 | 26 | * @var int $map_level |
27 | 27 | */ |
28 | - protected $map_level; |
|
28 | + protected $map_level; |
|
29 | 29 | |
30 | 30 | /** |
31 | 31 | * Option to use flags in places display, instead of or in addition to the name. |
32 | 32 | * @var bool $use_flags |
33 | 33 | */ |
34 | - protected $use_flags; |
|
34 | + protected $use_flags; |
|
35 | 35 | |
36 | 36 | /** |
37 | 37 | * Option to define the number of top places to display in the generation view. |
38 | 38 | * @var int $max_details_in_gen |
39 | 39 | */ |
40 | - protected $max_details_in_gen; |
|
40 | + protected $max_details_in_gen; |
|
41 | 41 | |
42 | - /** |
|
42 | + /** |
|
43 | 43 | * Get the outline map to use for display. |
44 | 44 | * |
45 | - * @return (OutlineMap|null) |
|
46 | - */ |
|
47 | - public function getMap(){ |
|
48 | - return $this->map; |
|
49 | - } |
|
45 | + * @return (OutlineMap|null) |
|
46 | + */ |
|
47 | + public function getMap(){ |
|
48 | + return $this->map; |
|
49 | + } |
|
50 | 50 | |
51 | 51 | /** |
52 | 52 | * Set the outline map to use for display. |
53 | 53 | * |
54 | - * @param (OutlineMap|null) $map |
|
54 | + * @param (OutlineMap|null) $map |
|
55 | 55 | * @return self Enable method-chaining |
56 | - */ |
|
57 | - public function setMap(OutlineMap $map = null) { |
|
58 | - $this->map = $map; |
|
59 | - return $this; |
|
60 | - } |
|
56 | + */ |
|
57 | + public function setMap(OutlineMap $map = null) { |
|
58 | + $this->map = $map; |
|
59 | + return $this; |
|
60 | + } |
|
61 | 61 | |
62 | 62 | /** |
63 | 63 | * Get the level of the map parent place |
64 | 64 | * |
65 | 65 | * @return int |
66 | 66 | */ |
67 | - public function getMapLevel(){ |
|
68 | - return $this->map_level; |
|
69 | - } |
|
67 | + public function getMapLevel(){ |
|
68 | + return $this->map_level; |
|
69 | + } |
|
70 | 70 | |
71 | 71 | /** |
72 | 72 | * Set the level of the map parent place |
@@ -74,19 +74,19 @@ discard block |
||
74 | 74 | * @param int $maplevel |
75 | 75 | * @return self Enable method-chaining |
76 | 76 | */ |
77 | - public function setMapLevel($maplevel) { |
|
78 | - $this->map_level = $maplevel; |
|
79 | - return $this; |
|
80 | - } |
|
77 | + public function setMapLevel($maplevel) { |
|
78 | + $this->map_level = $maplevel; |
|
79 | + return $this; |
|
80 | + } |
|
81 | 81 | |
82 | 82 | /** |
83 | 83 | * Get whether flags should be used in places display |
84 | 84 | * |
85 | 85 | * @return bool |
86 | 86 | */ |
87 | - public function isUsingFlags(){ |
|
88 | - return $this->use_flags; |
|
89 | - } |
|
87 | + public function isUsingFlags(){ |
|
88 | + return $this->use_flags; |
|
89 | + } |
|
90 | 90 | |
91 | 91 | /** |
92 | 92 | * Set whether flags should be used in places display |
@@ -94,19 +94,19 @@ discard block |
||
94 | 94 | * @param bool $use_flags |
95 | 95 | * @return self Enable method-chaining |
96 | 96 | */ |
97 | - public function setUsingFlags($use_flags) { |
|
98 | - $this->use_flags = $use_flags; |
|
99 | - return $this; |
|
100 | - } |
|
97 | + public function setUsingFlags($use_flags) { |
|
98 | + $this->use_flags = $use_flags; |
|
99 | + return $this; |
|
100 | + } |
|
101 | 101 | |
102 | 102 | /** |
103 | 103 | * Get the number of Top Places in the generation view |
104 | 104 | * |
105 | 105 | * @return int |
106 | 106 | */ |
107 | - public function getMaxDetailsInGen(){ |
|
108 | - return $this->max_details_in_gen; |
|
109 | - } |
|
107 | + public function getMaxDetailsInGen(){ |
|
108 | + return $this->max_details_in_gen; |
|
109 | + } |
|
110 | 110 | |
111 | 111 | /** |
112 | 112 | * Set the number of Top Places in the generation view |
@@ -114,10 +114,10 @@ discard block |
||
114 | 114 | * @param int $max_details_in_gen |
115 | 115 | * @return self Enable method-chaining |
116 | 116 | */ |
117 | - public function setMaxDetailsInGen($max_details_in_gen) { |
|
118 | - $this->max_details_in_gen = $max_details_in_gen; |
|
119 | - return $this; |
|
120 | - } |
|
117 | + public function setMaxDetailsInGen($max_details_in_gen) { |
|
118 | + $this->max_details_in_gen = $max_details_in_gen; |
|
119 | + return $this; |
|
120 | + } |
|
121 | 121 | |
122 | 122 | } |
123 | 123 | |
124 | 124 | \ No newline at end of file |
@@ -19,49 +19,49 @@ discard block |
||
19 | 19 | * Width of the map (in pixels). |
20 | 20 | * @var int $width |
21 | 21 | */ |
22 | - public $width; |
|
22 | + public $width; |
|
23 | 23 | |
24 | 24 | /** |
25 | 25 | * Height of the map (in pixels). |
26 | 26 | * @var int $height |
27 | 27 | */ |
28 | - public $height; |
|
28 | + public $height; |
|
29 | 29 | |
30 | 30 | /** |
31 | 31 | * Background color for the map shapes with values (when no transparency if applied). |
32 | 32 | * @var string $max_color |
33 | 33 | */ |
34 | - public $max_color; |
|
34 | + public $max_color; |
|
35 | 35 | |
36 | 36 | /** |
37 | 37 | * Background color for the map shapes when hovered. |
38 | 38 | * @var string $hover_color |
39 | 39 | */ |
40 | - public $hover_color; |
|
40 | + public $hover_color; |
|
41 | 41 | |
42 | 42 | /** |
43 | 43 | * Background color for the map. |
44 | 44 | * @var string $background_color |
45 | 45 | */ |
46 | - public $background_color; |
|
46 | + public $background_color; |
|
47 | 47 | |
48 | 48 | /** |
49 | 49 | * Border color for the map. |
50 | 50 | * @var string $background_stroke |
51 | 51 | */ |
52 | - public $background_stroke; |
|
52 | + public $background_stroke; |
|
53 | 53 | |
54 | 54 | /** |
55 | 55 | * Default color for the shapes (without any value). |
56 | 56 | * @var string $default_color |
57 | 57 | */ |
58 | - public $default_color; |
|
58 | + public $default_color; |
|
59 | 59 | |
60 | 60 | /** |
61 | 61 | * Default border color for the shapes. |
62 | 62 | * @var string $default_stroke |
63 | 63 | */ |
64 | - public $default_stroke; |
|
64 | + public $default_stroke; |
|
65 | 65 | |
66 | 66 | /** |
67 | 67 | * Constructor for OutlineMapCanvas. |
@@ -75,25 +75,25 @@ discard block |
||
75 | 75 | * @param string $default_color Default background color for the shapes |
76 | 76 | * @param string $default_stroke Default border color for the shapes |
77 | 77 | */ |
78 | - public function __construct( |
|
79 | - $width, |
|
80 | - $height, |
|
81 | - $max_color, |
|
82 | - $hover_color, |
|
83 | - $background_color, |
|
84 | - $background_stroke, |
|
85 | - $default_color, |
|
86 | - $default_stroke |
|
87 | - ) { |
|
88 | - $this->width = $width; |
|
89 | - $this->height = $height; |
|
90 | - $this->max_color = $max_color; |
|
91 | - $this->hover_color = $hover_color; |
|
92 | - $this->background_color = $background_color; |
|
93 | - $this->background_stroke = $background_stroke; |
|
94 | - $this->default_color = $default_color; |
|
95 | - $this->default_stroke = $default_stroke; |
|
96 | - } |
|
78 | + public function __construct( |
|
79 | + $width, |
|
80 | + $height, |
|
81 | + $max_color, |
|
82 | + $hover_color, |
|
83 | + $background_color, |
|
84 | + $background_stroke, |
|
85 | + $default_color, |
|
86 | + $default_stroke |
|
87 | + ) { |
|
88 | + $this->width = $width; |
|
89 | + $this->height = $height; |
|
90 | + $this->max_color = $max_color; |
|
91 | + $this->hover_color = $hover_color; |
|
92 | + $this->background_color = $background_color; |
|
93 | + $this->background_stroke = $background_stroke; |
|
94 | + $this->default_color = $default_color; |
|
95 | + $this->default_stroke = $default_stroke; |
|
96 | + } |
|
97 | 97 | |
98 | 98 | |
99 | 99 | } |
@@ -217,39 +217,34 @@ discard block |
||
217 | 217 | $placest = implode(I18N::$list_separator, array_slice($levels, 0, $this->analysis_level)); |
218 | 218 | if(isset($placesDispGeneral['places'][$placest])) { |
219 | 219 | $placesDispGeneral['places'][$placest] += 1; |
220 | - } |
|
221 | - else { |
|
220 | + } else { |
|
222 | 221 | $placesDispGeneral['places'][$placest] = 1; |
223 | 222 | } |
224 | - if($placesDispGeneral['places'][$placest]>$placesDispGeneral['max']) |
|
225 | - $placesDispGeneral['max'] = $placesDispGeneral['places'][$placest]; |
|
223 | + if($placesDispGeneral['places'][$placest]>$placesDispGeneral['max']) { |
|
224 | + $placesDispGeneral['max'] = $placesDispGeneral['places'][$placest]; |
|
225 | + } |
|
226 | 226 | foreach($genstab as $gen) { |
227 | 227 | if(isset($placesDispGenerations[$gen]['places'][$placest])) { |
228 | 228 | $placesDispGenerations[$gen]['places'][$placest] += 1; |
229 | - } |
|
230 | - else { |
|
229 | + } else { |
|
231 | 230 | $placesDispGenerations[$gen]['places'][$placest] = 1; |
232 | 231 | } |
233 | 232 | if(isset($placesDispGenerations[$gen]['sum'])) { |
234 | 233 | $placesDispGenerations[$gen]['sum'] += 1; |
235 | - } |
|
236 | - else { |
|
234 | + } else { |
|
237 | 235 | $placesDispGenerations[$gen]['sum'] = 1; |
238 | 236 | } |
239 | 237 | } |
240 | - } |
|
241 | - else{ |
|
238 | + } else{ |
|
242 | 239 | if(isset($placesDispGeneral['other'])) { |
243 | 240 | $placesDispGeneral['other'] += 1; |
244 | - } |
|
245 | - else { |
|
241 | + } else { |
|
246 | 242 | $placesDispGeneral['other'] = 1; |
247 | 243 | } |
248 | 244 | foreach($genstab as $gen) { |
249 | 245 | if(isset($placesDispGenerations[$gen]['other'])) { |
250 | 246 | $placesDispGenerations[$gen]['other'] += 1; |
251 | - } |
|
252 | - else { |
|
247 | + } else { |
|
253 | 248 | $placesDispGenerations[$gen]['other'] = 1; |
254 | 249 | } |
255 | 250 | } |
@@ -263,8 +258,7 @@ discard block |
||
263 | 258 | foreach($genstab as $gen) { |
264 | 259 | if(isset($placesDispGenerations[$gen]['unknown'])) { |
265 | 260 | $placesDispGenerations[$gen]['unknown'] += 1; |
266 | - } |
|
267 | - else { |
|
261 | + } else { |
|
268 | 262 | $placesDispGenerations[$gen]['unknown'] = 1; |
269 | 263 | } |
270 | 264 | } |
@@ -24,64 +24,64 @@ discard block |
||
24 | 24 | * Geo Analysis ID |
25 | 25 | * @var int $id |
26 | 26 | */ |
27 | - protected $id; |
|
27 | + protected $id; |
|
28 | 28 | |
29 | 29 | /** |
30 | 30 | * Geo Analysis Title |
31 | 31 | * @var string $title |
32 | 32 | */ |
33 | - protected $title; |
|
33 | + protected $title; |
|
34 | 34 | |
35 | 35 | /** |
36 | 36 | * Level of the Gedcom hierarchy for the analysis |
37 | 37 | * @var int $analysis_level |
38 | 38 | */ |
39 | - protected $analysis_level; |
|
39 | + protected $analysis_level; |
|
40 | 40 | |
41 | - /** |
|
42 | - * Display options |
|
43 | - * @var GeoDisplayOptions $options |
|
44 | - */ |
|
45 | - protected $options; |
|
41 | + /** |
|
42 | + * Display options |
|
43 | + * @var GeoDisplayOptions $options |
|
44 | + */ |
|
45 | + protected $options; |
|
46 | 46 | |
47 | - /** |
|
48 | - * Reference tree |
|
49 | - * @var Tree $tree |
|
50 | - */ |
|
51 | - protected $tree; |
|
47 | + /** |
|
48 | + * Reference tree |
|
49 | + * @var Tree $tree |
|
50 | + */ |
|
51 | + protected $tree; |
|
52 | 52 | |
53 | - /** |
|
54 | - * Is the analysis enabled |
|
55 | - * @var bool $enabled |
|
56 | - */ |
|
57 | - protected $enabled; |
|
53 | + /** |
|
54 | + * Is the analysis enabled |
|
55 | + * @var bool $enabled |
|
56 | + */ |
|
57 | + protected $enabled; |
|
58 | 58 | |
59 | - /** |
|
60 | - * Constructor for GeoAnalysis. |
|
61 | - * |
|
62 | - * @param Tree $tree Reference tree |
|
59 | + /** |
|
60 | + * Constructor for GeoAnalysis. |
|
61 | + * |
|
62 | + * @param Tree $tree Reference tree |
|
63 | 63 | * @param int $id GeoAnalysis ID |
64 | 64 | * @param string $title GeoAnalysis title |
65 | 65 | * @param int $analysis_level Analysis level |
66 | 66 | * @param (GeoDisplayOptions|null) $options Display options |
67 | 67 | * @param bool $enabled Is analysis enabled |
68 | - */ |
|
69 | - public function __construct(Tree $tree, $id, $title, $analysis_level, GeoDisplayOptions $options = null, $enabled = true) { |
|
70 | - $this->tree = $tree; |
|
71 | - $this->id = $id; |
|
72 | - $this->title = $title; |
|
73 | - $this->analysis_level = $analysis_level; |
|
74 | - $this->options = $options; |
|
75 | - $this->enabled = $enabled; |
|
76 | - } |
|
68 | + */ |
|
69 | + public function __construct(Tree $tree, $id, $title, $analysis_level, GeoDisplayOptions $options = null, $enabled = true) { |
|
70 | + $this->tree = $tree; |
|
71 | + $this->id = $id; |
|
72 | + $this->title = $title; |
|
73 | + $this->analysis_level = $analysis_level; |
|
74 | + $this->options = $options; |
|
75 | + $this->enabled = $enabled; |
|
76 | + } |
|
77 | 77 | |
78 | 78 | /** |
79 | 79 | * Get the analysis title |
80 | 80 | * @return string |
81 | 81 | */ |
82 | - public function getTitle() { |
|
83 | - return $this->title; |
|
84 | - } |
|
82 | + public function getTitle() { |
|
83 | + return $this->title; |
|
84 | + } |
|
85 | 85 | |
86 | 86 | /** |
87 | 87 | * Set the analysis title |
@@ -89,53 +89,53 @@ discard block |
||
89 | 89 | * @param string $title |
90 | 90 | * @return self Enable method-chaining |
91 | 91 | */ |
92 | - public function setTitle($title) { |
|
93 | - $this->title = $title; |
|
94 | - return $this; |
|
95 | - } |
|
92 | + public function setTitle($title) { |
|
93 | + $this->title = $title; |
|
94 | + return $this; |
|
95 | + } |
|
96 | 96 | |
97 | 97 | /** |
98 | 98 | * Get the analysis ID |
99 | 99 | * @return int |
100 | 100 | */ |
101 | - public function getId() { |
|
102 | - return $this->id; |
|
103 | - } |
|
101 | + public function getId() { |
|
102 | + return $this->id; |
|
103 | + } |
|
104 | 104 | |
105 | 105 | /** |
106 | 106 | * Get the analysis status (enabled/disabled) |
107 | 107 | * @return bool |
108 | 108 | */ |
109 | - public function isEnabled() { |
|
110 | - return $this->enabled; |
|
111 | - } |
|
109 | + public function isEnabled() { |
|
110 | + return $this->enabled; |
|
111 | + } |
|
112 | 112 | |
113 | - /** |
|
114 | - * Get analysis options |
|
115 | - * @return \MyArtJaub\Webtrees\Module\GeoDispersion\Model\GeoDisplayOptions |
|
116 | - */ |
|
117 | - public function getOptions() { |
|
118 | - return $this->options; |
|
119 | - } |
|
113 | + /** |
|
114 | + * Get analysis options |
|
115 | + * @return \MyArtJaub\Webtrees\Module\GeoDispersion\Model\GeoDisplayOptions |
|
116 | + */ |
|
117 | + public function getOptions() { |
|
118 | + return $this->options; |
|
119 | + } |
|
120 | 120 | |
121 | 121 | /** |
122 | - * Set analysis options |
|
122 | + * Set analysis options |
|
123 | 123 | * |
124 | - * @param \MyArtJaub\Webtrees\Module\GeoDispersion\Model\GeoDisplayOptions $options |
|
124 | + * @param \MyArtJaub\Webtrees\Module\GeoDispersion\Model\GeoDisplayOptions $options |
|
125 | 125 | * @return self Enable method-chaining |
126 | - */ |
|
127 | - public function setOptions(GeoDisplayOptions $options) { |
|
128 | - $this->options = $options; |
|
129 | - return $this; |
|
130 | - } |
|
126 | + */ |
|
127 | + public function setOptions(GeoDisplayOptions $options) { |
|
128 | + $this->options = $options; |
|
129 | + return $this; |
|
130 | + } |
|
131 | 131 | |
132 | 132 | /** |
133 | 133 | * Get analysis level |
134 | 134 | * @return int |
135 | 135 | */ |
136 | - public function getAnalysisLevel() { |
|
137 | - return $this->analysis_level; |
|
138 | - } |
|
136 | + public function getAnalysisLevel() { |
|
137 | + return $this->analysis_level; |
|
138 | + } |
|
139 | 139 | |
140 | 140 | /** |
141 | 141 | * Get analysis level |
@@ -143,19 +143,19 @@ discard block |
||
143 | 143 | * @param int $analysis_level |
144 | 144 | * @return self Enable method-chaining |
145 | 145 | */ |
146 | - public function setAnalysisLevel($analysis_level) { |
|
147 | - $this->analysis_level = $analysis_level; |
|
148 | - return $this; |
|
149 | - } |
|
146 | + public function setAnalysisLevel($analysis_level) { |
|
147 | + $this->analysis_level = $analysis_level; |
|
148 | + return $this; |
|
149 | + } |
|
150 | 150 | |
151 | 151 | /** |
152 | 152 | * Check whether the analysis has a linked map |
153 | 153 | * |
154 | 154 | * @return bool |
155 | 155 | */ |
156 | - public function hasMap() { |
|
157 | - return $this->options && $this->options->getMap(); |
|
158 | - } |
|
156 | + public function hasMap() { |
|
157 | + return $this->options && $this->options->getMap(); |
|
158 | + } |
|
159 | 159 | |
160 | 160 | /** |
161 | 161 | * Get the URL for the GeoAnalysis. |
@@ -163,120 +163,120 @@ discard block |
||
163 | 163 | * @return string |
164 | 164 | */ |
165 | 165 | public function getHtmlUrl() { |
166 | - return 'module.php?mod='. Constants::MODULE_MAJ_GEODISP_NAME . '&mod_action=GeoAnalysis&ga_id=' . $this->getId() . '&ged=' . $this->tree->getNameUrl(); |
|
167 | - } |
|
166 | + return 'module.php?mod='. Constants::MODULE_MAJ_GEODISP_NAME . '&mod_action=GeoAnalysis&ga_id=' . $this->getId() . '&ged=' . $this->tree->getNameUrl(); |
|
167 | + } |
|
168 | 168 | |
169 | - /** |
|
170 | - * Return the dispersion analysis tables. |
|
171 | - * Two arrays are returned : |
|
172 | - * - the General analysis, which returns the number of ancestors for each place found, plus 4 additional indicators : |
|
173 | - * - knownsum : Number of known places |
|
174 | - * - unknown : Number of unknown places |
|
175 | - * - max : Maximum count of ancestors within a place |
|
176 | - * - other : Other places (not in the top level area) |
|
177 | - * - the Generations analysis, which returns the number of ancestors for each place found for each generation, plus 3 additional indicators within each generation : |
|
178 | - * - sum : Number of known places |
|
179 | - * - unknown : Number of unknown places |
|
180 | - * - other : Other places (not in the top level area) |
|
181 | - * |
|
182 | - * @param array $sosalist List of all sosas |
|
183 | - * @return array Array of the general and generations table |
|
184 | - */ |
|
185 | - public function getAnalysisResults($sosalist) { |
|
186 | - $placesDispGeneral = null; |
|
187 | - $placesDispGenerations = null; |
|
169 | + /** |
|
170 | + * Return the dispersion analysis tables. |
|
171 | + * Two arrays are returned : |
|
172 | + * - the General analysis, which returns the number of ancestors for each place found, plus 4 additional indicators : |
|
173 | + * - knownsum : Number of known places |
|
174 | + * - unknown : Number of unknown places |
|
175 | + * - max : Maximum count of ancestors within a place |
|
176 | + * - other : Other places (not in the top level area) |
|
177 | + * - the Generations analysis, which returns the number of ancestors for each place found for each generation, plus 3 additional indicators within each generation : |
|
178 | + * - sum : Number of known places |
|
179 | + * - unknown : Number of unknown places |
|
180 | + * - other : Other places (not in the top level area) |
|
181 | + * |
|
182 | + * @param array $sosalist List of all sosas |
|
183 | + * @return array Array of the general and generations table |
|
184 | + */ |
|
185 | + public function getAnalysisResults($sosalist) { |
|
186 | + $placesDispGeneral = null; |
|
187 | + $placesDispGenerations = null; |
|
188 | 188 | |
189 | - if($sosalist && count($sosalist) > 0) { |
|
190 | - $placesDispGeneral['knownsum'] = 0; |
|
191 | - $placesDispGeneral['unknown'] = 0; |
|
192 | - $placesDispGeneral['max'] = 0; |
|
193 | - $placesDispGeneral['places'] = array(); |
|
194 | - foreach($sosalist as $sosaid => $gens) { |
|
195 | - $sosa = Individual::getIntance($sosaid, $this->tree); |
|
196 | - $place =$sosa->getSignificantPlace(); |
|
197 | - $genstab = explode(',', $gens); |
|
198 | - $isUnknown=true; |
|
199 | - if($sosa->getDerivedRecord()->canShow() && !is_null($place)){ |
|
200 | - $levels = array_reverse(array_map('trim',explode(',', $place))); |
|
201 | - if(count($levels)>= $this->analysis_level){ |
|
202 | - $toplevelvalues = array(); |
|
203 | - if($this->hasMap() |
|
204 | - && $this->options->getMap()->isLoaded() |
|
205 | - && $toplevelvalue = $this->options->getMap()->getTopLevelName() |
|
206 | - ) { |
|
207 | - $toplevelvalues = array_map('trim',explode(',', strtolower($toplevelvalue))); |
|
208 | - } |
|
209 | - if(!$this->hasMap() |
|
210 | - || is_null($this->options->getMapLevel()) |
|
211 | - || ( $this->options->getMap()->isLoaded() && $this->options->getMap()->getTopLevelName() == '*') |
|
212 | - || ( |
|
213 | - $this->options->getMapLevel() <= $this->analysis_level |
|
214 | - && $this->options->getMapLevel() > 0 |
|
215 | - && count($levels) >= $this->options->getMapLevel() |
|
216 | - && in_array(strtolower($levels[$this->options->getMapLevel()-1]), $toplevelvalues) |
|
217 | - ) |
|
218 | - ) { |
|
219 | - $placest = implode(I18N::$list_separator, array_slice($levels, 0, $this->analysis_level)); |
|
220 | - if(isset($placesDispGeneral['places'][$placest])) { |
|
221 | - $placesDispGeneral['places'][$placest] += 1; |
|
222 | - } |
|
223 | - else { |
|
224 | - $placesDispGeneral['places'][$placest] = 1; |
|
225 | - } |
|
226 | - if($placesDispGeneral['places'][$placest]>$placesDispGeneral['max']) |
|
227 | - $placesDispGeneral['max'] = $placesDispGeneral['places'][$placest]; |
|
228 | - foreach($genstab as $gen) { |
|
229 | - if(isset($placesDispGenerations[$gen]['places'][$placest])) { |
|
230 | - $placesDispGenerations[$gen]['places'][$placest] += 1; |
|
231 | - } |
|
232 | - else { |
|
233 | - $placesDispGenerations[$gen]['places'][$placest] = 1; |
|
234 | - } |
|
235 | - if(isset($placesDispGenerations[$gen]['sum'])) { |
|
236 | - $placesDispGenerations[$gen]['sum'] += 1; |
|
237 | - } |
|
238 | - else { |
|
239 | - $placesDispGenerations[$gen]['sum'] = 1; |
|
240 | - } |
|
241 | - } |
|
242 | - } |
|
243 | - else{ |
|
244 | - if(isset($placesDispGeneral['other'])) { |
|
245 | - $placesDispGeneral['other'] += 1; |
|
246 | - } |
|
247 | - else { |
|
248 | - $placesDispGeneral['other'] = 1; |
|
249 | - } |
|
250 | - foreach($genstab as $gen) { |
|
251 | - if(isset($placesDispGenerations[$gen]['other'])) { |
|
252 | - $placesDispGenerations[$gen]['other'] += 1; |
|
253 | - } |
|
254 | - else { |
|
255 | - $placesDispGenerations[$gen]['other'] = 1; |
|
256 | - } |
|
257 | - } |
|
258 | - } |
|
259 | - $placesDispGeneral['knownsum'] += 1; |
|
260 | - $isUnknown = false; |
|
261 | - } |
|
262 | - } |
|
263 | - if($isUnknown){ |
|
264 | - $placesDispGeneral['unknown'] += 1; |
|
265 | - foreach($genstab as $gen) { |
|
266 | - if(isset($placesDispGenerations[$gen]['unknown'])) { |
|
267 | - $placesDispGenerations[$gen]['unknown'] += 1; |
|
268 | - } |
|
269 | - else { |
|
270 | - $placesDispGenerations[$gen]['unknown'] = 1; |
|
271 | - } |
|
272 | - } |
|
273 | - } |
|
274 | - } |
|
189 | + if($sosalist && count($sosalist) > 0) { |
|
190 | + $placesDispGeneral['knownsum'] = 0; |
|
191 | + $placesDispGeneral['unknown'] = 0; |
|
192 | + $placesDispGeneral['max'] = 0; |
|
193 | + $placesDispGeneral['places'] = array(); |
|
194 | + foreach($sosalist as $sosaid => $gens) { |
|
195 | + $sosa = Individual::getIntance($sosaid, $this->tree); |
|
196 | + $place =$sosa->getSignificantPlace(); |
|
197 | + $genstab = explode(',', $gens); |
|
198 | + $isUnknown=true; |
|
199 | + if($sosa->getDerivedRecord()->canShow() && !is_null($place)){ |
|
200 | + $levels = array_reverse(array_map('trim',explode(',', $place))); |
|
201 | + if(count($levels)>= $this->analysis_level){ |
|
202 | + $toplevelvalues = array(); |
|
203 | + if($this->hasMap() |
|
204 | + && $this->options->getMap()->isLoaded() |
|
205 | + && $toplevelvalue = $this->options->getMap()->getTopLevelName() |
|
206 | + ) { |
|
207 | + $toplevelvalues = array_map('trim',explode(',', strtolower($toplevelvalue))); |
|
208 | + } |
|
209 | + if(!$this->hasMap() |
|
210 | + || is_null($this->options->getMapLevel()) |
|
211 | + || ( $this->options->getMap()->isLoaded() && $this->options->getMap()->getTopLevelName() == '*') |
|
212 | + || ( |
|
213 | + $this->options->getMapLevel() <= $this->analysis_level |
|
214 | + && $this->options->getMapLevel() > 0 |
|
215 | + && count($levels) >= $this->options->getMapLevel() |
|
216 | + && in_array(strtolower($levels[$this->options->getMapLevel()-1]), $toplevelvalues) |
|
217 | + ) |
|
218 | + ) { |
|
219 | + $placest = implode(I18N::$list_separator, array_slice($levels, 0, $this->analysis_level)); |
|
220 | + if(isset($placesDispGeneral['places'][$placest])) { |
|
221 | + $placesDispGeneral['places'][$placest] += 1; |
|
222 | + } |
|
223 | + else { |
|
224 | + $placesDispGeneral['places'][$placest] = 1; |
|
225 | + } |
|
226 | + if($placesDispGeneral['places'][$placest]>$placesDispGeneral['max']) |
|
227 | + $placesDispGeneral['max'] = $placesDispGeneral['places'][$placest]; |
|
228 | + foreach($genstab as $gen) { |
|
229 | + if(isset($placesDispGenerations[$gen]['places'][$placest])) { |
|
230 | + $placesDispGenerations[$gen]['places'][$placest] += 1; |
|
231 | + } |
|
232 | + else { |
|
233 | + $placesDispGenerations[$gen]['places'][$placest] = 1; |
|
234 | + } |
|
235 | + if(isset($placesDispGenerations[$gen]['sum'])) { |
|
236 | + $placesDispGenerations[$gen]['sum'] += 1; |
|
237 | + } |
|
238 | + else { |
|
239 | + $placesDispGenerations[$gen]['sum'] = 1; |
|
240 | + } |
|
241 | + } |
|
242 | + } |
|
243 | + else{ |
|
244 | + if(isset($placesDispGeneral['other'])) { |
|
245 | + $placesDispGeneral['other'] += 1; |
|
246 | + } |
|
247 | + else { |
|
248 | + $placesDispGeneral['other'] = 1; |
|
249 | + } |
|
250 | + foreach($genstab as $gen) { |
|
251 | + if(isset($placesDispGenerations[$gen]['other'])) { |
|
252 | + $placesDispGenerations[$gen]['other'] += 1; |
|
253 | + } |
|
254 | + else { |
|
255 | + $placesDispGenerations[$gen]['other'] = 1; |
|
256 | + } |
|
257 | + } |
|
258 | + } |
|
259 | + $placesDispGeneral['knownsum'] += 1; |
|
260 | + $isUnknown = false; |
|
261 | + } |
|
262 | + } |
|
263 | + if($isUnknown){ |
|
264 | + $placesDispGeneral['unknown'] += 1; |
|
265 | + foreach($genstab as $gen) { |
|
266 | + if(isset($placesDispGenerations[$gen]['unknown'])) { |
|
267 | + $placesDispGenerations[$gen]['unknown'] += 1; |
|
268 | + } |
|
269 | + else { |
|
270 | + $placesDispGenerations[$gen]['unknown'] = 1; |
|
271 | + } |
|
272 | + } |
|
273 | + } |
|
274 | + } |
|
275 | 275 | |
276 | - } |
|
276 | + } |
|
277 | 277 | |
278 | - return array($placesDispGeneral, $placesDispGenerations); |
|
279 | - } |
|
278 | + return array($placesDispGeneral, $placesDispGenerations); |
|
279 | + } |
|
280 | 280 | |
281 | 281 | |
282 | 282 | } |
@@ -163,7 +163,7 @@ discard block |
||
163 | 163 | * @return string |
164 | 164 | */ |
165 | 165 | public function getHtmlUrl() { |
166 | - return 'module.php?mod='. Constants::MODULE_MAJ_GEODISP_NAME . '&mod_action=GeoAnalysis&ga_id=' . $this->getId() . '&ged=' . $this->tree->getNameUrl(); |
|
166 | + return 'module.php?mod='.Constants::MODULE_MAJ_GEODISP_NAME.'&mod_action=GeoAnalysis&ga_id='.$this->getId().'&ged='.$this->tree->getNameUrl(); |
|
167 | 167 | } |
168 | 168 | |
169 | 169 | /** |
@@ -186,53 +186,53 @@ discard block |
||
186 | 186 | $placesDispGeneral = null; |
187 | 187 | $placesDispGenerations = null; |
188 | 188 | |
189 | - if($sosalist && count($sosalist) > 0) { |
|
189 | + if ($sosalist && count($sosalist) > 0) { |
|
190 | 190 | $placesDispGeneral['knownsum'] = 0; |
191 | 191 | $placesDispGeneral['unknown'] = 0; |
192 | 192 | $placesDispGeneral['max'] = 0; |
193 | 193 | $placesDispGeneral['places'] = array(); |
194 | - foreach($sosalist as $sosaid => $gens) { |
|
194 | + foreach ($sosalist as $sosaid => $gens) { |
|
195 | 195 | $sosa = Individual::getIntance($sosaid, $this->tree); |
196 | - $place =$sosa->getSignificantPlace(); |
|
196 | + $place = $sosa->getSignificantPlace(); |
|
197 | 197 | $genstab = explode(',', $gens); |
198 | - $isUnknown=true; |
|
199 | - if($sosa->getDerivedRecord()->canShow() && !is_null($place)){ |
|
200 | - $levels = array_reverse(array_map('trim',explode(',', $place))); |
|
201 | - if(count($levels)>= $this->analysis_level){ |
|
198 | + $isUnknown = true; |
|
199 | + if ($sosa->getDerivedRecord()->canShow() && !is_null($place)) { |
|
200 | + $levels = array_reverse(array_map('trim', explode(',', $place))); |
|
201 | + if (count($levels) >= $this->analysis_level) { |
|
202 | 202 | $toplevelvalues = array(); |
203 | - if($this->hasMap() |
|
203 | + if ($this->hasMap() |
|
204 | 204 | && $this->options->getMap()->isLoaded() |
205 | 205 | && $toplevelvalue = $this->options->getMap()->getTopLevelName() |
206 | 206 | ) { |
207 | - $toplevelvalues = array_map('trim',explode(',', strtolower($toplevelvalue))); |
|
207 | + $toplevelvalues = array_map('trim', explode(',', strtolower($toplevelvalue))); |
|
208 | 208 | } |
209 | - if(!$this->hasMap() |
|
209 | + if (!$this->hasMap() |
|
210 | 210 | || is_null($this->options->getMapLevel()) |
211 | - || ( $this->options->getMap()->isLoaded() && $this->options->getMap()->getTopLevelName() == '*') |
|
211 | + || ($this->options->getMap()->isLoaded() && $this->options->getMap()->getTopLevelName() == '*') |
|
212 | 212 | || ( |
213 | 213 | $this->options->getMapLevel() <= $this->analysis_level |
214 | 214 | && $this->options->getMapLevel() > 0 |
215 | 215 | && count($levels) >= $this->options->getMapLevel() |
216 | - && in_array(strtolower($levels[$this->options->getMapLevel()-1]), $toplevelvalues) |
|
216 | + && in_array(strtolower($levels[$this->options->getMapLevel() - 1]), $toplevelvalues) |
|
217 | 217 | ) |
218 | 218 | ) { |
219 | 219 | $placest = implode(I18N::$list_separator, array_slice($levels, 0, $this->analysis_level)); |
220 | - if(isset($placesDispGeneral['places'][$placest])) { |
|
220 | + if (isset($placesDispGeneral['places'][$placest])) { |
|
221 | 221 | $placesDispGeneral['places'][$placest] += 1; |
222 | 222 | } |
223 | 223 | else { |
224 | 224 | $placesDispGeneral['places'][$placest] = 1; |
225 | 225 | } |
226 | - if($placesDispGeneral['places'][$placest]>$placesDispGeneral['max']) |
|
226 | + if ($placesDispGeneral['places'][$placest] > $placesDispGeneral['max']) |
|
227 | 227 | $placesDispGeneral['max'] = $placesDispGeneral['places'][$placest]; |
228 | - foreach($genstab as $gen) { |
|
229 | - if(isset($placesDispGenerations[$gen]['places'][$placest])) { |
|
228 | + foreach ($genstab as $gen) { |
|
229 | + if (isset($placesDispGenerations[$gen]['places'][$placest])) { |
|
230 | 230 | $placesDispGenerations[$gen]['places'][$placest] += 1; |
231 | 231 | } |
232 | 232 | else { |
233 | 233 | $placesDispGenerations[$gen]['places'][$placest] = 1; |
234 | 234 | } |
235 | - if(isset($placesDispGenerations[$gen]['sum'])) { |
|
235 | + if (isset($placesDispGenerations[$gen]['sum'])) { |
|
236 | 236 | $placesDispGenerations[$gen]['sum'] += 1; |
237 | 237 | } |
238 | 238 | else { |
@@ -240,15 +240,15 @@ discard block |
||
240 | 240 | } |
241 | 241 | } |
242 | 242 | } |
243 | - else{ |
|
244 | - if(isset($placesDispGeneral['other'])) { |
|
243 | + else { |
|
244 | + if (isset($placesDispGeneral['other'])) { |
|
245 | 245 | $placesDispGeneral['other'] += 1; |
246 | 246 | } |
247 | 247 | else { |
248 | 248 | $placesDispGeneral['other'] = 1; |
249 | 249 | } |
250 | - foreach($genstab as $gen) { |
|
251 | - if(isset($placesDispGenerations[$gen]['other'])) { |
|
250 | + foreach ($genstab as $gen) { |
|
251 | + if (isset($placesDispGenerations[$gen]['other'])) { |
|
252 | 252 | $placesDispGenerations[$gen]['other'] += 1; |
253 | 253 | } |
254 | 254 | else { |
@@ -260,10 +260,10 @@ discard block |
||
260 | 260 | $isUnknown = false; |
261 | 261 | } |
262 | 262 | } |
263 | - if($isUnknown){ |
|
263 | + if ($isUnknown) { |
|
264 | 264 | $placesDispGeneral['unknown'] += 1; |
265 | - foreach($genstab as $gen) { |
|
266 | - if(isset($placesDispGenerations[$gen]['unknown'])) { |
|
265 | + foreach ($genstab as $gen) { |
|
266 | + if (isset($placesDispGenerations[$gen]['unknown'])) { |
|
267 | 267 | $placesDispGenerations[$gen]['unknown'] += 1; |
268 | 268 | } |
269 | 269 | else { |
@@ -24,18 +24,18 @@ |
||
24 | 24 | */ |
25 | 25 | public function upgrade() { |
26 | 26 | Database::exec( |
27 | - 'CREATE TABLE IF NOT EXISTS `##maj_geodispersion` ('. |
|
28 | - ' majgd_id INTEGER AUTO_INCREMENT NOT NULL,'. |
|
29 | - ' majgd_file INTEGER NOT NULL,'. |
|
30 | - ' majgd_descr VARCHAR(70) NOT NULL,'. |
|
31 | - ' majgd_sublevel TINYINT NOT NULL,'. |
|
32 | - ' majgd_map VARCHAR(70) NULL,'. |
|
33 | - ' majgd_toplevel TINYINT NULL,'. |
|
34 | - ' majgd_status ENUM(\'enabled\', \'disabled\') NOT NULL DEFAULT \'enabled\','. |
|
35 | - ' majgd_useflagsgen ENUM(\'yes\', \'no\') NOT NULL DEFAULT \'no\','. |
|
36 | - ' majgd_detailsgen TINYINT NOT NULL DEFAULT 0,'. |
|
37 | - ' PRIMARY KEY (majgd_id)'. |
|
38 | - ') COLLATE utf8_unicode_ci ENGINE=InnoDB' |
|
27 | + 'CREATE TABLE IF NOT EXISTS `##maj_geodispersion` ('. |
|
28 | + ' majgd_id INTEGER AUTO_INCREMENT NOT NULL,'. |
|
29 | + ' majgd_file INTEGER NOT NULL,'. |
|
30 | + ' majgd_descr VARCHAR(70) NOT NULL,'. |
|
31 | + ' majgd_sublevel TINYINT NOT NULL,'. |
|
32 | + ' majgd_map VARCHAR(70) NULL,'. |
|
33 | + ' majgd_toplevel TINYINT NULL,'. |
|
34 | + ' majgd_status ENUM(\'enabled\', \'disabled\') NOT NULL DEFAULT \'enabled\','. |
|
35 | + ' majgd_useflagsgen ENUM(\'yes\', \'no\') NOT NULL DEFAULT \'no\','. |
|
36 | + ' majgd_detailsgen TINYINT NOT NULL DEFAULT 0,'. |
|
37 | + ' PRIMARY KEY (majgd_id)'. |
|
38 | + ') COLLATE utf8_unicode_ci ENGINE=InnoDB' |
|
39 | 39 | ); |
40 | 40 | } |
41 | 41 | } |
@@ -54,7 +54,10 @@ |
||
54 | 54 | <?php echo I18N::translate('Description'); ?> |
55 | 55 | </label> |
56 | 56 | <div class="col-sm-9"> |
57 | - <input class="form-control" type="text" id="description" name="description" required maxlength="70" <?php if(!$is_new) echo 'value="' . Filter::escapeHtml($ga->getTitle()) .'"'; ?> dir="auto"> |
|
57 | + <input class="form-control" type="text" id="description" name="description" required maxlength="70" <?php if(!$is_new) { |
|
58 | + echo 'value="' . Filter::escapeHtml($ga->getTitle()) .'"'; |
|
59 | +} |
|
60 | +?> dir="auto"> |
|
58 | 61 | <p class="small text-muted"> |
59 | 62 | <?php echo I18N::translate('Description to be given to the geographical dispersion analysis. It will be used as the page title for it.'); ?> |
60 | 63 | </p> |
@@ -25,14 +25,14 @@ discard block |
||
25 | 25 | * {@inhericDoc} |
26 | 26 | * @see \MyArtJaub\Webtrees\Mvc\View\AbstractView::renderContent() |
27 | 27 | */ |
28 | - protected function renderContent() { |
|
28 | + protected function renderContent() { |
|
29 | 29 | |
30 | - /** @var GeoAnalysis $ga */ |
|
31 | - $ga = $this->data->get('geo_analysis'); |
|
32 | - $is_new = is_null($ga); |
|
30 | + /** @var GeoAnalysis $ga */ |
|
31 | + $ga = $this->data->get('geo_analysis'); |
|
32 | + $is_new = is_null($ga); |
|
33 | 33 | |
34 | - $places_hierarchy = $this->data->get('places_hierarchy'); |
|
35 | - ?> |
|
34 | + $places_hierarchy = $this->data->get('places_hierarchy'); |
|
35 | + ?> |
|
36 | 36 | <ol class="breadcrumb small"> |
37 | 37 | <li><a href="admin.php"><?php echo I18N::translate('Control panel'); ?></a></li> |
38 | 38 | <li><a href="admin_modules.php"><?php echo I18N::translate('Module administration'); ?></a></li> |
@@ -159,7 +159,7 @@ discard block |
||
159 | 159 | </form> |
160 | 160 | |
161 | 161 | <?php } |
162 | - } |
|
162 | + } |
|
163 | 163 | |
164 | 164 | } |
165 | 165 | |
166 | 166 | \ No newline at end of file |
@@ -42,13 +42,13 @@ discard block |
||
42 | 42 | |
43 | 43 | <h1><?php echo $this->data->get('title'); ?></h1> |
44 | 44 | |
45 | - <?php if($places_hierarchy['type'] == 'none') { ?> |
|
45 | + <?php if ($places_hierarchy['type'] == 'none') { ?> |
|
46 | 46 | <div class="warning"><?php echo I18N::translate('No place structure could be determined. Please make sure that at least a place exists.'); ?></div> |
47 | 47 | <?php } else { ?> |
48 | 48 | |
49 | 49 | <form class="form-horizontal" name="newform" method="post" role="form" action="<?php echo $this->data->get('save_url'); ?>" autocomplete="off"> |
50 | 50 | <?php echo Filter::getCsrf(); ?> |
51 | - <?php if(!$is_new) { ?> |
|
51 | + <?php if (!$is_new) { ?> |
|
52 | 52 | <input type="hidden" name="ga_id" value="<?php echo $ga->getId(); ?>"> |
53 | 53 | <?php } ?> |
54 | 54 | |
@@ -58,7 +58,7 @@ discard block |
||
58 | 58 | <?php echo I18N::translate('Description'); ?> |
59 | 59 | </label> |
60 | 60 | <div class="col-sm-9"> |
61 | - <input class="form-control" type="text" id="description" name="description" required maxlength="70" <?php if(!$is_new) echo 'value="' . Filter::escapeHtml($ga->getTitle()) .'"'; ?> dir="auto"> |
|
61 | + <input class="form-control" type="text" id="description" name="description" required maxlength="70" <?php if (!$is_new) echo 'value="'.Filter::escapeHtml($ga->getTitle()).'"'; ?> dir="auto"> |
|
62 | 62 | <p class="small text-muted"> |
63 | 63 | <?php echo I18N::translate('Description to be given to the geographical dispersion analysis. It will be used as the page title for it.'); ?> |
64 | 64 | </p> |
@@ -101,7 +101,7 @@ discard block |
||
101 | 101 | <?php echo I18N::translate('Map'); ?> |
102 | 102 | </label> |
103 | 103 | <div class="col-sm-9"> |
104 | - <?php echo FunctionsEdit::selectEditControl('map_file', $this->data->get('map_list') , null, ($is_new || ! $ga->hasMap()) ? '' : base64_encode($ga->getOptions()->getMap()->getFileName()), 'class="form-control"'); ?> |
|
104 | + <?php echo FunctionsEdit::selectEditControl('map_file', $this->data->get('map_list'), null, ($is_new || !$ga->hasMap()) ? '' : base64_encode($ga->getOptions()->getMap()->getFileName()), 'class="form-control"'); ?> |
|
105 | 105 | <p class="small text-muted"> |
106 | 106 | <?php echo I18N::translate('Map outline to be used for the result display.'); ?> |
107 | 107 | </p> |
@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | <?php echo I18N::translate('Map parent level'); ?> |
115 | 115 | </label> |
116 | 116 | <div class="col-sm-9"> |
117 | - <?php echo FunctionsEdit::selectEditControl('map_top_level', $places_hierarchy['hierarchy'], null, $is_new || ! $ga->hasMap() ? '' : $ga->getOptions()->getMapLevel() - 1, 'class="form-control"'); ?> |
|
117 | + <?php echo FunctionsEdit::selectEditControl('map_top_level', $places_hierarchy['hierarchy'], null, $is_new || !$ga->hasMap() ? '' : $ga->getOptions()->getMapLevel() - 1, 'class="form-control"'); ?> |
|
118 | 118 | <p class="small text-muted"> |
119 | 119 | <?php echo I18N::translate('Subdivision level of the parent subdivision(s) represented by the map.'); ?><br /> |
120 | 120 | <?php echo I18N::translate('For instance, if the map is intended to represent a country by county analysis, then the map parent level would be “Country”, and the analysis level would be “County”.'); ?> |
@@ -24,16 +24,16 @@ discard block |
||
24 | 24 | * {@inhericDoc} |
25 | 25 | * @see \MyArtJaub\Webtrees\Mvc\View\AbstractView::renderContent() |
26 | 26 | */ |
27 | - protected function renderContent() { |
|
28 | - ?> |
|
27 | + protected function renderContent() { |
|
28 | + ?> |
|
29 | 29 | <div id="maj-geodisp-list-page" class="center"> |
30 | 30 | <h2><?php echo $this->data->get('title'); ?></h2> |
31 | 31 | |
32 | 32 | <?php |
33 | 33 | if($this->data->get('has_analysis', false)) { |
34 | - /** @var GeoAnalysis $ga */ |
|
35 | - $ga = $this->data->get('geoanalysis'); |
|
36 | - ?> |
|
34 | + /** @var GeoAnalysis $ga */ |
|
35 | + $ga = $this->data->get('geoanalysis'); |
|
36 | + ?> |
|
37 | 37 | |
38 | 38 | <div id="geodispersion-panel"> |
39 | 39 | <h3><?php echo $ga->getTitle() ?></h3> |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | </div> |
67 | 67 | |
68 | 68 | <?php |
69 | - } |
|
69 | + } |
|
70 | 70 | |
71 | 71 | } |
72 | 72 | |
73 | 73 | \ No newline at end of file |
@@ -30,7 +30,7 @@ |
||
30 | 30 | <h2><?php echo $this->data->get('title'); ?></h2> |
31 | 31 | |
32 | 32 | <?php |
33 | - if($this->data->get('has_analysis', false)) { |
|
33 | + if ($this->data->get('has_analysis', false)) { |
|
34 | 34 | /** @var GeoAnalysis $ga */ |
35 | 35 | $ga = $this->data->get('geoanalysis'); |
36 | 36 | ?> |
@@ -38,39 +38,38 @@ discard block |
||
38 | 38 | '<div id="geodispersion_gen"> |
39 | 39 | <table id="geodispersion_gentable" class="center">'; |
40 | 40 | |
41 | - foreach($results_by_gen as $gen => $genData){ |
|
41 | + foreach ($results_by_gen as $gen => $genData) { |
|
42 | 42 | $html .= |
43 | 43 | '<tr> |
44 | 44 | <td class="descriptionbox">' . |
45 | 45 | I18N::translate("Generation %s", I18N::number($gen)). |
46 | 46 | ($display_all_places ? '<br />' : ' '). |
47 | - I18N::translate('(%s)', I18N::percentage(Functions::safeDivision($genData['sum'] + $genData['other'], $genData['sum'] + $genData['other'] + $genData['unknown']),1)) . |
|
47 | + I18N::translate('(%s)', I18N::percentage(Functions::safeDivision($genData['sum'] + $genData['other'], $genData['sum'] + $genData['other'] + $genData['unknown']), 1)). |
|
48 | 48 | '</td> |
49 | 49 | <td class="optionbox left">'. |
50 | 50 | ($display_all_places ? |
51 | - $this->htmlGenerationAllPlacesRow($genData, $analysis_level) : |
|
52 | - $this->htmlGenerationTopPlacesRow($genData, $analysis_level) |
|
53 | - ) . |
|
51 | + $this->htmlGenerationAllPlacesRow($genData, $analysis_level) : $this->htmlGenerationTopPlacesRow($genData, $analysis_level) |
|
52 | + ). |
|
54 | 53 | '</ditdv> |
55 | 54 | </tr>'; |
56 | 55 | } |
57 | 56 | |
58 | - $html.= |
|
57 | + $html .= |
|
59 | 58 | '</table> |
60 | 59 | <div class="left"> |
61 | - <strong>' . I18N::translate('Interpretation help:') . '</strong> |
|
60 | + <strong>' . I18N::translate('Interpretation help:').'</strong> |
|
62 | 61 | <br />'. |
63 | - I18N::translate('<strong>Generation X (yy %%)</strong>: The percentage indicates the number of found places compared to the total number of ancestors in this generation.') . |
|
62 | + I18N::translate('<strong>Generation X (yy %%)</strong>: The percentage indicates the number of found places compared to the total number of ancestors in this generation.'). |
|
64 | 63 | '<br />'; |
65 | - if(!is_null($max_details_gen) && $max_details_gen == 0){ |
|
64 | + if (!is_null($max_details_gen) && $max_details_gen == 0) { |
|
66 | 65 | $html .= I18N::translate('<strong><em>Place</em> or <em>Flag</em> aa (bb %%)</strong>: The first number indicates the total number of ancestors born in this place, the percentage relates this count to the total number of found places. No percentage means it is less than 10%%.').'<br />'; |
67 | 66 | $html .= I18N::translate('If any, the darker area indicates the number of unknown places within the generation or places outside the analysed area, and its percentage compared to the number of ancestors. No percentage means it is less than 10%%.'); |
68 | 67 | } |
69 | - else{ |
|
68 | + else { |
|
70 | 69 | $html .= I18N::translate('<strong><em>Place</em> [aa - bb %%]</strong>: The first number indicates the total number of ancestors born in this place, the percentage compares this count to the total number of found places.').'<br />'; |
71 | 70 | $html .= I18N::translate('Only the %d more frequent places for each generation are displayed.', $max_details_gen); |
72 | 71 | } |
73 | - $html.= |
|
72 | + $html .= |
|
74 | 73 | '</div> |
75 | 74 | </div>'; |
76 | 75 | |
@@ -92,25 +91,25 @@ discard block |
||
92 | 91 | |
93 | 92 | $sum_gen = $data['sum']; |
94 | 93 | $unknownother = $data['unknown'] + $data['other']; |
95 | - foreach($data['places'] as $placename=> $dataplace){ |
|
96 | - $levels = array_map('trim',explode(',', $placename)); |
|
94 | + foreach ($data['places'] as $placename=> $dataplace) { |
|
95 | + $levels = array_map('trim', explode(',', $placename)); |
|
97 | 96 | $content = ''; |
98 | - if(isset($dataplace['flag'])){ |
|
99 | - $content .= '<td class="geodispersion_flag">'. FunctionsPrint::htmlPlaceIcon($dataplace['place'], $dataplace['flag']) .'</td><td>'; |
|
97 | + if (isset($dataplace['flag'])) { |
|
98 | + $content .= '<td class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($dataplace['place'], $dataplace['flag']).'</td><td>'; |
|
100 | 99 | } |
101 | - else{ |
|
102 | - $content .= '<td><span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span><br/>'; |
|
100 | + else { |
|
101 | + $content .= '<td><span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level - 1].'</span><br/>'; |
|
103 | 102 | } |
104 | 103 | $count = $dataplace['count']; |
105 | 104 | $content .= I18N::number($count); |
106 | 105 | $perc = Functions::safeDivision($count, $sum_gen + $unknownother); |
107 | - $perc2= Functions::safeDivision($count, $sum_gen); |
|
108 | - if($perc2>=0.1) |
|
109 | - $content.= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
106 | + $perc2 = Functions::safeDivision($count, $sum_gen); |
|
107 | + if ($perc2 >= 0.1) |
|
108 | + $content .= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
110 | 109 | $content .= '</td>'; |
111 | 110 | |
112 | 111 | $html .= ' |
113 | - <td class="geodispersion_rowitem" width="'.max(round(100*$perc, 0),1).'%"> |
|
112 | + <td class="geodispersion_rowitem" width="'.max(round(100 * $perc, 0), 1).'%"> |
|
114 | 113 | <table> |
115 | 114 | <tr> |
116 | 115 | <td> |
@@ -123,11 +122,11 @@ discard block |
||
123 | 122 | </td>'; |
124 | 123 | } |
125 | 124 | |
126 | - if($unknownother>0){ |
|
127 | - $perc= Functions::safeDivision($unknownother, $sum_gen + $unknownother); |
|
128 | - $html .='<td class="geodispersion_unknownitem left" >'.I18N::number($unknownother); |
|
129 | - if($perc>=0.1) $html.= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
130 | - $html .='</td>'; |
|
125 | + if ($unknownother > 0) { |
|
126 | + $perc = Functions::safeDivision($unknownother, $sum_gen + $unknownother); |
|
127 | + $html .= '<td class="geodispersion_unknownitem left" >'.I18N::number($unknownother); |
|
128 | + if ($perc >= 0.1) $html .= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
129 | + $html .= '</td>'; |
|
131 | 130 | } |
132 | 131 | |
133 | 132 | $html .= |
@@ -148,12 +147,12 @@ discard block |
||
148 | 147 | $sum_gen = $data['sum']; |
149 | 148 | $other = $data['other']; |
150 | 149 | |
151 | - foreach($data['places'] as $placename => $count) { |
|
152 | - if($placename != 'other'){ |
|
153 | - $levels = array_map('trim',explode(',', $placename)); |
|
154 | - $placename = '<span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span>'; |
|
150 | + foreach ($data['places'] as $placename => $count) { |
|
151 | + if ($placename != 'other') { |
|
152 | + $levels = array_map('trim', explode(',', $placename)); |
|
153 | + $placename = '<span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level - 1].'</span>'; |
|
155 | 154 | } |
156 | - else{ |
|
155 | + else { |
|
157 | 156 | $placename = I18N::translate('Other places'); |
158 | 157 | } |
159 | 158 | $tmp_places[] = I18N::translate('<strong>%s</strong> [%d - %s]', $placename, $count, I18N::percentage(Functions::safeDivision($count, $sum_gen + $other), 1)); |
@@ -65,8 +65,7 @@ discard block |
||
65 | 65 | if(!is_null($max_details_gen) && $max_details_gen == 0){ |
66 | 66 | $html .= I18N::translate('<strong><em>Place</em> or <em>Flag</em> aa (bb %%)</strong>: The first number indicates the total number of ancestors born in this place, the percentage relates this count to the total number of found places. No percentage means it is less than 10%%.').'<br />'; |
67 | 67 | $html .= I18N::translate('If any, the darker area indicates the number of unknown places within the generation or places outside the analysed area, and its percentage compared to the number of ancestors. No percentage means it is less than 10%%.'); |
68 | - } |
|
69 | - else{ |
|
68 | + } else{ |
|
70 | 69 | $html .= I18N::translate('<strong><em>Place</em> [aa - bb %%]</strong>: The first number indicates the total number of ancestors born in this place, the percentage compares this count to the total number of found places.').'<br />'; |
71 | 70 | $html .= I18N::translate('Only the %d more frequent places for each generation are displayed.', $max_details_gen); |
72 | 71 | } |
@@ -97,16 +96,16 @@ discard block |
||
97 | 96 | $content = ''; |
98 | 97 | if(isset($dataplace['flag'])){ |
99 | 98 | $content .= '<td class="geodispersion_flag">'. FunctionsPrint::htmlPlaceIcon($dataplace['place'], $dataplace['flag']) .'</td><td>'; |
100 | - } |
|
101 | - else{ |
|
99 | + } else{ |
|
102 | 100 | $content .= '<td><span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span><br/>'; |
103 | 101 | } |
104 | 102 | $count = $dataplace['count']; |
105 | 103 | $content .= I18N::number($count); |
106 | 104 | $perc = Functions::safeDivision($count, $sum_gen + $unknownother); |
107 | 105 | $perc2= Functions::safeDivision($count, $sum_gen); |
108 | - if($perc2>=0.1) |
|
109 | - $content.= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
106 | + if($perc2>=0.1) { |
|
107 | + $content.= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
108 | + } |
|
110 | 109 | $content .= '</td>'; |
111 | 110 | |
112 | 111 | $html .= ' |
@@ -126,7 +125,9 @@ discard block |
||
126 | 125 | if($unknownother>0){ |
127 | 126 | $perc= Functions::safeDivision($unknownother, $sum_gen + $unknownother); |
128 | 127 | $html .='<td class="geodispersion_unknownitem left" >'.I18N::number($unknownother); |
129 | - if($perc>=0.1) $html.= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
128 | + if($perc>=0.1) { |
|
129 | + $html.= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
130 | + } |
|
130 | 131 | $html .='</td>'; |
131 | 132 | } |
132 | 133 | |
@@ -152,8 +153,7 @@ discard block |
||
152 | 153 | if($placename != 'other'){ |
153 | 154 | $levels = array_map('trim',explode(',', $placename)); |
154 | 155 | $placename = '<span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span>'; |
155 | - } |
|
156 | - else{ |
|
156 | + } else{ |
|
157 | 157 | $placename = I18N::translate('Other places'); |
158 | 158 | } |
159 | 159 | $tmp_places[] = I18N::translate('<strong>%s</strong> [%d - %s]', $placename, $count, I18N::percentage(Functions::safeDivision($count, $sum_gen + $other), 1)); |
@@ -24,89 +24,89 @@ discard block |
||
24 | 24 | * {@inhericDoc} |
25 | 25 | * @see \MyArtJaub\Webtrees\Mvc\View\AbstractView::renderContent() |
26 | 26 | */ |
27 | - protected function renderContent() { |
|
27 | + protected function renderContent() { |
|
28 | 28 | |
29 | - $max_details_gen = $this->data->get('max_details_gen'); |
|
30 | - $analysis_level = $this->data->get('analysis_level'); |
|
31 | - $results_by_gen = $this->data->get('results_by_generations'); |
|
32 | - $display_all_places = $this->data->get('display_all_places', true); |
|
29 | + $max_details_gen = $this->data->get('max_details_gen'); |
|
30 | + $analysis_level = $this->data->get('analysis_level'); |
|
31 | + $results_by_gen = $this->data->get('results_by_generations'); |
|
32 | + $display_all_places = $this->data->get('display_all_places', true); |
|
33 | 33 | |
34 | - $html = |
|
35 | - '<div id="geodispersion_gen"> |
|
34 | + $html = |
|
35 | + '<div id="geodispersion_gen"> |
|
36 | 36 | <table id="geodispersion_gentable" class="center">'; |
37 | 37 | |
38 | - foreach($results_by_gen as $gen => $genData){ |
|
39 | - $html .= |
|
40 | - '<tr> |
|
38 | + foreach($results_by_gen as $gen => $genData){ |
|
39 | + $html .= |
|
40 | + '<tr> |
|
41 | 41 | <td class="descriptionbox">' . |
42 | - I18N::translate("Generation %s", I18N::number($gen)). |
|
43 | - ($display_all_places ? '<br />' : ' '). |
|
44 | - I18N::translate('(%s)', I18N::percentage(Functions::safeDivision($genData['sum'] + $genData['other'], $genData['sum'] + $genData['other'] + $genData['unknown']),1)) . |
|
45 | - '</td> |
|
42 | + I18N::translate("Generation %s", I18N::number($gen)). |
|
43 | + ($display_all_places ? '<br />' : ' '). |
|
44 | + I18N::translate('(%s)', I18N::percentage(Functions::safeDivision($genData['sum'] + $genData['other'], $genData['sum'] + $genData['other'] + $genData['unknown']),1)) . |
|
45 | + '</td> |
|
46 | 46 | <td class="optionbox left">'. |
47 | - ($display_all_places ? |
|
48 | - $this->htmlGenerationAllPlacesRow($genData, $analysis_level) : |
|
49 | - $this->htmlGenerationTopPlacesRow($genData, $analysis_level) |
|
50 | - ) . |
|
51 | - '</ditdv> |
|
47 | + ($display_all_places ? |
|
48 | + $this->htmlGenerationAllPlacesRow($genData, $analysis_level) : |
|
49 | + $this->htmlGenerationTopPlacesRow($genData, $analysis_level) |
|
50 | + ) . |
|
51 | + '</ditdv> |
|
52 | 52 | </tr>'; |
53 | - } |
|
53 | + } |
|
54 | 54 | |
55 | - $html.= |
|
56 | - '</table> |
|
55 | + $html.= |
|
56 | + '</table> |
|
57 | 57 | <div class="left"> |
58 | 58 | <strong>' . I18N::translate('Interpretation help:') . '</strong> |
59 | 59 | <br />'. |
60 | - I18N::translate('<strong>Generation X (yy %%)</strong>: The percentage indicates the number of found places compared to the total number of ancestors in this generation.') . |
|
61 | - '<br />'; |
|
62 | - if(!is_null($max_details_gen) && $max_details_gen == 0){ |
|
63 | - $html .= I18N::translate('<strong><em>Place</em> or <em>Flag</em> aa (bb %%)</strong>: The first number indicates the total number of ancestors born in this place, the percentage relates this count to the total number of found places. No percentage means it is less than 10%%.').'<br />'; |
|
64 | - $html .= I18N::translate('If any, the darker area indicates the number of unknown places within the generation or places outside the analysed area, and its percentage compared to the number of ancestors. No percentage means it is less than 10%%.'); |
|
65 | - } |
|
66 | - else{ |
|
67 | - $html .= I18N::translate('<strong><em>Place</em> [aa - bb %%]</strong>: The first number indicates the total number of ancestors born in this place, the percentage compares this count to the total number of found places.').'<br />'; |
|
68 | - $html .= I18N::translate('Only the %d more frequent places for each generation are displayed.', $max_details_gen); |
|
69 | - } |
|
70 | - $html.= |
|
71 | - '</div> |
|
60 | + I18N::translate('<strong>Generation X (yy %%)</strong>: The percentage indicates the number of found places compared to the total number of ancestors in this generation.') . |
|
61 | + '<br />'; |
|
62 | + if(!is_null($max_details_gen) && $max_details_gen == 0){ |
|
63 | + $html .= I18N::translate('<strong><em>Place</em> or <em>Flag</em> aa (bb %%)</strong>: The first number indicates the total number of ancestors born in this place, the percentage relates this count to the total number of found places. No percentage means it is less than 10%%.').'<br />'; |
|
64 | + $html .= I18N::translate('If any, the darker area indicates the number of unknown places within the generation or places outside the analysed area, and its percentage compared to the number of ancestors. No percentage means it is less than 10%%.'); |
|
65 | + } |
|
66 | + else{ |
|
67 | + $html .= I18N::translate('<strong><em>Place</em> [aa - bb %%]</strong>: The first number indicates the total number of ancestors born in this place, the percentage compares this count to the total number of found places.').'<br />'; |
|
68 | + $html .= I18N::translate('Only the %d more frequent places for each generation are displayed.', $max_details_gen); |
|
69 | + } |
|
70 | + $html.= |
|
71 | + '</div> |
|
72 | 72 | </div>'; |
73 | 73 | |
74 | - return $html; |
|
75 | - } |
|
74 | + return $html; |
|
75 | + } |
|
76 | 76 | |
77 | 77 | |
78 | - /** |
|
79 | - * Return the HTML code to display a row with all places found in a generation. |
|
80 | - * |
|
81 | - * @param array $data Data array |
|
82 | - * @param int $analysis_level Level of subdivision of analysis |
|
83 | - * @return string HTML code for all places row |
|
84 | - */ |
|
85 | - protected function htmlGenerationAllPlacesRow($data, $analysis_level) { |
|
86 | - $html = |
|
87 | - '<table class="geodispersion_bigrow"> |
|
78 | + /** |
|
79 | + * Return the HTML code to display a row with all places found in a generation. |
|
80 | + * |
|
81 | + * @param array $data Data array |
|
82 | + * @param int $analysis_level Level of subdivision of analysis |
|
83 | + * @return string HTML code for all places row |
|
84 | + */ |
|
85 | + protected function htmlGenerationAllPlacesRow($data, $analysis_level) { |
|
86 | + $html = |
|
87 | + '<table class="geodispersion_bigrow"> |
|
88 | 88 | <tr>'; |
89 | 89 | |
90 | - $sum_gen = $data['sum']; |
|
91 | - $unknownother = $data['unknown'] + $data['other']; |
|
92 | - foreach($data['places'] as $placename=> $dataplace){ |
|
93 | - $levels = array_map('trim',explode(',', $placename)); |
|
94 | - $content = ''; |
|
95 | - if(isset($dataplace['flag'])){ |
|
96 | - $content .= '<td class="geodispersion_flag">'. FunctionsPrint::htmlPlaceIcon($dataplace['place'], $dataplace['flag']) .'</td><td>'; |
|
97 | - } |
|
98 | - else{ |
|
99 | - $content .= '<td><span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span><br/>'; |
|
100 | - } |
|
101 | - $count = $dataplace['count']; |
|
102 | - $content .= I18N::number($count); |
|
103 | - $perc = Functions::safeDivision($count, $sum_gen + $unknownother); |
|
104 | - $perc2= Functions::safeDivision($count, $sum_gen); |
|
105 | - if($perc2>=0.1) |
|
106 | - $content.= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
107 | - $content .= '</td>'; |
|
90 | + $sum_gen = $data['sum']; |
|
91 | + $unknownother = $data['unknown'] + $data['other']; |
|
92 | + foreach($data['places'] as $placename=> $dataplace){ |
|
93 | + $levels = array_map('trim',explode(',', $placename)); |
|
94 | + $content = ''; |
|
95 | + if(isset($dataplace['flag'])){ |
|
96 | + $content .= '<td class="geodispersion_flag">'. FunctionsPrint::htmlPlaceIcon($dataplace['place'], $dataplace['flag']) .'</td><td>'; |
|
97 | + } |
|
98 | + else{ |
|
99 | + $content .= '<td><span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span><br/>'; |
|
100 | + } |
|
101 | + $count = $dataplace['count']; |
|
102 | + $content .= I18N::number($count); |
|
103 | + $perc = Functions::safeDivision($count, $sum_gen + $unknownother); |
|
104 | + $perc2= Functions::safeDivision($count, $sum_gen); |
|
105 | + if($perc2>=0.1) |
|
106 | + $content.= '<br/><span class="small">('.I18N::percentage($perc2, 1).')</span>'; |
|
107 | + $content .= '</td>'; |
|
108 | 108 | |
109 | - $html .= ' |
|
109 | + $html .= ' |
|
110 | 110 | <td class="geodispersion_rowitem" width="'.max(round(100*$perc, 0),1).'%"> |
111 | 111 | <table> |
112 | 112 | <tr> |
@@ -118,46 +118,46 @@ discard block |
||
118 | 118 | </tr> |
119 | 119 | </table> |
120 | 120 | </td>'; |
121 | - } |
|
121 | + } |
|
122 | 122 | |
123 | - if($unknownother>0){ |
|
124 | - $perc= Functions::safeDivision($unknownother, $sum_gen + $unknownother); |
|
125 | - $html .='<td class="geodispersion_unknownitem left" >'.I18N::number($unknownother); |
|
126 | - if($perc>=0.1) $html.= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
127 | - $html .='</td>'; |
|
128 | - } |
|
123 | + if($unknownother>0){ |
|
124 | + $perc= Functions::safeDivision($unknownother, $sum_gen + $unknownother); |
|
125 | + $html .='<td class="geodispersion_unknownitem left" >'.I18N::number($unknownother); |
|
126 | + if($perc>=0.1) $html.= '<br/><span class="small">('.I18N::percentage($perc, 1).')</span>'; |
|
127 | + $html .='</td>'; |
|
128 | + } |
|
129 | 129 | |
130 | - $html .= |
|
131 | - '</tr> |
|
130 | + $html .= |
|
131 | + '</tr> |
|
132 | 132 | </table>'; |
133 | - return $html; |
|
134 | - } |
|
133 | + return $html; |
|
134 | + } |
|
135 | 135 | |
136 | 136 | /** |
137 | 137 | * Returns the HTML code fo display a row of the Top Places found for a generation. |
138 | 138 | * |
139 | 139 | * @param array $data Data array |
140 | - * @param int $analysis_level Level of subdivision of analysis |
|
140 | + * @param int $analysis_level Level of subdivision of analysis |
|
141 | 141 | * @return string HTML code for Top Places row |
142 | 142 | */ |
143 | - protected function htmlGenerationTopPlacesRow($data, $analysis_level) { |
|
144 | - $tmp_places = array(); |
|
145 | - $sum_gen = $data['sum']; |
|
146 | - $other = $data['other']; |
|
143 | + protected function htmlGenerationTopPlacesRow($data, $analysis_level) { |
|
144 | + $tmp_places = array(); |
|
145 | + $sum_gen = $data['sum']; |
|
146 | + $other = $data['other']; |
|
147 | 147 | |
148 | - foreach($data['places'] as $placename => $count) { |
|
149 | - if($placename != 'other'){ |
|
150 | - $levels = array_map('trim',explode(',', $placename)); |
|
151 | - $placename = '<span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span>'; |
|
152 | - } |
|
153 | - else{ |
|
154 | - $placename = I18N::translate('Other places'); |
|
155 | - } |
|
156 | - $tmp_places[] = I18N::translate('<strong>%s</strong> [%d - %s]', $placename, $count, I18N::percentage(Functions::safeDivision($count, $sum_gen + $other), 1)); |
|
157 | - } |
|
148 | + foreach($data['places'] as $placename => $count) { |
|
149 | + if($placename != 'other'){ |
|
150 | + $levels = array_map('trim',explode(',', $placename)); |
|
151 | + $placename = '<span title="'.implode(I18N::$list_separator, array_reverse($levels)).'">'.$levels[$analysis_level-1].'</span>'; |
|
152 | + } |
|
153 | + else{ |
|
154 | + $placename = I18N::translate('Other places'); |
|
155 | + } |
|
156 | + $tmp_places[] = I18N::translate('<strong>%s</strong> [%d - %s]', $placename, $count, I18N::percentage(Functions::safeDivision($count, $sum_gen + $other), 1)); |
|
157 | + } |
|
158 | 158 | |
159 | - return implode(I18N::$list_separator, $tmp_places); |
|
160 | - } |
|
159 | + return implode(I18N::$list_separator, $tmp_places); |
|
160 | + } |
|
161 | 161 | |
162 | 162 | } |
163 | 163 | |
164 | 164 | \ No newline at end of file |
@@ -86,7 +86,9 @@ |
||
86 | 86 | $html.= 'map.area'.$location['id'].' = paper.path("'.$location['coord'].'").attr(attr);'; |
87 | 87 | if(isset($location['transparency'])) { |
88 | 88 | $textToolTip = '<strong>'.$location['displayname'].'</strong><br/>'; |
89 | - if($this->data->get('use_flags') && $location['flag'] != '') $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
89 | + if($this->data->get('use_flags') && $location['flag'] != '') { |
|
90 | + $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
91 | + } |
|
90 | 92 | $textToolTip .= I18N::translate('%d individuals', $location['count']).'<br/>'.I18N::percentage(Functions::safeDivision($location['count'], $nb_found - $nb_other), 1); |
91 | 93 | $html.= 'addTip(map.area'.$location['id'].'.node, "'.Filter::escapeJs($textToolTip).'");'; |
92 | 94 | $html.= 'map.area'.$location['id'].'.attr({"fill" : "'. $canvas->max_color .'", "fill-opacity" : '.$location['transparency'].' });'; |
@@ -25,24 +25,24 @@ discard block |
||
25 | 25 | * {@inheritDoc} |
26 | 26 | * @see \MyArtJaub\Webtrees\Module\GeoDispersion\Views\AbstractGeoAnalysisTabGeneralView::htmlAnalysisData() |
27 | 27 | */ |
28 | - protected function htmlAnalysisData() { |
|
28 | + protected function htmlAnalysisData() { |
|
29 | 29 | |
30 | - /** @var OutlineMap $map */ |
|
31 | - $map = $this->data->get('map'); |
|
30 | + /** @var OutlineMap $map */ |
|
31 | + $map = $this->data->get('map'); |
|
32 | 32 | |
33 | - if($map === null) { |
|
34 | - return '<p class="warning">' . |
|
35 | - I18N::translate('The map could not be loaded.') . |
|
36 | - '</p>'; |
|
37 | - } |
|
33 | + if($map === null) { |
|
34 | + return '<p class="warning">' . |
|
35 | + I18N::translate('The map could not be loaded.') . |
|
36 | + '</p>'; |
|
37 | + } |
|
38 | 38 | |
39 | - $canvas = $map->getCanvas(); |
|
40 | - $subdvisions_results = $this->data->get('results_by_subdivisions'); |
|
39 | + $canvas = $map->getCanvas(); |
|
40 | + $subdvisions_results = $this->data->get('results_by_subdivisions'); |
|
41 | 41 | |
42 | - $nb_found = $this->data->get('stats_gen_nb_found'); |
|
43 | - $nb_other = $this->data->get('stats_gen_nb_other'); |
|
42 | + $nb_found = $this->data->get('stats_gen_nb_found'); |
|
43 | + $nb_other = $this->data->get('stats_gen_nb_other'); |
|
44 | 44 | |
45 | - $html = '<script> |
|
45 | + $html = '<script> |
|
46 | 46 | var tip = null; |
47 | 47 | var tipText = ""; |
48 | 48 | var over = false; |
@@ -89,29 +89,29 @@ discard block |
||
89 | 89 | var map = {}; |
90 | 90 | '; |
91 | 91 | |
92 | - foreach($subdvisions_results as $name => $location){ |
|
93 | - $html.= 'map.area'.$location['id'].' = paper.path("'.$location['coord'].'").attr(attr);'; |
|
94 | - if(isset($location['transparency'])) { |
|
95 | - $textToolTip = '<strong>'.$location['displayname'].'</strong><br/>'; |
|
96 | - if($this->data->get('use_flags') && $location['flag'] != '') $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
97 | - $textToolTip .= I18N::translate('%d individuals', $location['count']).'<br/>'.I18N::percentage(Functions::safeDivision($location['count'], $nb_found - $nb_other), 1); |
|
98 | - $html.= 'addTip(map.area'.$location['id'].'.node, "'.Filter::escapeJs($textToolTip).'");'; |
|
99 | - $html.= 'map.area'.$location['id'].'.attr({"fill" : "'. $canvas->max_color .'", "fill-opacity" : '.$location['transparency'].' });'; |
|
100 | - $html.= 'map.area'.$location['id'].'.mouseover(function () {'. |
|
101 | - 'map.area'.$location['id'].'.stop().animate({"fill" : "'. $canvas->hover_color .'", "fill-opacity" : 1}, 100, "linear");'. |
|
102 | - '});'. |
|
103 | - 'map.area'.$location['id'].'.mouseout(function () {'. |
|
104 | - 'map.area'.$location['id'].'.stop().animate({"fill" : "'.$canvas->max_color.'", "fill-opacity" : '.$location['transparency'].'}, 100, "linear");'. |
|
105 | - '});'; |
|
106 | - } |
|
107 | - } |
|
108 | - $html .= '}); |
|
92 | + foreach($subdvisions_results as $name => $location){ |
|
93 | + $html.= 'map.area'.$location['id'].' = paper.path("'.$location['coord'].'").attr(attr);'; |
|
94 | + if(isset($location['transparency'])) { |
|
95 | + $textToolTip = '<strong>'.$location['displayname'].'</strong><br/>'; |
|
96 | + if($this->data->get('use_flags') && $location['flag'] != '') $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
97 | + $textToolTip .= I18N::translate('%d individuals', $location['count']).'<br/>'.I18N::percentage(Functions::safeDivision($location['count'], $nb_found - $nb_other), 1); |
|
98 | + $html.= 'addTip(map.area'.$location['id'].'.node, "'.Filter::escapeJs($textToolTip).'");'; |
|
99 | + $html.= 'map.area'.$location['id'].'.attr({"fill" : "'. $canvas->max_color .'", "fill-opacity" : '.$location['transparency'].' });'; |
|
100 | + $html.= 'map.area'.$location['id'].'.mouseover(function () {'. |
|
101 | + 'map.area'.$location['id'].'.stop().animate({"fill" : "'. $canvas->hover_color .'", "fill-opacity" : 1}, 100, "linear");'. |
|
102 | + '});'. |
|
103 | + 'map.area'.$location['id'].'.mouseout(function () {'. |
|
104 | + 'map.area'.$location['id'].'.stop().animate({"fill" : "'.$canvas->max_color.'", "fill-opacity" : '.$location['transparency'].'}, 100, "linear");'. |
|
105 | + '});'; |
|
106 | + } |
|
107 | + } |
|
108 | + $html .= '}); |
|
109 | 109 | </script> |
110 | 110 | |
111 | 111 | <div id="geodispersion_map"></div> |
112 | 112 | <div id="geodispersion_tip"></div>'; |
113 | 113 | |
114 | - return $html; |
|
115 | - } |
|
114 | + return $html; |
|
115 | + } |
|
116 | 116 | |
117 | 117 | } |
118 | 118 | \ No newline at end of file |
@@ -30,9 +30,9 @@ discard block |
||
30 | 30 | /** @var OutlineMap $map */ |
31 | 31 | $map = $this->data->get('map'); |
32 | 32 | |
33 | - if($map === null) { |
|
34 | - return '<p class="warning">' . |
|
35 | - I18N::translate('The map could not be loaded.') . |
|
33 | + if ($map === null) { |
|
34 | + return '<p class="warning">'. |
|
35 | + I18N::translate('The map could not be loaded.'). |
|
36 | 36 | '</p>'; |
37 | 37 | } |
38 | 38 | |
@@ -82,23 +82,23 @@ discard block |
||
82 | 82 | } |
83 | 83 | }); |
84 | 84 | |
85 | - var paper = new Raphael(document.getElementById("geodispersion_map"), '. $canvas->width .', '. $canvas->height .'); |
|
86 | - var background = paper.rect(0, 0, ' . $canvas->width . ', '. $canvas->height . '); |
|
87 | - background.attr({"fill" : "'. $canvas->background_color .'", "stroke" : "'. $canvas->background_stroke .'", "stroke-width": 1, "stroke-linejoin": "round" }); |
|
88 | - var attr = { fill: "'. $canvas->default_color .'", stroke: "'. $canvas->default_stroke .'", "stroke-width": 1, "stroke-linejoin": "round" }; |
|
85 | + var paper = new Raphael(document.getElementById("geodispersion_map"), '. $canvas->width.', '.$canvas->height.'); |
|
86 | + var background = paper.rect(0, 0, ' . $canvas->width.', '.$canvas->height.'); |
|
87 | + background.attr({"fill" : "'. $canvas->background_color.'", "stroke" : "'.$canvas->background_stroke.'", "stroke-width": 1, "stroke-linejoin": "round" }); |
|
88 | + var attr = { fill: "'. $canvas->default_color.'", stroke: "'.$canvas->default_stroke.'", "stroke-width": 1, "stroke-linejoin": "round" }; |
|
89 | 89 | var map = {}; |
90 | 90 | '; |
91 | 91 | |
92 | - foreach($subdvisions_results as $name => $location){ |
|
93 | - $html.= 'map.area'.$location['id'].' = paper.path("'.$location['coord'].'").attr(attr);'; |
|
94 | - if(isset($location['transparency'])) { |
|
92 | + foreach ($subdvisions_results as $name => $location) { |
|
93 | + $html .= 'map.area'.$location['id'].' = paper.path("'.$location['coord'].'").attr(attr);'; |
|
94 | + if (isset($location['transparency'])) { |
|
95 | 95 | $textToolTip = '<strong>'.$location['displayname'].'</strong><br/>'; |
96 | - if($this->data->get('use_flags') && $location['flag'] != '') $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
96 | + if ($this->data->get('use_flags') && $location['flag'] != '') $textToolTip .= '<span class="geodispersion_flag">'.FunctionsPrint::htmlPlaceIcon($location['place'], $location['flag']).'</span><br/>'; |
|
97 | 97 | $textToolTip .= I18N::translate('%d individuals', $location['count']).'<br/>'.I18N::percentage(Functions::safeDivision($location['count'], $nb_found - $nb_other), 1); |
98 | - $html.= 'addTip(map.area'.$location['id'].'.node, "'.Filter::escapeJs($textToolTip).'");'; |
|
99 | - $html.= 'map.area'.$location['id'].'.attr({"fill" : "'. $canvas->max_color .'", "fill-opacity" : '.$location['transparency'].' });'; |
|
100 | - $html.= 'map.area'.$location['id'].'.mouseover(function () {'. |
|
101 | - 'map.area'.$location['id'].'.stop().animate({"fill" : "'. $canvas->hover_color .'", "fill-opacity" : 1}, 100, "linear");'. |
|
98 | + $html .= 'addTip(map.area'.$location['id'].'.node, "'.Filter::escapeJs($textToolTip).'");'; |
|
99 | + $html .= 'map.area'.$location['id'].'.attr({"fill" : "'.$canvas->max_color.'", "fill-opacity" : '.$location['transparency'].' });'; |
|
100 | + $html .= 'map.area'.$location['id'].'.mouseover(function () {'. |
|
101 | + 'map.area'.$location['id'].'.stop().animate({"fill" : "'.$canvas->hover_color.'", "fill-opacity" : 1}, 100, "linear");'. |
|
102 | 102 | '});'. |
103 | 103 | 'map.area'.$location['id'].'.mouseout(function () {'. |
104 | 104 | 'map.area'.$location['id'].'.stop().animate({"fill" : "'.$canvas->max_color.'", "fill-opacity" : '.$location['transparency'].'}, 100, "linear");'. |