aboutsummaryrefslogtreecommitdiff
path: root/app/views
diff options
context:
space:
mode:
authorGravatar maTh <math-home@web.de> 2021-10-16 12:44:02 +0200
committerGravatar GitHub <noreply@github.com> 2021-10-16 12:44:02 +0200
commitc23702eaa5d61aa83b47023d118ebb905d39ccd6 (patch)
treed4e6c9210d70f992cb1186a93a82c7584c48f33e /app/views
parente9b62d1d76356e4f32d61e4f9e45a91946435be7 (diff)
Fix #3835: theme switcher broken when theme is not available (#3874)
* FIx the function: add an error slide * i18n for the error message * fix the message * i18n: nl * phpcbf * Typographic quotation marks +fr +en-US * Unicode instead of entities * Whitespace Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
Diffstat (limited to 'app/views')
-rw-r--r--app/views/configure/display.phtml60
1 files changed, 39 insertions, 21 deletions
diff --git a/app/views/configure/display.phtml b/app/views/configure/display.phtml
index efc15fdd1..1ce4be5cd 100644
--- a/app/views/configure/display.phtml
+++ b/app/views/configure/display.phtml
@@ -26,21 +26,26 @@
<label class="group-name" for="theme"><?= _t('conf.display.theme') ?></label>
<div class="group-controls">
<ul class="slides">
- <?php $slides = count($this->themes); $i = 1; ?>
+ <?php $slides = count($this->themes); $i = 1; $themeAvailable = false; ?>
<?php foreach($this->themes as $theme) { ?>
- <input type="radio" name="theme" id="img-<?= $i ?>" <?=
- FreshRSS_Context::$user_conf->theme === $theme['id'] ? 'checked="checked"' : '' ?> value="<?= $theme['id'] ?>"
- data-leave-validation="<?= (FreshRSS_Context::$user_conf->theme === $theme['id']) ? 1 : 0 ?>"/>
+ <?php if (FreshRSS_Context::$user_conf->theme === $theme['id']) {
+ $checked = 'checked="checked"';
+ $themeAvailable = true;
+ } else {
+ $checked = '';
+ } ?>
+ <input type="radio" name="theme" id="img-<?= $i ?>" <?= $checked ?> value="<?= $theme['id'] ?>"
+ data-leave-validation="<?= (FreshRSS_Context::$user_conf->theme === $theme['id']) ? 1 : 0 ?>" />
<li class="slide-container">
<div class="slide">
- <img src="<?= Minz_Url::display('/themes/' . $theme['id'] . '/thumbs/original.png') ?>"/>
+ <img src="<?= Minz_Url::display('/themes/' . $theme['id'] . '/thumbs/original.png') ?>" />
</div>
<div class="nav">
<?php if ($i !== 1) {?>
- <label for="img-<?= $i - 1 ?>" class="prev">&#x2039;</label>
+ <label for="img-<?= $i - 1 ?>" class="prev">‹</label>
<?php } ?>
<?php if ($i !== $slides) {?>
- <label for="img-<?= $i + 1 ?>" class="next">&#x203a;</label>
+ <label for="img-<?= $i + 1 ?>" class="next">›</label>
<?php } ?>
</div>
<div class="properties">
@@ -51,6 +56,19 @@
</li>
<?php $i++ ?>
<?php } ?>
+ <?php if (!$themeAvailable) {?>
+ <input type="radio" name="theme" checked="checked" value="Origine" data-leave-validation="0" />
+ <li class="slide-container">
+ <div class="slide">
+ </div>
+ <div class="nav">
+ <label for="img-<?= $i - 1 ?>" class="prev">‹</label>
+ </div>
+ <div class="properties alert-error">
+ <div><?= _t('conf.display.theme_not_available', FreshRSS_Context::$user_conf->theme)?></div>
+ </div>
+ </li>
+ <?php }?>
</ul>
</div>
</div>
@@ -119,45 +137,45 @@
<th><?= _t('conf.display.icon.top_line') ?></th>
<td><input type="checkbox" name="topline_read" value="1"<?=
FreshRSS_Context::$user_conf->topline_read ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_read ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_read ?>" /></td>
<td><input type="checkbox" name="topline_favorite" value="1"<?=
FreshRSS_Context::$user_conf->topline_favorite ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_favorite ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_favorite ?>" /></td>
<td><input type="checkbox" disabled="disabled" /></td>
<td><input type="checkbox" disabled="disabled" /></td>
<td><input type="checkbox" name="topline_summary" value="1"<?=
FreshRSS_Context::$user_conf->topline_summary ? 'checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_summary ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_summary ?>" /></td>
<td><input type="checkbox" name="topline_display_authors" value="1"<?=
FreshRSS_Context::$user_conf->topline_display_authors ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_display_authors ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_display_authors ?>" /></td>
<td><input type="checkbox" name="topline_date" value="1"<?=
FreshRSS_Context::$user_conf->topline_date ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_date ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_date ?>" /></td>
<td><input type="checkbox" name="topline_link" value="1"<?= FreshRSS_Context::$user_conf->topline_link ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_link ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->topline_link ?>" /></td>
</tr><tr>
<th><?= _t('conf.display.icon.bottom_line') ?></th>
<td><input type="checkbox" name="bottomline_read" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_read ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_read ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_read ?>" /></td>
<td><input type="checkbox" name="bottomline_favorite" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_favorite ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_favorite ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_favorite ?>" /></td>
<td><input type="checkbox" name="bottomline_tags" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_tags ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_tags ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_tags ?>" /></td>
<td><input type="checkbox" name="bottomline_sharing" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_sharing ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_sharing ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_sharing ?>" /></td>
<td><input type="checkbox" disabled="disabled" /></td>
<td><input type="checkbox" disabled="disabled" /></td>
<td><input type="checkbox" name="bottomline_date" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_date ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_date ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_date ?>" /></td>
<td><input type="checkbox" name="bottomline_link" value="1"<?=
FreshRSS_Context::$user_conf->bottomline_link ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_link ?>"/></td>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->bottomline_link ?>" /></td>
</tr>
</tbody>
</table>
@@ -169,7 +187,7 @@
<div class="group-controls">
<input type="number" id="html5_notif_timeout" name="html5_notif_timeout" value="<?=
FreshRSS_Context::$user_conf->html5_notif_timeout ?>"
- data-leave-validation="<?= FreshRSS_Context::$user_conf->html5_notif_timeout ?>"/> <?= _t('conf.display.notif_html5.seconds') ?>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->html5_notif_timeout ?>" /> <?= _t('conf.display.notif_html5.seconds') ?>
</div>
</div>
@@ -178,7 +196,7 @@
<label class="checkbox" for="show_nav_buttons">
<input type="checkbox" name="show_nav_buttons" id="show_nav_buttons" value="1"<?=
FreshRSS_Context::$user_conf->show_nav_buttons ? ' checked="checked"' : '' ?>
- data-leave-validation="<?= FreshRSS_Context::$user_conf->show_nav_buttons ?>"/>
+ data-leave-validation="<?= FreshRSS_Context::$user_conf->show_nav_buttons ?>" />
<?= _t('conf.display.show_nav_buttons') ?>
</label>
</div>