Skip to content

Commit

Permalink
i18n JS translations extracted to translations.js.php for caching pur…
Browse files Browse the repository at this point in the history
…pose
  • Loading branch information
Simounet committed Sep 23, 2022
1 parent de3b566 commit 52a26c8
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 3 deletions.
5 changes: 2 additions & 3 deletions templates/marigolds/footer.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,8 @@
</div>
</div>

<script>
var i18n = {$i18n_js};
</script>

<script src="../../translations.js.php"></script>
<script src="js/libs/jqueryAndModernizr.min.js"></script>
<script src="js/script.js"></script>
{function="Plugin::callJs()"}
Expand Down
25 changes: 25 additions & 0 deletions translations.js.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<?php
require_once('i18n.php');
class_exists('MysqlEntity') or require_once('MysqlEntity.class.php');
class_exists('User') or require_once('User.class.php');
class_exists('Configuration') or require_once('Configuration.class.php');
$configurationManager = new Configuration();
$conf = $configurationManager->getAll();

$theme = $configurationManager->get('theme');
$myUser = (isset($_SESSION['currentUser'])?unserialize($_SESSION['currentUser']):false);
if (empty($myUser)) {
/* Pas d'utilisateur dans la session ?
* On tente de récupérer une nouvelle session avec un jeton. */
$myUser = User::existAuthToken();
$_SESSION['currentUser'] = serialize($myUser);
}
if (!$myUser) {
$languages = Translation::getHttpAcceptLanguages();
} else {
$languages = array($configurationManager->get('language'));
}

i18n_init($languages, dirname(__FILE__).'/templates/'.$theme.'/');
header('Content-Type: application/javascript; charset=utf-8');
echo "var i18n = {$i18n_js};";

0 comments on commit 52a26c8

Please sign in to comment.