From c0dc531ebefd8912819f3b6c8bda1fed3c7e750c Mon Sep 17 00:00:00 2001 From: Evgeny Zinoviev Date: Wed, 31 Jan 2024 06:11:00 +0300 Subject: make it simple, but not simpler --- skin/admin.skin.php | 8 ++++---- skin/base.skin.php | 17 +++++++++-------- skin/error.skin.php | 27 +++++---------------------- 3 files changed, 18 insertions(+), 34 deletions(-) (limited to 'skin') diff --git a/skin/admin.skin.php b/skin/admin.skin.php index b2d9bb4..d2fc148 100644 --- a/skin/admin.skin.php +++ b/skin/admin.skin.php @@ -135,8 +135,8 @@ function postForm($ctx, $form_url = !$is_edit ? '/write/' : $post_url.'edit/'; $html = <<if_true($error_code, '
'.$ctx->lang('err_blog_'.$error_code).'
')} -{$ctx->if_true($saved, '
'.$ctx->lang('info_saved').'
')} +{$ctx->if_true($error_code, fn() => '
'.$ctx->lang('err_blog_'.$error_code).'
')} +{$ctx->if_true($saved, fn() => '
'.$ctx->lang('info_saved').'
')}
@@ -228,8 +228,8 @@ function pageForm($ctx, bool $visible = false): array { $form_url = '/'.$short_name.'/'.($is_edit ? 'edit' : 'create').'/'; $html = <<if_true($error_code, '
'.$ctx->lang('err_pages_'.$error_code).'
')} -{$ctx->if_true($saved, '
'.$ctx->lang('info_saved').'
')} +{$ctx->if_true($error_code, fn() => '
'.$ctx->lang('err_pages_'.$error_code).'
')} +{$ctx->if_true($saved, fn() => '
'.$ctx->lang('info_saved').'
')}
diff --git a/skin/base.skin.php b/skin/base.skin.php index d39a0a8..d583ffe 100644 --- a/skin/base.skin.php +++ b/skin/base.skin.php @@ -2,9 +2,6 @@ namespace skin\base; -use admin; -use RequestDispatcher; - function layout($ctx, $title, $unsafe_body, $static, $meta, $js, $opts, $exec_time, $unsafe_lang, $theme) { global $config; $app_config = json_encode([ @@ -15,9 +12,13 @@ $app_config = json_encode([ $body_class = []; if ($opts['full_width']) - $body_class = 'full-width'; + $body_class[] = 'full-width'; else if ($opts['wide']) - $body_class = 'wide'; + $body_class[] = 'wide'; +if (!empty($body_class)) + $body_class = implode(' ', $body_class); +else + $body_class = ''; return << @@ -196,7 +197,7 @@ $items = [ ['url' => '/misc/', 'label' => 'misc'], ['url' => '/contacts/', 'label' => 'contacts'], ]; -if (\admin::isAdmin()) +if (\is_admin()) $items[] = ['url' => '/admin/', 'label' => 'admin']; // here, items are rendered using for_each, so that there are no gaps (whitespaces) between tags @@ -226,9 +227,9 @@ HTML; // TODO rewrite this fcking crap function renderLogo($ctx, array $path_map = [], array $link_map = []): string { - $uri = RequestDispatcher::path(); + $uri = request_path(); - if (!admin::isAdmin()) { + if (!is_admin()) { $prompt_sign = '$'; } else { $prompt_sign = '#'; diff --git a/skin/error.skin.php b/skin/error.skin.php index 5276bfa..8f7e4c7 100644 --- a/skin/error.skin.php +++ b/skin/error.skin.php @@ -4,34 +4,17 @@ namespace skin\error; use Stringable; -function forbidden($ctx, $message) { - return $ctx->common(403, 'Forbidden', $message); -} - -function not_found($ctx, $message) { - return $ctx->common(404, 'Not Found', $message); -} - -function unauthorized($ctx, $message) { - return $ctx->common(401, 'Unauthorized', $message); -} - -function not_implemented($ctx, $message) { - return $ctx->common(501, 'Not Implemented', $message); -} - -function common($ctx, - int $code, - string|Stringable $title, - string|Stringable|null $message = null) { +function http_error($ctx, + int $code, + string|Stringable $title, + string|Stringable|null $message = null) { return << $code $title

$code $title

-
{$ctx->if_true($message, - '

'.$message.'

' + '

'.$message.'

' )} -- cgit v1.2.3