aboutsummaryrefslogtreecommitdiff
path: root/app/genealogy/search/name/data.json/index.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/genealogy/search/name/data.json/index.php')
-rw-r--r--app/genealogy/search/name/data.json/index.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/app/genealogy/search/name/data.json/index.php b/app/genealogy/search/name/data.json/index.php
new file mode 100644
index 0000000..76ef273
--- /dev/null
+++ b/app/genealogy/search/name/data.json/index.php
@@ -0,0 +1,39 @@
+<?php
+
+require_once $_SERVER['DOCUMENT_ROOT'] . "/../session.php";
+
+/** @var string $_FULLNAME
+ * @var string $_USER
+ * @var array $_PROFILE
+ * @var array $_CONFIG
+ */
+
+$data = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/data/people.json"), true);
+
+header("Content-Type: application/json");
+
+$arr = [];
+$names = [];
+$counts = [];
+
+foreach ($data as $id => $person) {
+ $name = ucfirst(strtolower($person["surname"]));
+
+ if (isset($counts[$name])) {
+ $counts[$name]++;
+ } else {
+ $counts[$name] = 1;
+ }
+ if (!in_array($name, $names)) {
+ $names[] = $name;
+ }
+}
+
+foreach ($names as $name) {
+ $arr[] = [
+ 'name' => $name,
+ 'occurrences' => $counts[$name] . " personne" . ($counts[$name] > 1 ? "s" : "")
+ ];
+}
+
+echo(json_encode($arr)); \ No newline at end of file