add content language selection #14

This commit is contained in:
ghost 2023-09-25 01:30:28 +03:00
parent d77ad74d32
commit 0d840a5ab5
4 changed files with 100 additions and 52 deletions

View file

@ -46,9 +46,32 @@ class AppControllerPage
public function renderFormDescription()
{
// Prepare locales
$locales = [];
foreach (Environment::config('locales') as $key => $value)
{
$locales[$key] = (object)
[
'key' => $key,
'value' => $value[0],
'active' => false !== stripos($_SERVER['HTTP_ACCEPT_LANGUAGE'], $key) ? true : false,
];
}
// Init form
$form = (object)
[
'locale' => (object)
[
'error' => [],
'values' => $locales,
'attribute' => (object)
[
'value' => null,
'placeholder' => _('Page content language'),
]
],
'title' => (object)
[
'error' => [],

View file

@ -13,6 +13,30 @@
<h1><?php echo _('Submit') ?></h1>
</div>
<form class="margin-t-8" name="submit" method="post" enctype="multipart/form-data" action="page/form">
<div class="margin-b-16">
<label for="locale">
<?php echo _('Content language') ?>
</label>
<sub class="opacity-0 parent-hover-opacity-09"
title="<?php echo $form->locale->attribute->placeholder ?>">
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" fill="currentColor" class="bi bi-info-circle-fill" viewBox="0 0 16 16">
<path d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z"/>
</svg>
</sub>
<select class="width-100 margin-t-8" type="text" name="locale" id="locale">
<?php foreach ($form->locale->values as $locale) { ?>
<?php if ($locale->active) { ?>
<option value="<?php echo $locale->key ?>" selected="selected">
<?php echo $locale->value ?>
</option>
<?php } else { ?>
<option value="<?php echo $locale->key ?>">
<?php echo $locale->value ?>
</option>
<?php } ?>
<?php } ?>
</select>
</div>
<div class="margin-b-16">
<label for="title">
<?php echo _('Title') ?>