diff options
| author | 2021-10-16 12:44:02 +0200 | |
|---|---|---|
| committer | 2021-10-16 12:44:02 +0200 | |
| commit | c23702eaa5d61aa83b47023d118ebb905d39ccd6 (patch) | |
| tree | d4e6c9210d70f992cb1186a93a82c7584c48f33e /app/views | |
| parent | e9b62d1d76356e4f32d61e4f9e45a91946435be7 (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.phtml | 60 |
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">‹</label> + <label for="img-<?= $i - 1 ?>" class="prev">‹</label> <?php } ?> <?php if ($i !== $slides) {?> - <label for="img-<?= $i + 1 ?>" class="next">›</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> |
