hedera-web/web/html.php

65 lines
1.5 KiB
PHP

<?php
$lang = isset($_SESSION['lang']) ? $_SESSION['lang'] : 'en';
$version = $this->getVersion();
function getUrl($fileName) {
global $version;
if (file_exists($fileName))
$fileVersion = strftime('%G%m%d%H%M%S', filemtime($fileName));
else
$fileVersion = $version;
return "$fileName?$fileVersion";
}
function js($fileName) {
return '<script type="text/javascript" src="'. getUrl("$fileName.js") .'"></script>'."\n";
}
function css($fileName) {
return '<link rel="stylesheet" type="text/css" href="'. getUrl("$fileName.css") .'"/>'."\n";
}
function getWebpackAssets() {
$wpConfig = json_decode(file_get_contents('webpack.config.json'));
$buildDir = $wpConfig->buildDir;
$devServerPort = $wpConfig->devServerPort;
$host = $_SERVER['SERVER_NAME'];
$assets = new stdClass();
if (!_DEV_MODE) {
$wpAssets = json_decode(file_get_contents("$buildDir/webpack-assets.json"));
$manifestJs = $wpAssets->manifest->js;
$mainJs = $wpAssets->main->js;
unset($wpAssets->manifest);
unset($wpAssets->main);
foreach ($wpAssets as $name => $asset)
if (property_exists($asset, 'js'))
$assets->$name = $asset->js;
} else {
$devServerPath = "http://$host:$devServerPort/$buildDir";
$manifestJs = "$devServerPath/manifest.js";
$mainJs = "$devServerPath/main.js";
unset($wpConfig->entry->main);
foreach ($wpConfig->entry as $asset => $files)
$assets->$asset = "$devServerPath/$asset.js";
}
$jsFiles = [];
$jsFiles[] = $manifestJs;
foreach ($assets as $jsFile)
$jsFiles[] = $jsFile;
$jsFiles[] = $mainJs;
return $jsFiles;
}