aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.idea/.gitignore8
-rw-r--r--.idea/Familine.iml1
-rw-r--r--.idea/deployment.xml4
-rw-r--r--.idea/dictionaries/Minteck.xml3
-rw-r--r--.idea/discord.xml7
-rw-r--r--.idea/inspectionProfiles/Project_Default.xml9
-rw-r--r--.idea/jsLibraryMappings.xml6
-rw-r--r--.idea/php.xml4
-rw-r--r--.idea/sshConfigs.xml2
-rw-r--r--.idea/vcs.xml1
-rw-r--r--.idea/webServers.xml4
-rw-r--r--.idea/workspace.xml119
-rw-r--r--app/genealogy/.gitlab-ci.yml15
-rw-r--r--app/genealogy/LICENSE21
-rw-r--r--app/genealogy/index.php2
-rw-r--r--app/genealogy/private/header.php7
-rw-r--r--app/session.php12
-rw-r--r--icns/familine-movies.pngbin17297 -> 16552 bytes
-rw-r--r--icns/familine-movies.svg67
-rw-r--r--icns/familine-photos.pngbin57920 -> 53706 bytes
-rw-r--r--icns/familine-photos.svg88
-rw-r--r--icns/familine-planning.pngbin0 -> 10919 bytes
-rw-r--r--icns/familine-planning.svg65
-rw-r--r--index.php48
-rw-r--r--known/index.php130
-rw-r--r--login.old/embed/index.php6
-rw-r--r--login.old/index.php6
-rw-r--r--login/embed/index.php6
-rw-r--r--login/index.php2
-rw-r--r--oauth.old/embed/index.php45
-rw-r--r--oauth.old/index.php45
-rw-r--r--oauth/embed/index.php52
-rw-r--r--oauth/index.php7
-rw-r--r--private/session.php40
-rw-r--r--statusbar.php23
-rw-r--r--version.txt2
-rw-r--r--welcome/index.php4
37 files changed, 430 insertions, 431 deletions
diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 7f5d444..0000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,8 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
-# Datasource local storage ignored files
-/../../../../:\Projets\Familine\.idea/dataSources/
-/dataSources.local.xml
-# Editor-based HTTP Client requests
-/httpRequests/
diff --git a/.idea/Familine.iml b/.idea/Familine.iml
index 7931716..bf4c9d3 100644
--- a/.idea/Familine.iml
+++ b/.idea/Familine.iml
@@ -4,6 +4,5 @@
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" name="mobile-detect" level="application" />
</component>
</module> \ No newline at end of file
diff --git a/.idea/deployment.xml b/.idea/deployment.xml
index af565fd..45723e9 100644
--- a/.idea/deployment.xml
+++ b/.idea/deployment.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
- <component name="PublishConfigData" serverName="Familine (project level)" createEmptyFolders="true" autoUploadExternalChanges="true">
+ <component name="PublishConfigData" serverName="Familine" remoteFilesAllowedToDisappearOnAutoupload="false">
<serverData>
- <paths name="Familine (project level)">
+ <paths name="Familine">
<serverdata>
<mappings>
<mapping deploy="/mnt/familine" local="$PROJECT_DIR$" web="/" />
diff --git a/.idea/dictionaries/Minteck.xml b/.idea/dictionaries/Minteck.xml
deleted file mode 100644
index 41f8aa8..0000000
--- a/.idea/dictionaries/Minteck.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<component name="ProjectDictionaryState">
- <dictionary name="Minteck" />
-</component> \ No newline at end of file
diff --git a/.idea/discord.xml b/.idea/discord.xml
deleted file mode 100644
index a3c6b7b..0000000
--- a/.idea/discord.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="DiscordProjectSettings">
- <option name="show" value="PROJECT" />
- <option name="description" value="" />
- </component>
-</project> \ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
deleted file mode 100644
index 10963b9..0000000
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<component name="InspectionProjectProfileManager">
- <profile version="1.0">
- <option name="myName" value="Project Default" />
- <inspection_tool class="CssNonIntegerLengthInPixels" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
- <inspection_tool class="CssUnresolvedCustomProperty" enabled="false" level="ERROR" enabled_by_default="false" />
- <inspection_tool class="JsonSchemaCompliance" enabled="false" level="WARNING" enabled_by_default="false" />
- <inspection_tool class="PhpUndefinedFunctionInspection" enabled="false" level="WARNING" enabled_by_default="false" />
- </profile>
-</component> \ No newline at end of file
diff --git a/.idea/jsLibraryMappings.xml b/.idea/jsLibraryMappings.xml
deleted file mode 100644
index 5221985..0000000
--- a/.idea/jsLibraryMappings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="JavaScriptLibraryMappings">
- <file url="PROJECT" libraries="{mobile-detect}" />
- </component>
-</project> \ No newline at end of file
diff --git a/.idea/php.xml b/.idea/php.xml
index 045d15b..a070180 100644
--- a/.idea/php.xml
+++ b/.idea/php.xml
@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
- <component name="PhpProjectSharedConfiguration" php_language_level="7.4" />
+ <component name="PhpProjectSharedConfiguration" php_language_level="7.4">
+ <option name="suggestChangeDefaultLanguageLevel" value="false" />
+ </component>
</project> \ No newline at end of file
diff --git a/.idea/sshConfigs.xml b/.idea/sshConfigs.xml
index 6b5120d..8f4dd16 100644
--- a/.idea/sshConfigs.xml
+++ b/.idea/sshConfigs.xml
@@ -2,7 +2,7 @@
<project version="4">
<component name="SshConfigs">
<configs>
- <sshConfig authType="OPEN_SSH" host="ols2" id="d74d45ad-c752-4bdf-82c1-85cbd6c8e458" port="22465" nameFormat="DESCRIPTIVE" username="root" useOpenSSHConfig="true" />
+ <sshConfig authType="OPEN_SSH" host="minteck.org" id="2ff33082-d7fd-4674-8554-576d41cd97bf" port="22465" nameFormat="DESCRIPTIVE" username="root" useOpenSSHConfig="true" />
</configs>
</component>
</project> \ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
index a1f2013..fa2ad59 100644
--- a/.idea/vcs.xml
+++ b/.idea/vcs.xml
@@ -5,6 +5,5 @@
<mapping directory="$PROJECT_DIR$/app/console" vcs="Git" />
<mapping directory="$PROJECT_DIR$/app/genealogy" vcs="Git" />
<mapping directory="$PROJECT_DIR$/app/help" vcs="Git" />
- <mapping directory="$PROJECT_DIR$/app/money" vcs="Git" />
</component>
</project> \ No newline at end of file
diff --git a/.idea/webServers.xml b/.idea/webServers.xml
index 4fe5d8a..427510e 100644
--- a/.idea/webServers.xml
+++ b/.idea/webServers.xml
@@ -2,8 +2,8 @@
<project version="4">
<component name="WebServers">
<option name="servers">
- <webServer id="dd27d6eb-cb58-4445-81e2-75460b980d8f" name="Familine (project level)" url="https://familine.mooo.com">
- <fileTransfer accessType="SFTP" host="ols2" port="22465" sshConfigId="d74d45ad-c752-4bdf-82c1-85cbd6c8e458" sshConfig="root@ols2:22465 agent" authAgent="true">
+ <webServer id="9701def1-7401-42f4-8594-93ac16af0c57" name="Familine" url="http://familine.minteck.org">
+ <fileTransfer accessType="SFTP" host="minteck.org" port="22465" sshConfigId="2ff33082-d7fd-4674-8554-576d41cd97bf" sshConfig="root@minteck.org:22465 agent" authAgent="true">
<advancedOptions>
<advancedOptions dataProtectionLevel="Private" keepAliveTimeout="0" passiveMode="true" shareSSLContext="true" />
</advancedOptions>
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
new file mode 100644
index 0000000..7973b26
--- /dev/null
+++ b/.idea/workspace.xml
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ChangeListManager">
+ <list default="true" id="e4941d36-f387-4fd6-8e3d-4cad435f2034" name="Changes" comment="">
+ <change afterPath="$PROJECT_DIR$/app/help/fonts/Nunito-Italic-VariableFont_wght.ttf" afterDir="false" />
+ <change afterPath="$PROJECT_DIR$/app/help/fonts/Nunito-VariableFont_wght.ttf" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/.gitignore" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/Familine.iml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/Familine.iml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/deployment.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/deployment.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/dictionaries/Minteck.xml" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/discord.xml" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/inspectionProfiles/Project_Default.xml" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/jsLibraryMappings.xml" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/php.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/php.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/sshConfigs.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/sshConfigs.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/vcs.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/.idea/webServers.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/webServers.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/genealogy/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/genealogy/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/genealogy/private/header.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/genealogy/private/header.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/account/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/account/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/legal/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/legal/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/media/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/media/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/money/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/genealogy/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/review/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/share/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/share/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/help/wiki/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/help/wiki/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/session.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/session.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/icns/familine-movies.png" beforeDir="false" afterPath="$PROJECT_DIR$/icns/familine-movies.png" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/icns/familine-movies.svg" beforeDir="false" afterPath="$PROJECT_DIR$/icns/familine-movies.svg" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/icns/familine-photos.png" beforeDir="false" afterPath="$PROJECT_DIR$/icns/familine-photos.png" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/icns/familine-photos.svg" beforeDir="false" afterPath="$PROJECT_DIR$/icns/familine-photos.svg" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/icns/familine-planning.svg" beforeDir="false" afterPath="$PROJECT_DIR$/icns/familine-planning.svg" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/known/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/known/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/login.old/embed/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/login.old/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/login/embed/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/login/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/login/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/oauth.old/embed/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/oauth.old/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/oauth/embed/index.php" beforeDir="false" />
+ <change beforePath="$PROJECT_DIR$/oauth/index.php" beforeDir="false" afterPath="$PROJECT_DIR$/oauth/index.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/private/session.php" beforeDir="false" afterPath="$PROJECT_DIR$/private/session.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/statusbar.php" beforeDir="false" afterPath="$PROJECT_DIR$/statusbar.php" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/version.txt" beforeDir="false" afterPath="$PROJECT_DIR$/version.txt" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/welcome/index.php" beforeDir="false" />
+ </list>
+ <option name="SHOW_DIALOG" value="false" />
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+ <option name="LAST_RESOLUTION" value="IGNORE" />
+ </component>
+ <component name="ComposerSettings">
+ <execution />
+ </component>
+ <component name="Git.Settings">
+ <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+ </component>
+ <component name="GitSEFilterConfiguration">
+ <file-type-list>
+ <filtered-out-file-type name="LOCAL_BRANCH" />
+ <filtered-out-file-type name="REMOTE_BRANCH" />
+ <filtered-out-file-type name="TAG" />
+ <filtered-out-file-type name="COMMIT_BY_MESSAGE" />
+ </file-type-list>
+ </component>
+ <component name="MarkdownSettingsMigration">
+ <option name="stateVersion" value="1" />
+ </component>
+ <component name="ProjectId" id="23plsKFfG63WJwGMvFPCPdau2Pr" />
+ <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
+ <component name="ProjectViewState">
+ <option name="hideEmptyMiddlePackages" value="true" />
+ <option name="showLibraryContents" value="true" />
+ </component>
+ <component name="PropertiesComponent">
+ <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
+ <property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
+ <property name="WebServerToolWindowFactoryState" value="false" />
+ <property name="vue.rearranger.settings.migration" value="true" />
+ </component>
+ <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
+ <component name="TaskManager">
+ <task active="true" id="Default" summary="Default task">
+ <changelist id="e4941d36-f387-4fd6-8e3d-4cad435f2034" name="Changes" comment="" />
+ <created>1642439118426</created>
+ <option name="number" value="Default" />
+ <option name="presentableId" value="Default" />
+ <updated>1642439118426</updated>
+ <workItem from="1642439120729" duration="929000" />
+ <workItem from="1642610611712" duration="485000" />
+ <workItem from="1642845718526" duration="1404000" />
+ <workItem from="1642944432747" duration="269000" />
+ <workItem from="1642951326504" duration="715000" />
+ <workItem from="1643996334506" duration="1683000" />
+ <workItem from="1644003506604" duration="1476000" />
+ <workItem from="1644051951606" duration="627000" />
+ <workItem from="1644061944516" duration="4341000" />
+ <workItem from="1644071110782" duration="282000" />
+ <workItem from="1644071749913" duration="10000" />
+ </task>
+ <servers />
+ </component>
+ <component name="TypeScriptGeneratedFilesManager">
+ <option name="version" value="3" />
+ </component>
+ <component name="Vcs.Log.Tabs.Properties">
+ <option name="TAB_STATES">
+ <map>
+ <entry key="MAIN">
+ <value>
+ <State />
+ </value>
+ </entry>
+ </map>
+ </option>
+ </component>
+</project> \ No newline at end of file
diff --git a/app/genealogy/.gitlab-ci.yml b/app/genealogy/.gitlab-ci.yml
new file mode 100644
index 0000000..4402674
--- /dev/null
+++ b/app/genealogy/.gitlab-ci.yml
@@ -0,0 +1,15 @@
+# Generic Minteck GitLab CI/CD Checks
+# PHP applications
+image: php:zts-buster
+
+cache:
+ paths:
+ - vendor/
+
+before_script:
+ - apt-get update
+ - apt-get install -y git
+
+test:
+ script:
+ - bash -c '[[ $(find . -name \*.php -exec php -l {} \; | grep -v "No syntax errors") ]] && exit 2 || exit 0'
diff --git a/app/genealogy/LICENSE b/app/genealogy/LICENSE
new file mode 100644
index 0000000..318113a
--- /dev/null
+++ b/app/genealogy/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2021- Minteck
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/app/genealogy/index.php b/app/genealogy/index.php
index 892e511..fa67073 100644
--- a/app/genealogy/index.php
+++ b/app/genealogy/index.php
@@ -1,6 +1,6 @@
<?php $_TITLE = "Accueil"; require_once $_SERVER['DOCUMENT_ROOT'] . "/private/header.php"; ?>
<div class="container" style="text-align: center;">
- <h1>Familine Recall</h1>
+ <h1>Familine Généalogie</h1>
<p><i>La généalogie familiale simplifiée et accessible à tous</i></p>
<h2>Pour vous</h2>
diff --git a/app/genealogy/private/header.php b/app/genealogy/private/header.php
index 665e6c0..c579fed 100644
--- a/app/genealogy/private/header.php
+++ b/app/genealogy/private/header.php
@@ -36,7 +36,7 @@ $data = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/data
<link href="/dllib/jquery.flexdatalist.min.css" rel="stylesheet" type="text/css">
<script src="/dllib/jquery.js"></script>
<script src="/dllib/org.js"></script>
- <title><?= $_TITLE ?> | Familine Recall</title>
+ <title><?= $_TITLE ?> | Familine Généalogie</title>
<style>
:root {
--primary-color: #217ca3;
@@ -94,7 +94,7 @@ $data = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/data
</head>
<body>
<nav class="navbar navbar-expand-sm bg-light navbar-light">
- <a class="navbar-brand" href="/">Familine Recall</a>
+ <a class="navbar-brand" href="/">Familine Généalogie</a>
<ul class="navbar-nav" style="width: 100%;">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">
@@ -116,9 +116,6 @@ $data = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/data
<li class="nav-item">
<a class="nav-link" href="/me">Ma famille</a>
</li>
- <li class="nav-item">
- <a class="nav-link" href="/import">Importer une généalogique</a>
- </li>
</ul>
<span class="navbar-text" style="width:100%;text-align:right;">
diff --git a/app/session.php b/app/session.php
index fc088c1..10db146 100644
--- a/app/session.php
+++ b/app/session.php
@@ -3,10 +3,14 @@
global $_CONFIG;
$_CONFIG = json_decode(file_get_contents("/mnt/familine/private/FamilineConfig.json"), true);
+global $_USER;
+global $_SUID;
+global $_FULLNAME;
+
if ($_SERVER['REMOTE_ADDR'] !== "127.0.0.1" && $_SERVER['REMOTE_ADDR'] !== "::0") {
if (isset($_COOKIE['FL_SESSION_TOKEN'])) {
if (strpos($_COOKIE['FL_SESSION_TOKEN'], ".") !== false || strpos($_COOKIE['FL_SESSION_TOKEN'], "/") !== false) {
- header("Location: https://" . $_CONFIG["Global"]["domain"] . "/welcome");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
@@ -14,7 +18,7 @@ if ($_SERVER['REMOTE_ADDR'] !== "127.0.0.1" && $_SERVER['REMOTE_ADDR'] !== "::0"
$_PROFILE = json_decode(file_get_contents("/mnt/familine/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN']))), true);
if (isset($_PROFILE['familine'])) {
- header("Location: https://" . $_CONFIG["Global"]["domain"] . "/welcome");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
@@ -22,11 +26,11 @@ if ($_SERVER['REMOTE_ADDR'] !== "127.0.0.1" && $_SERVER['REMOTE_ADDR'] !== "::0"
$_SUID = $_PROFILE['login'];
$_FULLNAME = $_PROFILE['name'];
} else {
- header("Location: https://" . $_CONFIG["Global"]["domain"] . "/welcome");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
} else {
- header("Location: https://" . $_CONFIG["Global"]["domain"] . "/welcome");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
diff --git a/icns/familine-movies.png b/icns/familine-movies.png
index 4c71f0a..c7d40a3 100644
--- a/icns/familine-movies.png
+++ b/icns/familine-movies.png
Binary files differ
diff --git a/icns/familine-movies.svg b/icns/familine-movies.svg
index c3a454e..cdf031f 100644
--- a/icns/familine-movies.svg
+++ b/icns/familine-movies.svg
@@ -1,13 +1,54 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 7164 7188" style="enable-background:new 0 0 7164 7188;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:none;}
- .st1{fill:#41EF3B;}
-</style>
-<path class="st0" d="M0,0h7164v7188H0V0z"/>
-<path class="st1" d="M5373,898.5v599h-597v-599H2388v599h-597v-599h-597v5391h597v-599h597v599h2388v-599h597v599h597v-5391H5373z
- M2388,5091.5h-597v-599h597V5091.5z M2388,3893.5h-597v-599h597V3893.5z M2388,2695.5h-597v-599h597V2695.5z M4179,5690.5H2985
- v-4193h1194V5690.5z M5373,5091.5h-597v-599h597V5091.5z M5373,3893.5h-597v-599h597V3893.5z M5373,2695.5h-597v-599h597V2695.5z"/>
-</svg>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 7164 7188"
+ style="enable-background:new 0 0 7164 7188;"
+ xml:space="preserve"
+ sodipodi:docname="familine-movies.svg"
+ inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
+ inkscape:export-filename="D:\Projets\Familine\icns\familine-movies.png"
+ inkscape:export-xdpi="24"
+ inkscape:export-ydpi="24"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"><defs
+ id="defs11" /><sodipodi:namedview
+ id="namedview9"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ inkscape:pagecheckerboard="0"
+ showgrid="false"
+ inkscape:zoom="0.092097941"
+ inkscape:cx="1438.6858"
+ inkscape:cy="3599.429"
+ inkscape:window-width="1600"
+ inkscape:window-height="847"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_1" />
+<style
+ type="text/css"
+ id="style2">
+ .st0{fill:none;}
+ .st1{fill:#41EF3B;}
+</style>
+<path
+ class="st0"
+ d="M0,0h7164v7188H0V0z"
+ id="path4" />
+<path
+ class="st1"
+ d="M5373,898.5v599h-597v-599H2388v599h-597v-599h-597v5391h597v-599h597v599h2388v-599h597v599h597v-5391H5373z M2388,5091.5h-597v-599h597V5091.5z M2388,3893.5h-597v-599h597V3893.5z M2388,2695.5h-597v-599h597V2695.5z M4179,5690.5H2985 v-4193h1194V5690.5z M5373,5091.5h-597v-599h597V5091.5z M5373,3893.5h-597v-599h597V3893.5z M5373,2695.5h-597v-599h597V2695.5z"
+ id="path6"
+ style="fill:#efd03b;fill-opacity:1" />
+</svg>
diff --git a/icns/familine-photos.png b/icns/familine-photos.png
index 9a9b8b1..83cad7d 100644
--- a/icns/familine-photos.png
+++ b/icns/familine-photos.png
Binary files differ
diff --git a/icns/familine-photos.svg b/icns/familine-photos.svg
index d80d230..18b52f0 100644
--- a/icns/familine-photos.svg
+++ b/icns/familine-photos.svg
@@ -1,34 +1,54 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 7164 7188" style="enable-background:new 0 0 7164 7188;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:none;}
- .st1{fill:#3BEF80;}
-</style>
-<path class="st0" d="M0,0h7164v7188H0V0z"/>
-<path class="st1" d="M5581.95,3713.8c-89.55-59.9-179.1-89.85-268.65-119.8c89.55-29.95,179.1-59.9,268.65-119.8
- c567.15-329.45,895.5-928.45,895.5-1557.4c-268.65-149.75-597-239.6-895.5-239.6s-597,89.85-895.5,239.6
- c-89.55,59.9-149.25,89.85-238.8,149.75c29.85-89.85,29.85-179.7,29.85-269.55c0-658.9-358.2-1257.9-895.5-1557.4
- c-537.3,299.5-895.5,898.5-895.5,1557.4c0,89.85,0,179.7,29.85,269.55c-89.55-29.95-149.25-89.85-238.8-149.75
- c-268.65-149.75-597-239.6-895.5-239.6c-328.35,0-626.85,89.85-895.5,239.6c0,628.95,328.35,1227.95,895.5,1557.4
- c89.55,59.9,179.1,89.85,268.65,119.8c-89.55,29.95-179.1,59.9-268.65,119.8c-567.15,329.45-895.5,928.45-895.5,1557.4
- c268.65,149.75,567.15,239.6,895.5,239.6c298.5,0,626.85-89.85,895.5-239.6c89.55-59.9,149.25-119.8,238.8-149.75
- c-29.85,89.85-29.85,179.7-29.85,269.55c0,658.9,358.2,1227.95,895.5,1557.4c537.3-299.5,895.5-898.5,895.5-1557.4
- c0-89.85,0-179.7-29.85-299.5c59.7,59.9,149.25,119.8,238.8,149.75c268.65,149.75,597,239.6,895.5,239.6s626.85-89.85,895.5-239.6
- C6477.45,4642.25,6149.1,4043.25,5581.95,3713.8z M4835.7,2545.75c59.7-59.9,119.4-89.85,149.25-119.8
- c179.1-89.85,388.05-149.75,597-149.75c89.55,0,149.25,0,238.8,29.95c-89.55,269.55-268.65,509.15-537.3,658.9
- c-59.7,29.95-119.4,59.9-179.1,89.85l-417.9,149.75c-59.7-149.75-119.4-269.55-208.95-359.4
- C4477.5,2815.3,4835.7,2545.75,4835.7,2545.75z M3582,1018.3c179.1,209.65,298.5,479.2,298.5,778.7c0,59.9,0,119.8-29.85,179.7
- l-59.7,419.3c-59.7,0-149.25,0-208.95,0s-149.25,0-208.95,29.95l-59.7-419.3c-29.85-89.85-29.85-149.75-29.85-209.65
- C3283.5,1497.5,3402.9,1227.95,3582,1018.3z M1343.25,2306.15c89.55-29.95,149.25-29.95,238.8-29.95c208.95,0,417.9,59.9,597,149.75
- c59.7,29.95,89.55,59.9,149.25,119.8l328.35,299.5c-89.55,119.8-149.25,239.6-208.95,359.4l-417.9-149.75
- c-59.7-59.9-89.55-59.9-149.25-89.85C1611.9,2815.3,1432.8,2575.7,1343.25,2306.15z M2328.3,4642.25
- c-59.7,59.9-119.4,89.85-149.25,119.8c-179.1,89.85-388.05,149.75-597,149.75c-89.55,0-149.25,0-238.8-29.95
- c89.55-269.55,268.65-509.15,537.3-658.9c59.7-29.95,119.4-59.9,179.1-89.85l417.9-149.75c59.7,149.75,119.4,269.55,208.95,359.4
- C2686.5,4372.7,2328.3,4642.25,2328.3,4642.25z M3582,6169.7c-179.1-209.65-298.5-509.15-298.5-778.7c0-59.9,0-119.8,29.85-179.7
- l59.7-419.3c59.7,0,149.25,29.95,208.95,29.95s149.25,0,208.95-29.95l59.7,419.3c0,59.9,29.85,119.8,29.85,179.7
- C3880.5,5690.5,3761.1,5960.05,3582,6169.7z M5581.95,4911.8c-208.95,0-417.9-59.9-597-149.75c-59.7-29.95-89.55-59.9-149.25-89.85
- l-328.35-299.5c89.55-119.8,149.25-239.6,208.95-359.4l417.9,149.75c59.7,29.95,119.4,59.9,179.1,89.85
- c268.65,149.75,447.75,389.35,537.3,658.9C5731.2,4911.8,5671.5,4911.8,5581.95,4911.8z"/>
-</svg>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 7164 7188"
+ style="enable-background:new 0 0 7164 7188;"
+ xml:space="preserve"
+ sodipodi:docname="familine-photos.svg"
+ inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
+ inkscape:export-filename="D:\Projets\Familine\icns\familine-photos.png"
+ inkscape:export-xdpi="13.72"
+ inkscape:export-ydpi="13.72"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"><defs
+ id="defs11" /><sodipodi:namedview
+ id="namedview9"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ inkscape:pagecheckerboard="0"
+ showgrid="false"
+ inkscape:zoom="0.092097941"
+ inkscape:cx="3577.713"
+ inkscape:cy="3599.429"
+ inkscape:window-width="1600"
+ inkscape:window-height="847"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_1" />
+<style
+ type="text/css"
+ id="style2">
+ .st0{fill:none;}
+ .st1{fill:#3BEF80;}
+</style>
+<path
+ class="st0"
+ d="M0,0h7164v7188H0V0z"
+ id="path4" />
+<path
+ class="st1"
+ d="M5581.95,3713.8c-89.55-59.9-179.1-89.85-268.65-119.8c89.55-29.95,179.1-59.9,268.65-119.8 c567.15-329.45,895.5-928.45,895.5-1557.4c-268.65-149.75-597-239.6-895.5-239.6s-597,89.85-895.5,239.6 c-89.55,59.9-149.25,89.85-238.8,149.75c29.85-89.85,29.85-179.7,29.85-269.55c0-658.9-358.2-1257.9-895.5-1557.4 c-537.3,299.5-895.5,898.5-895.5,1557.4c0,89.85,0,179.7,29.85,269.55c-89.55-29.95-149.25-89.85-238.8-149.75 c-268.65-149.75-597-239.6-895.5-239.6c-328.35,0-626.85,89.85-895.5,239.6c0,628.95,328.35,1227.95,895.5,1557.4 c89.55,59.9,179.1,89.85,268.65,119.8c-89.55,29.95-179.1,59.9-268.65,119.8c-567.15,329.45-895.5,928.45-895.5,1557.4 c268.65,149.75,567.15,239.6,895.5,239.6c298.5,0,626.85-89.85,895.5-239.6c89.55-59.9,149.25-119.8,238.8-149.75 c-29.85,89.85-29.85,179.7-29.85,269.55c0,658.9,358.2,1227.95,895.5,1557.4c537.3-299.5,895.5-898.5,895.5-1557.4 c0-89.85,0-179.7-29.85-299.5c59.7,59.9,149.25,119.8,238.8,149.75c268.65,149.75,597,239.6,895.5,239.6s626.85-89.85,895.5-239.6 C6477.45,4642.25,6149.1,4043.25,5581.95,3713.8z M4835.7,2545.75c59.7-59.9,119.4-89.85,149.25-119.8 c179.1-89.85,388.05-149.75,597-149.75c89.55,0,149.25,0,238.8,29.95c-89.55,269.55-268.65,509.15-537.3,658.9 c-59.7,29.95-119.4,59.9-179.1,89.85l-417.9,149.75c-59.7-149.75-119.4-269.55-208.95-359.4 C4477.5,2815.3,4835.7,2545.75,4835.7,2545.75z M3582,1018.3c179.1,209.65,298.5,479.2,298.5,778.7c0,59.9,0,119.8-29.85,179.7 l-59.7,419.3c-59.7,0-149.25,0-208.95,0s-149.25,0-208.95,29.95l-59.7-419.3c-29.85-89.85-29.85-149.75-29.85-209.65 C3283.5,1497.5,3402.9,1227.95,3582,1018.3z M1343.25,2306.15c89.55-29.95,149.25-29.95,238.8-29.95c208.95,0,417.9,59.9,597,149.75 c59.7,29.95,89.55,59.9,149.25,119.8l328.35,299.5c-89.55,119.8-149.25,239.6-208.95,359.4l-417.9-149.75 c-59.7-59.9-89.55-59.9-149.25-89.85C1611.9,2815.3,1432.8,2575.7,1343.25,2306.15z M2328.3,4642.25 c-59.7,59.9-119.4,89.85-149.25,119.8c-179.1,89.85-388.05,149.75-597,149.75c-89.55,0-149.25,0-238.8-29.95 c89.55-269.55,268.65-509.15,537.3-658.9c59.7-29.95,119.4-59.9,179.1-89.85l417.9-149.75c59.7,149.75,119.4,269.55,208.95,359.4 C2686.5,4372.7,2328.3,4642.25,2328.3,4642.25z M3582,6169.7c-179.1-209.65-298.5-509.15-298.5-778.7c0-59.9,0-119.8,29.85-179.7 l59.7-419.3c59.7,0,149.25,29.95,208.95,29.95s149.25,0,208.95-29.95l59.7,419.3c0,59.9,29.85,119.8,29.85,179.7 C3880.5,5690.5,3761.1,5960.05,3582,6169.7z M5581.95,4911.8c-208.95,0-417.9-59.9-597-149.75c-59.7-29.95-89.55-59.9-149.25-89.85 l-328.35-299.5c89.55-119.8,149.25-239.6,208.95-359.4l417.9,149.75c59.7,29.95,119.4,59.9,179.1,89.85 c268.65,149.75,447.75,389.35,537.3,658.9C5731.2,4911.8,5671.5,4911.8,5581.95,4911.8z"
+ id="path6"
+ style="fill:#3bef3b;fill-opacity:1" />
+</svg>
diff --git a/icns/familine-planning.png b/icns/familine-planning.png
new file mode 100644
index 0000000..66da798
--- /dev/null
+++ b/icns/familine-planning.png
Binary files differ
diff --git a/icns/familine-planning.svg b/icns/familine-planning.svg
index 6ca2f0b..18489fb 100644
--- a/icns/familine-planning.svg
+++ b/icns/familine-planning.svg
@@ -1,14 +1,51 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 7164 7188" style="enable-background:new 0 0 7164 7188;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:none;}
- .st1{fill:#3BE0EF;}
-</style>
-<path class="st0" d="M0,0h7164v7188H0V0z"/>
-<path class="st1" d="M5671.5,898.5H5373v-599h-597v599H2388v-599h-597v599h-298.5c-328.35,0-597,269.55-597,599v4193
- c0,329.45,268.65,599,597,599h4179c328.35,0,597-269.55,597-599v-4193C6268.5,1168.05,5999.85,898.5,5671.5,898.5z M5671.5,5690.5
- h-4179v-2995h4179V5690.5z M1492.5,2096.5v-599h4179v599H1492.5z M2089.5,3294.5h2985v599h-2985V3294.5z M2089.5,4492.5H4179v599
- H2089.5V4492.5z"/>
-</svg>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 25.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+
+<svg
+ version="1.1"
+ id="Layer_1"
+ x="0px"
+ y="0px"
+ viewBox="0 0 7164 7188"
+ style="enable-background:new 0 0 7164 7188;"
+ xml:space="preserve"
+ sodipodi:docname="familine-planning.svg"
+ inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"><defs
+ id="defs11" /><sodipodi:namedview
+ id="namedview9"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ inkscape:pagecheckerboard="0"
+ showgrid="false"
+ inkscape:zoom="0.092097941"
+ inkscape:cx="3577.713"
+ inkscape:cy="3599.429"
+ inkscape:window-width="1600"
+ inkscape:window-height="847"
+ inkscape:window-x="-8"
+ inkscape:window-y="-8"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="Layer_1" />
+<style
+ type="text/css"
+ id="style2">
+ .st0{fill:none;}
+ .st1{fill:#3BE0EF;}
+</style>
+<path
+ class="st0"
+ d="M0,0h7164v7188H0V0z"
+ id="path4" />
+<path
+ class="st1"
+ d="M5671.5,898.5H5373v-599h-597v599H2388v-599h-597v599h-298.5c-328.35,0-597,269.55-597,599v4193 c0,329.45,268.65,599,597,599h4179c328.35,0,597-269.55,597-599v-4193C6268.5,1168.05,5999.85,898.5,5671.5,898.5z M5671.5,5690.5 h-4179v-2995h4179V5690.5z M1492.5,2096.5v-599h4179v599H1492.5z M2089.5,3294.5h2985v599h-2985V3294.5z M2089.5,4492.5H4179v599 H2089.5V4492.5z"
+ id="path6"
+ style="fill:#3bef6f;fill-opacity:1" />
+</svg>
diff --git a/index.php b/index.php
index c832d6a..0518f44 100644
--- a/index.php
+++ b/index.php
@@ -57,22 +57,17 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/private/session.php";
<div id="explore-list" class="container">
<a href="https://docs.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-docs.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Docs</span>
+ <span>Pages</span>
<span class="explore-description">Une encyclopédie de toutes les personnes de la famille</span>
</a>
<a href="https://support.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-help.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Help</span>
+ <span>Aide</span>
<span class="explore-description">Votre point d'accès à l'aide de Familine</span>
</a>
- <a href="https://money.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
- <img src="/icns/familine-money.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Money</span>
- <span class="explore-description">Compte bancaire interne pour la famille</span>
- </a>
<a href="https://cinema.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-movies.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Movies</span>
+ <span>Films</span>
<span class="explore-description">Regardez tous les films produits par la famille</span>
</a>
<a href="https://photos.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
@@ -80,25 +75,33 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/private/session.php";
<span>Photos</span>
<span class="explore-description">Des photos de qualité par la famille</span>
</a>
+ <a href="https://planning.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
+ <img src="/icns/familine-planning.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
+ <span>Planning</span>
+ <span class="explore-description">Gérez vos présences et absences aux événements de Familine</span>
+ </a>
<a href="https://genealogy.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-recall.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Recall</span>
+ <span>Généalogie</span>
<span class="explore-description">Un accès plus simple à la généalogie</span>
</a>
<a href="https://share.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-share.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Share</span>
+ <span>Partage</span>
<span class="explore-description">Partagez des fichiers avec qui vous voulez</span>
</a>
<a href="https://chat.<?= $_CONFIG["Global"]["domain"] ?>" class="explore-btn">
<img src="/icns/familine-you.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;">
- <span>Yikes</span>
- <span class="explore-description">Discuttez en toute sécurité avec la famille</span>
+ <span>Discussions</span>
+ <span class="explore-description">Communiquez de façon simple et sécurisée avec la famille</span>
</a>
</div>
<div style="color: white;text-align: center;margin-top: 10px;opacity: .5;font-size: 14px;">
<?php if ($_ADMIN): ?><a style="color:white;display:inline-block;" href="https://console.familine.minteck.org">Familine Camera</a> · <?php endif; ?><a style="color:white;display:inline-block;" href="https://familine.minteck.org/known">Problèmes connus</a> · <a target="_blank" style="color:white;display:inline-block;" href="https://gitlab.minteck.org/explore/projects/topics/Familine">Code source</a> · version <?= file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/version.txt") ?>
</div>
+ <br>
+ <br>
+ <br>
</div>
</div>
</div>
@@ -176,25 +179,6 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/private/session.php";
<br>
- <img src="/icns/familine-money.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;"><?php
-
- $gcount = 0.0;
- foreach (scandir($_SERVER['DOCUMENT_ROOT'] . "/app/money/public") as $file) {
- if (is_file($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $file) && !is_link($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $file) && substr($file, -5) === ".json") {
- $gcount += (float)json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $file))->credit;
- }
- }
-
- if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $_USER . ".json")) {
- echo(number_format((float)json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $_USER . ".json"))->credit, 2, ',', '') . "€");
- } else {
- echo("0,00€");
- }
-
- ?> (<?= str_replace(".", ",", round(json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/app/money/public/" . $_USER . ".json"))->credit/$gcount*100, 2)) ?>% de tous les comptes), <a href="https://money.familine.minteck.org/credit">créditer</a>
-
- <br>
-
<?php
$times = json_decode(file_get_contents("/mnt/faminema/data/durations.json"), true);
@@ -246,7 +230,7 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/private/session.php";
?>
- <img src="/icns/familine-movies.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;"><?= $secstr ?> de contenu, <a href="https://movies.familine.minteck.org/tv">regarder un film</a>
+ <img src="/icns/familine-movies.svg" width="48px" height="48px" style="height:32px;width:32px;margin: 0 5px;"><?= $secstr ?> de contenu, <a href="https://cinema.familine.minteck.org/app/home">regarder un film</a>
<br>
diff --git a/known/index.php b/known/index.php
index 0b89eb5..04c49cc 100644
--- a/known/index.php
+++ b/known/index.php
@@ -29,116 +29,66 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/private/session.php";
<h1>Problèmes connus avec Familine</h1>
<p>Familine est une suite de logiciels intégrés les uns avec les autres de façon à former un uniforme parfait. Malheureusement, aucun logiciel n'est complet et fiable à 100%. Cette page liste les principaux problèmes connus avec les différentes applications de Familine.</p>
<ul class="list-group">
+<!-- <li class="list-group-item list-group-item-action">-->
+<!-- <details>-->
+<!-- <summary>-->
+<!-- <span class="badge badge-pill badge-secondary">Pages</span>-->
+<!-- Pied de page incomplet-->
+<!-- </summary>-->
+<!-- <br>-->
+<!-- <p>Le pied de page actuel est celui par défaut du thème Citizen pour le logiciel MediaWiki. Certaines mentions doivent être modifiées.</p>-->
+<!-- <p class="text-muted">Numéro de problème : FD-01</p>-->
+<!-- </details>-->
+<!-- </li>-->
<li class="list-group-item list-group-item-action">
<details>
<summary>
- <span class="badge badge-pill badge-secondary">Docs</span>
- Page d'accueil incomplète
- </summary>
- <br>
- <p>La page d'accueil de Familine Docs est incomplète et ne fournit aucune information utile pour un utilisateur lambda de Familine.</p>
- <p class="text-muted">Numéro de problème : FD-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Help</span>
+ <span class="badge badge-pill badge-secondary">Aide</span>
Pages d'aide incomplète
</summary>
<br>
<p>Plus précisément :</p>
<ul>
- <li>"Services en ligne multimédia" est incomplet ;</li>
- <li>"Abonnement en ligne Familine Galaxy" doit être retiré ;</li>
- <li>"Stockage en réseau" doit être retiré ;</li>
- <li>"Partage de fichiers avec Familine Share" est vide ;</li>
- <li>"Accéder à la nouvelle version de Famiwiki" est vide ;</li>
- <li>"Consulter la généalogie" renvoie une erreur (404) ;</li>
- <li>"Discuter en ligne" renvoie une erreur (404) ;</li>
- <li>"Mentions légales" renvoie une erreur (404) ;</li>
+<!-- <li>"Accéder à la nouvelle version de Famiwiki" est vide ;</li>-->
+<!-- <li>"Visualiser votre programme d'événements" est vide ;</li>-->
+ <li>"Mentions légales" est vide ;</li>
</ul>
<p class="text-muted">Numéro de problème : FH-01</p>
</details>
</li>
+<!-- <li class="list-group-item list-group-item-action">-->
+<!-- <details>-->
+<!-- <summary>-->
+<!-- <span class="badge badge-pill badge-secondary">Films</span>-->
+<!-- Chargement de l'application lent-->
+<!-- </summary>-->
+<!-- <br>-->
+<!-- <p>Le chargement de l'application Familine Films est excessivement long en raison du fait que le serveur recalcule la durée de contenu à chaque fois ; ajouter un système de cache permettrait d'augmenter les performances.</p>-->
+<!-- <p class="text-muted">Numéro de problème : FM-01</p>-->
+<!-- </details>-->
+<!-- </li>-->
+<!-- <li class="list-group-item list-group-item-action">-->
+<!-- <details>-->
+<!-- <summary>-->
+<!-- <span class="badge badge-pill badge-secondary">Films</span>-->
+<!-- Suggestions "à suivre"-->
+<!-- </summary>-->
+<!-- <br>-->
+<!-- <p>L'ajout d'un système de recommendations, qui s'affiche après le visionnage d'un film, permettrait à un spectateur de rester plus longtemps sur la plate-forme en lui proposant du contenu similaire à celui qu'il vient de regarder.</p>-->
+<!-- <p class="text-muted">Numéro de problème : FM-02</p>-->
+<!-- </details>-->
+<!-- </li>-->
<li class="list-group-item list-group-item-action">
<details>
<summary>
- <span class="badge badge-pill badge-secondary">Money</span>
- Utilité du service remise en cause
- </summary>
- <br>
- <p>Les administrateurs de Familine remettent en cause l'utilité du service Familine Money. Il se pourrait que ce dernier soit retiré de Familine dans le futur et que les données soient supprimées.</p>
- <p>Note : dans ce cas, vous ne pourrez pas récupérer l'argent investi dans Familine Money. Tout l'argent récolté permettra d'améliorer la qualité de service de Familine</p>
- <p class="text-muted">Numéro de problème : FM-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Movies</span>
- Interface bloquée après fermeture d'une boite de dialogue
- </summary>
- <br>
- <p>Lors de la fermeture d'une boîte de dialogue (par exemple l'avertissement sur les droits d'auteurs), l'interface restera bloquée jusqu'au rechargement de la page.</p>
- <p class="text-muted">Numéro de problème : FC-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Photos</span>
- Bouton de connexion accessible
- </summary>
- <br>
- <p>Pour éviter qu'un utilisateur cherche à s'authentifier auprès du portail administratif de Familine Photos, il faudrait masquer le menu utilisateur (avec le bouton de connexion) lorsque l'utilisateur n'est pas connecté.</p>
- <p class="text-muted">Numéro de problème : FP-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Recall</span>
- Le bouton "Importer une généalogie" renvoie vers une page d'erreur (404)
- </summary>
- <br>
- <p>Retirer le bouton semble être une solution plausible et laisser les administrateurs importer manuellement une nouvelle version de la généalogie sur le serveur au besoin.</p>
- <p class="text-muted">Numéro de problème : FR-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Share</span>
- Icônes de fichiers incorrectes
- </summary>
- <br>
- <p>Lors de la visualisation d'un fichier sur Familine Share, l'icône affichée sera une icône inconnue (fichier blanc) ou une icône de remplacement (fichier gris avec point d'interrogation).</p>
- <p class="text-muted">Numéro de problème : FS-01</p>
- </details>
- </li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Yikes</span>
- Appels vocaux et vidéos non fonctionnels
+ <span class="badge badge-pill badge-secondary">Discussions</span>
+ Page d'accueil incomplète
</summary>
<br>
- <p>Familine Yikes dépend du logiciel Conduit. Conduit ne supporte actuellement pas la fonctionnalité Appels, qui sera probablement ajoutée dans le futur par le biais d'une mise à jour du logiciel Conduit.</p>
+ <p>La page d'accueil de Familine Discussions est incomplète et reste la page d'accueil par défaut du logiciel Rocket.Chat.</p>
<p class="text-muted">Numéro de problème : FY-01</p>
</details>
</li>
- <li class="list-group-item list-group-item-action">
- <details>
- <summary>
- <span class="badge badge-pill badge-secondary">Yikes</span>
- Widgets non fonctionnels
- </summary>
- <br>
- <p>Familine Yikes dépend du logiciel Conduit. Conduit ne supporte actuellement pas la fonctionnalité Widgets, qui sera probablement ajoutée dans le futur par le biais d'une mise à jour du logiciel Conduit.</p>
- <p class="text-muted">Numéro de problème : FY-02</p>
- </details>
- </li>
</ul>
</div>
<script>
diff --git a/login.old/embed/index.php b/login.old/embed/index.php
deleted file mode 100644
index 9fc6274..0000000
--- a/login.old/embed/index.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-header("Location: https://" . $_CONFIG["Global"]["federation"] . "/hub/api/rest/oauth2/auth?client_id=" . json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true)["id"] . "&response_type=code&redirect_uri=https://" . $_CONFIG["Global"]["domain"] . "/oauth/embed&scope=hub&request_credentials=default&access_type=offline");
-die();
diff --git a/login.old/index.php b/login.old/index.php
deleted file mode 100644
index 67c01cf..0000000
--- a/login.old/index.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-header("Location: https://" . $_CONFIG["Global"]["federation"] . "/hub/api/rest/oauth2/auth?client_id=" . json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true)["id"] . "&response_type=code&redirect_uri=https://" . $_CONFIG["Global"]["domain"] . "/oauth&scope=hub&request_credentials=default&access_type=offline");
-die();
diff --git a/login/embed/index.php b/login/embed/index.php
deleted file mode 100644
index 2cad6ea..0000000
--- a/login/embed/index.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-header("Location: https://" . $_CONFIG["Global"]["federation"] . "/auth/realms/Familine/protocol/openid-connect/auth?client_id=" . json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true)["id"] . "&response_type=code&redirect_uri=https://" . $_CONFIG["Global"]["domain"] . "/oauth/embed&scope=profile&request_credentials=default&access_type=offline");
-die();
diff --git a/login/index.php b/login/index.php
index 5cda156..cb42cd1 100644
--- a/login/index.php
+++ b/login/index.php
@@ -2,5 +2,5 @@
$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-header("Location: https://" . $_CONFIG["Global"]["federation"] . "/auth/realms/Familine/protocol/openid-connect/auth?client_id=" . json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true)["id"] . "&response_type=code&redirect_uri=https://" . $_CONFIG["Global"]["domain"] . "/oauth&scope=profile&request_credentials=default&access_type=offline");
+header("Location: https://" . $_CONFIG["Global"]["federation"] . "/auth/realms/Familine/protocol/openid-connect/auth?client_id=" . json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true)["id"] . "&response_type=code&redirect_uri=https://" . $_CONFIG["Global"]["domain"] . "/oauth/?r=" . urlencode($_GET['r']) . "&scope=profile&request_credentials=default&access_type=offline");
die();
diff --git a/oauth.old/embed/index.php b/oauth.old/embed/index.php
deleted file mode 100644
index 1a8c513..0000000
--- a/oauth.old/embed/index.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-// TODO: handle errors
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-if (!isset($_GET['code'])) {
- die();
-}
-
-$appdata = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true);
-
-$crl = curl_init('https://account.familine.minteck.org/hub/api/rest/oauth2/token');
-curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
-curl_setopt($crl, CURLINFO_HEADER_OUT, true);
-curl_setopt($crl, CURLOPT_POST, true);
-curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Basic " . base64_encode($appdata["id"] . ":" . $appdata["secret"]),
- "Content-Type: application/x-www-form-urlencoded",
- "Accept: application/json"
-]);
-curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth/embed") . "&code=" . $_GET['code']);
-
-$result = curl_exec($crl);
-$result = json_decode($result, true);
-
-curl_close($crl);
-
-if (isset($result["access_token"])) {
- $crl = curl_init('https://' . $_CONFIG["Global"]["federation"]. '/hub/api/rest/users/me');
- curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($crl, CURLINFO_HEADER_OUT, true);
- curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Bearer " . $result["access_token"],
- "Accept: application/json"
- ]);
-
- $result = curl_exec($crl);
- $result = json_decode($result, true);
-
- $token = bin2hex(random_bytes(32));
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . $token, json_encode($result));
- setcookie("FL_SESSION_TOKEN", $token, strtotime('+365 days'), "/", "." . $_CONFIG["Global"]["domain"], true, true);
-
- header("Location: /statusbar.php");
-} \ No newline at end of file
diff --git a/oauth.old/index.php b/oauth.old/index.php
deleted file mode 100644
index 0cee597..0000000
--- a/oauth.old/index.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-// TODO: handle errors
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-if (!isset($_GET['code'])) {
- die();
-}
-
-$appdata = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true);
-
-$crl = curl_init('https://account.familine.minteck.org/hub/api/rest/oauth2/token');
-curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
-curl_setopt($crl, CURLINFO_HEADER_OUT, true);
-curl_setopt($crl, CURLOPT_POST, true);
-curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Basic " . base64_encode($appdata["id"] . ":" . $appdata["secret"]),
- "Content-Type: application/x-www-form-urlencoded",
- "Accept: application/json"
-]);
-curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth") . "&code=" . $_GET['code']);
-
-$result = curl_exec($crl);
-$result = json_decode($result, true);
-
-curl_close($crl);
-
-if (isset($result["access_token"])) {
- $crl = curl_init('https://' . $_CONFIG["Global"]["federation"]. '/hub/api/rest/users/me');
- curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($crl, CURLINFO_HEADER_OUT, true);
- curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Bearer " . $result["access_token"],
- "Accept: application/json"
- ]);
-
- $result = curl_exec($crl);
- $result = json_decode($result, true);
-
- $token = bin2hex(random_bytes(32));
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . $token, json_encode($result));
- setcookie("FL_SESSION_TOKEN", $token, strtotime('+365 days'), "/", "." . $_CONFIG["Global"]["domain"], true, true);
-
- header("Location: /");
-} \ No newline at end of file
diff --git a/oauth/embed/index.php b/oauth/embed/index.php
deleted file mode 100644
index d77be15..0000000
--- a/oauth/embed/index.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-
-header("Content-Type: text/plain");
-// TODO: handle errors
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
-
-if (!isset($_GET['code'])) {
- die();
-}
-
-$appdata = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/app.json"), true);
-
-$crl = curl_init('https://' . $_CONFIG["Global"]["federation"]. '/auth/realms/Familine/protocol/openid-connect/token');
-curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
-curl_setopt($crl, CURLINFO_HEADER_OUT, true);
-curl_setopt($crl, CURLOPT_POST, true);
-curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Basic " . base64_encode($appdata["id"] . ":" . $appdata["secret"]),
- "Content-Type: application/x-www-form-urlencoded",
- "Accept: application/json"
-]);
-curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth/embed") . "&code=" . $_GET['code']);
-
-$result = curl_exec($crl);
-var_dump($result);
-$result = json_decode($result, true);
-
-curl_close($crl);
-
-if (isset($result["access_token"])) {
- $crl = curl_init('https://' . $_CONFIG["Global"]["federation"]. '/auth/realms/Familine/protocol/openid-connect/userinfo');
- curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($crl, CURLINFO_HEADER_OUT, true);
- curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Bearer " . $result["access_token"],
- "Accept: application/json"
- ]);
-
- $result = curl_exec($crl);
- var_dump($result);
- $result = json_decode($result, true);
-
- $token = bin2hex(random_bytes(32));
- $result["login"] = $result["preferred_username"];
- $result["name_internal"] = $result["name"];
- $result["name"] = $result["family_name"] . " " . $result["given_name"];
- $result["id"] = $result["sub"];
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . $token, json_encode($result));
- setcookie("FL_SESSION_TOKEN", $token, strtotime('+365 days'), "/", "." . $_CONFIG["Global"]["domain"], true, true);
-
- header("Location: /statusbar.php");
-} \ No newline at end of file
diff --git a/oauth/index.php b/oauth/index.php
index 3a98390..b58c9ed 100644
--- a/oauth/index.php
+++ b/oauth/index.php
@@ -19,8 +19,9 @@ curl_setopt($crl, CURLOPT_HTTPHEADER, [
"Content-Type: application/x-www-form-urlencoded",
"Accept: application/json"
]);
-curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth") . "&code=" . $_GET['code']);
+curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth/?r=" . $_GET['r']) . "&code=" . $_GET['code']);
+var_dump("grant_type=authorization_code&redirect_uri=" . urlencode("https://" . $_CONFIG["Global"]["domain"] . "/oauth/?r=" . $_GET['r']) . "&code=" . $_GET['code']);
$result = curl_exec($crl);
var_dump($result);
$result = json_decode($result, true);
@@ -46,7 +47,7 @@ if (isset($result["access_token"])) {
$result["name"] = $result["family_name"] . " " . $result["given_name"];
$result["id"] = $result["sub"];
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . $token, json_encode($result));
- setcookie("FL_SESSION_TOKEN", $token, strtotime('+365 days'), "/", "." . $_CONFIG["Global"]["domain"], true, true);
+ setcookie("FL_SESSION_TOKEN", $token, 0, "/", "." . $_CONFIG["Global"]["domain"], true, true);
- header("Location: /");
+ header("Location: " . $_GET['r']);
} \ No newline at end of file
diff --git a/private/session.php b/private/session.php
index 7a37d8a..37ff9e7 100644
--- a/private/session.php
+++ b/private/session.php
@@ -1,31 +1,35 @@
<?php
-$_CONFIG = json_decode(file_get_contents($_SERVER["DOCUMENT_ROOT"] . "/private/FamilineConfig.json"), true);
+global $_CONFIG;
+$_CONFIG = json_decode(file_get_contents("/mnt/familine/private/FamilineConfig.json"), true);
-if (isset($_COOKIE['FL_SESSION_TOKEN'])) {
- if (strpos($_COOKIE['FL_SESSION_TOKEN'], ".") !== false || strpos($_COOKIE['FL_SESSION_TOKEN'], "/") !== false) {
- header("Location: /welcome");
- die();
- }
+if ($_SERVER['REMOTE_ADDR'] !== "127.0.0.1" && $_SERVER['REMOTE_ADDR'] !== "::0") {
+ if (isset($_COOKIE['FL_SESSION_TOKEN'])) {
+ if (strpos($_COOKIE['FL_SESSION_TOKEN'], ".") !== false || strpos($_COOKIE['FL_SESSION_TOKEN'], "/") !== false) {
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
+ die();
+ }
- if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN'])))) {
- $_PROFILE = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN']))), true);
+ if (file_exists("/mnt/familine/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN'])))) {
+ $_PROFILE = json_decode(file_get_contents("/mnt/familine/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN']))), true);
- if (isset($_PROFILE['familine'])) {
- header("Location: /welcome");
+ if (isset($_PROFILE['familine'])) {
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
+ die();
+ }
+
+ $_USER = $_PROFILE['login'];
+ $_SUID = $_PROFILE['login'];
+ $_FULLNAME = $_PROFILE['name'];
+ } else {
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
-
- $_USER = $_PROFILE['login'];
- $_SUID = $_PROFILE['login'];
- $_FULLNAME = $_PROFILE['name'];
} else {
- header("Location: /welcome");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
-} else {
- header("Location: /welcome");
- die();
+
}
if (isset($_PROFILE["projectRoles"]) && is_array($_PROFILE["projectRoles"]) && isset($_PROFILE["projectRoles"][0]) && is_array($_PROFILE["projectRoles"][0]) && isset($_PROFILE["projectRoles"][0]["role"]) && is_array($_PROFILE["projectRoles"][0]["role"]) && isset($_PROFILE["projectRoles"][0]["role"]["key"]) && is_string($_PROFILE["projectRoles"][0]["role"]["key"]) && $_PROFILE["projectRoles"][0]["role"]["key"] === "system-admin") {
diff --git a/statusbar.php b/statusbar.php
index 40cec35..a6e80ab 100644
--- a/statusbar.php
+++ b/statusbar.php
@@ -1,11 +1,14 @@
<?php
+global $_CONFIG;
+$_CONFIG = json_decode(file_get_contents("/mnt/familine/private/FamilineConfig.json"), true);
+
if (isset($_COOKIE['FL_SESSION_TOKEN'])) {
if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN'])))) {
$_PROFILE = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/private/tokens/" . str_replace(".", "", str_replace("/", "", $_COOKIE['FL_SESSION_TOKEN']))), true);
if (isset($_PROFILE['familine'])) {
- header("Location: /login/embed");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
@@ -13,11 +16,11 @@ if (isset($_COOKIE['FL_SESSION_TOKEN'])) {
$_SUID = $_PROFILE['login'];
$_FULLNAME = $_PROFILE['name'];
} else {
- header("Location: /login/embed");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
} else {
- header("Location: /login/embed");
+ header("Location: https://" . $_CONFIG["Global"]["domain"] . "/login/?r=" . urlencode("https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"));
die();
}
@@ -112,14 +115,14 @@ if (isset($_PROFILE["projectRoles"]) && is_array($_PROFILE["projectRoles"]) && i
</style>
<div id="statusbar">
<a title="Accueil de Familine" href="https://familine.minteck.org" target="_parent"><span class="logo" style="display: inline-block;top: 0;position: relative;padding: 8px 7px 7px 7px;margin: -11px 0;"><img src="https://familine.minteck.org/favicon.svg" style="width: 16px;vertical-align: middle;position: relative;top: -2px;"> Familine</span></a>
- <span id="apps-desktop" <?= $_SERVER['HTTP_REFERER'] === "https://familine.minteck.org/" ? "style=\"display: none;\"" : "" ?>><span style="opacity: .25;">|</span><a style="text-decoration: none;" title="Familine Docs" href="https://docs.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-docs.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Help" href="https://support.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-help.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Money" href="https://money.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-money.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Movies" href="https://cinema.familine.minteck.org" target="_parent">
+ <span id="apps-desktop" <?= $_SERVER['HTTP_REFERER'] === "https://familine.minteck.org/" ? "style=\"display: none;\"" : "" ?>><span style="opacity: .25;">|</span><a style="text-decoration: none;" title="Familine Pages" href="https://docs.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-docs.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Aide" href="https://support.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-help.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Films" href="https://cinema.familine.minteck.org" target="_parent">
<span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-movies.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Photos" href="https://photos.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-photos.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Recall" href="https://genealogy.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-recall.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Share" href="https://share.familine.minteck.org" target="_parent">
- <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-share.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Yikes" href="https://chat.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-photos.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Planning" href="https://planning.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-planning.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Généalogie" href="https://genealogy.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-recall.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Partage" href="https://share.familine.minteck.org" target="_parent">
+ <span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-share.svg" style="width: 20px;vertical-align: middle;"></span></a><a style="text-decoration: none;" title="Familine Discussions" href="https://chat.familine.minteck.org" target="_parent">
<span class="logo" style="display: inline-block;top: -2px;position: relative;padding: 6px 2px 7px 2px;margin: -11px 0;"><img src="https://familine.minteck.org/icns/familine-you.svg" style="width: 20px;vertical-align: middle;"></span></a>
</span>
<div id="user">
diff --git a/version.txt b/version.txt
index fc5e6fc..b3232ec 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-4.5.2 (accès anticipé) \ No newline at end of file
+4.7.13 (accès anticipé)
diff --git a/welcome/index.php b/welcome/index.php
deleted file mode 100644
index aecdc34..0000000
--- a/welcome/index.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-
-header("Location: /login");
-die(); \ No newline at end of file