151 lines
7.1 KiB
PHP
151 lines
7.1 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="<?= Yii::$language ?>">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
<?php require __DIR__ . '/components/theme-style.php'; ?>
|
|
<?php require __DIR__ . '/components/theme-client.php'; ?>
|
|
<script>window.ZoomzillaAnalyticsConfig={endpoint:<?= json_encode($apiHost) ?>};<?= require __DIR__.'/components/analytics-client.php' ?></script>
|
|
|
|
<title><?= $page_title ?? $default_title ?></title>
|
|
|
|
<link rel="icon" type="image/x-icon" href="<?= $favicon->baseUrl ?>/favicon.ico">
|
|
<link rel="icon" type="image/svg+xml" href="<?= $favicon->baseUrl ?>/favicon.svg">
|
|
<link rel="icon" type="image/png" sizes="32x32" href="<?= $favicon->baseUrl ?>/favicon-32x32.png">
|
|
<link rel="icon" type="image/png" sizes="16x16" href="<?= $favicon->baseUrl ?>/favicon-16x16.png">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="<?= $favicon->baseUrl ?>/apple-touch-icon.png">
|
|
<link rel="manifest" href="<?= $favicon->baseUrl ?>/site.webmanifest">
|
|
|
|
<link rel="preload" href="<?= $fontsUrl ?>/Inter-Regular.woff2" as="font" type="font/woff2" crossorigin>
|
|
<link rel="preload" href="<?= $fontsUrl ?>/Inter-Medium.woff2" as="font" type="font/woff2" crossorigin>
|
|
<link rel="preload" href="<?= $fontsUrl ?>/Inter-SemiBold.woff2" as="font" type="font/woff2" crossorigin>
|
|
|
|
<meta name="description" content="Онлайн-сервис для автоматического улучшения качества фотографий и изображений с помощью искусственного интеллекта.">
|
|
|
|
<?php
|
|
// Сет целиком копируется из Index в корень домена: /1, /2 и т. д.
|
|
// Не вводим промежуточный images/demo: оператор заменяет одну папку сета.
|
|
$baseDemoDir = __DIR__ . "/{$indpic}";
|
|
|
|
$fSrcMob = $baseDemoDir . "/01_mob_1-source.avif";
|
|
$fSrcOrig = $baseDemoDir . "/01_desk_1-source.avif";
|
|
$vSrcMob = file_exists($fSrcMob) ? filemtime($fSrcMob) : '1';
|
|
$vSrcOrig = file_exists($fSrcOrig) ? filemtime($fSrcOrig) : '1';
|
|
|
|
$fResMob = $baseDemoDir . "/01_mob_2-result.avif";
|
|
$fResOrig = $baseDemoDir . "/01_desk_2-result.avif";
|
|
$vResMob = file_exists($fResMob) ? filemtime($fResMob) : '1';
|
|
$vResOrig = file_exists($fResOrig) ? filemtime($fResOrig) : '1';
|
|
|
|
$urlSrcMob = "{$assetsUriPrefix}/{$indpic}/01_mob_1-source.avif?v={$vSrcMob}";
|
|
$urlSrcOrig = "{$assetsUriPrefix}/{$indpic}/01_desk_1-source.avif?v={$vSrcOrig}";
|
|
|
|
$urlResMob = "{$assetsUriPrefix}/{$indpic}/01_mob_2-result.avif?v={$vResMob}";
|
|
$urlResOrig = "{$assetsUriPrefix}/{$indpic}/01_desk_2-result.avif?v={$vResOrig}";
|
|
?>
|
|
|
|
<link rel="preload" as="image" href="<?= $urlSrcMob ?>" media="(max-width: 767.98px)" type="image/avif" fetchpriority="high">
|
|
<link rel="preload" as="image" href="<?= $urlResMob ?>" media="(max-width: 767.98px)" type="image/avif" fetchpriority="high">
|
|
|
|
<link rel="preload" as="image" href="<?= $urlSrcOrig ?>" media="(min-width: 768px)" type="image/avif" fetchpriority="high">
|
|
<link rel="preload" as="image" href="<?= $urlResOrig ?>" media="(min-width: 768px)" type="image/avif" fetchpriority="high">
|
|
|
|
<style><?= file_get_contents(__DIR__ . '/style.min.css'); ?></style>
|
|
<style><?= file_get_contents(__DIR__ . '/popup-theme.css'); ?></style>
|
|
<style><?= require __DIR__ . '/components/upload-picker-style.php'; ?></style>
|
|
<?php require_once __DIR__ . '/components/browser-upload.php'; ?>
|
|
</head>
|
|
<body class="<?= $themeInitial === 'dark' ? 'theme-dark' : '' ?>">
|
|
<script>window.ZoomzillaTheme.refresh();</script>
|
|
<div class="wrapper">
|
|
<header class="header">
|
|
<nav class="navbar navbar-dark py-1 py-md-3 px-0">
|
|
<div class="container">
|
|
<span class="navbar-brand" href="<?= $apiHost ?: '/' ?>" >
|
|
<img src="<?= prelandAssetUrl('docs/logo.svg') ?>" width="182" height="47" alt="Логотип <?= htmlspecialchars(prelandSiteDomain($_SERVER), ENT_QUOTES, 'UTF-8') ?>">
|
|
<img src="<?= prelandAssetUrl('docs/logo-alt.svg') ?>" width="182" height="47" alt="Логотип <?= htmlspecialchars(prelandSiteDomain($_SERVER), ENT_QUOTES, 'UTF-8') ?>">
|
|
</span>
|
|
<div class="d-flex align-items-center">
|
|
<?php $themeLabels = ['group' => Yii::t('app', 'Тема оформления'), 'light' => Yii::t('app', 'Светлая тема'), 'dark' => Yii::t('app', 'Тёмная тема')]; require __DIR__ . '/components/theme-switch.php'; ?>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
|
<div class="container">
|
|
<div class="dashboard-nav nav flex-column nav-pills header-navbar" role="tablist" aria-orientation="vertical">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</header>
|
|
<main class="site">
|
|
<div class="py-4 main-section index-mobile-fit">
|
|
<div class="container">
|
|
<div class="row">
|
|
|
|
<div class="col-md-7 order-md-1">
|
|
<?php renderComponent('examples', ['assetsUriPrefix' => $assetsUriPrefix, 'indpic' => $indpic]); ?>
|
|
<?php renderComponent('process', ['assetsUriPrefix' => $assetsUriPrefix, 'show' => false]); ?>
|
|
</div>
|
|
|
|
<div class="col-md-5">
|
|
<?php renderComponent('form', ['assetsUriPrefix' => $assetsUriPrefix]); ?>
|
|
<?php renderComponent('preview', ['assetsUriPrefix' => $assetsUriPrefix, 'show' => false]); ?>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
|
|
<footer class="footer">
|
|
|
|
<div class="container">
|
|
<div class="row py-5 footer-main">
|
|
<div class="col-md-4 mb-4 mb-md-0">
|
|
<div class="footer-logo">
|
|
<img src="<?= prelandAssetUrl('docs/logo.svg') ?>" width="182" height="47" alt="Логотип <?= htmlspecialchars(prelandSiteDomain($_SERVER), ENT_QUOTES, 'UTF-8') ?>">
|
|
<img src="<?= prelandAssetUrl('docs/logo-alt.svg') ?>" width="182" height="47" alt="Логотип <?= htmlspecialchars(prelandSiteDomain($_SERVER), ENT_QUOTES, 'UTF-8') ?>">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row footer-bottom py-3">
|
|
<div class="col-6">
|
|
<p class="m-0"><?= date('Y') ?>© <?= htmlspecialchars(prelandSiteDomain($_SERVER), ENT_QUOTES, 'UTF-8') ?></p>
|
|
</div>
|
|
<?php if (Yii::t('app', 'system.hide.footer') == 'false') { ?>
|
|
<div class="col-6">
|
|
<p class="m-0 text-md-right"><?= Yii::t('app', 'Сайт не является публичной офертой') ?></p>
|
|
</div>
|
|
<?php } ?>
|
|
</div>
|
|
</div>
|
|
|
|
</footer> <!-- .footer -->
|
|
</div> <!-- .wrapper -->
|
|
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
const toggler = document.querySelector('.navbar-toggler');
|
|
const collapse = document.getElementById('navbarSupportedContent');
|
|
if (toggler && collapse) {
|
|
toggler.addEventListener('click', (e) => {
|
|
e.preventDefault();
|
|
const isShown = collapse.classList.contains('show');
|
|
if (isShown) {
|
|
collapse.classList.remove('show');
|
|
toggler.classList.add('collapsed');
|
|
toggler.setAttribute('aria-expanded', 'false');
|
|
} else {
|
|
collapse.classList.add('show');
|
|
toggler.classList.remove('collapsed');
|
|
toggler.setAttribute('aria-expanded', 'true');
|
|
}
|
|
});
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|