From b9db936461d4cb914958bb3256bb910bbd7ba815 Mon Sep 17 00:00:00 2001
From: Yassine Doghri <yassine@doghri.fr>
Date: Fri, 1 Oct 2021 09:49:56 +0000
Subject: [PATCH] fix: pass timezone to relative time component to show the
 localized time in the UI

---
 app/Helpers/components_helper.php        |  2 +-
 themes/cp_admin/episode/publish.php      | 14 ++++----------
 themes/cp_admin/episode/publish_edit.php | 14 ++++----------
 3 files changed, 9 insertions(+), 21 deletions(-)

diff --git a/app/Helpers/components_helper.php b/app/Helpers/components_helper.php
index f77d66ad92..657eca2d32 100644
--- a/app/Helpers/components_helper.php
+++ b/app/Helpers/components_helper.php
@@ -383,7 +383,7 @@ if (! function_exists('relative_time')) {
     function relative_time(Time $time, string $class = ''): string
     {
         $translatedDate = lang('Common.mediumDate', [$time]);
-        $datetime = $time->toDateTimeString();
+        $datetime = $time->format(DateTime::ISO8601);
 
         return <<<CODE_SAMPLE
             <time-ago class="{$class}" datetime="{$datetime}">
diff --git a/themes/cp_admin/episode/publish.php b/themes/cp_admin/episode/publish.php
index ab4f51f8af..cbe616ac77 100644
--- a/themes/cp_admin/episode/publish.php
+++ b/themes/cp_admin/episode/publish.php
@@ -73,17 +73,11 @@
 <legend class="text-lg font-semibold"><?= lang(
         'Episode.publish_form.publication_date',
     ) ?></legend>
-    <Forms.Radio id="now" name="publication_method" isChecked="<?= old('publication_method') ? old('publish') === 'now' : true ?>"><?= lang('Episode.publish_form.publication_method.now') ?></Forms.Radio>
+    <Forms.Radio value="now" name="publication_method" isChecked="<?= old('publication_method') ? old('publish') === 'now' : true ?>"><?= lang('Episode.publish_form.publication_method.now') ?></Forms.Radio>
     <div class="inline-flex flex-wrap items-center radio-toggler">
-        <?= form_radio(
-        [
-            'id' => 'schedule',
-            'name' => 'publication_method',
-            'class' => 'text-pine-500 border-black border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 w-6 h-6',
-        ],
-        'schedule',
-        old('publication_method') && old('publication_method') === 'schedule',
-    ) ?>
+        <input
+            class="w-6 h-6 border-black text-pine-500 border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100"
+            type="radio" id="schedule" name="publication_method" value="schedule" <?= old('publication_method') && old('publication_method') === 'schedule' ? 'checked' : '' ?> />
         <Label for="schedule" class="pl-2 leading-8"><?= lang('Episode.publish_form.publication_method.schedule') ?></label>
         <div class="w-full mt-2 radio-toggler-element">
             <Forms.Field
diff --git a/themes/cp_admin/episode/publish_edit.php b/themes/cp_admin/episode/publish_edit.php
index 1c872055c5..c38970c7a3 100644
--- a/themes/cp_admin/episode/publish_edit.php
+++ b/themes/cp_admin/episode/publish_edit.php
@@ -77,17 +77,11 @@
 <legend class="text-lg font-semibold"><?= lang(
                     'Episode.publish_form.publication_date',
                 ) ?></legend>
-    <Forms.Radio id="now" name="publication_method" isChecked="<?= old('publication_method') && old('publish') === 'now' ?>"><?= lang('Episode.publish_form.publication_method.now') ?></Forms.Radio>
+    <Forms.Radio value="now" name="publication_method" isChecked="<?= old('publication_method') && old('publish') === 'now' ?>"><?= lang('Episode.publish_form.publication_method.now') ?></Forms.Radio>
     <div class="inline-flex flex-wrap items-center radio-toggler">
-        <?= form_radio(
-                    [
-                        'id' => 'schedule',
-                        'name' => 'publication_method',
-                        'class' => 'text-pine-500 border-black border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 w-6 h-6',
-                    ],
-                    'schedule',
-                    old('publication_method') ? old('publication_method') === 'schedule' : true,
-                ) ?>
+        <input
+            class="w-6 h-6 border-black text-pine-500 border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100"
+            type="radio" id="schedule" name="publication_method" value="schedule" <?= old('publication_method') ? old('publication_method') === 'schedule' : 'checked' ?> />
         <Label for="schedule" class="pl-2 leading-8"><?= lang('Episode.publish_form.publication_method.schedule') ?></label>
         <div class="w-full mt-2 radio-toggler-element">
             <Forms.Field
-- 
GitLab