diff options
author | Vladimir Panteleev <archlinux@thecybershadow.net> | 2018-10-16 07:22:29 +0200 |
---|---|---|
committer | Lukas Fleischer <lfleischer@archlinux.org> | 2019-04-28 14:58:29 +0200 |
commit | e3ca3c96e5fe87d6ea8123b02ea037cf8255adb9 (patch) | |
tree | 4dce8dfb2fe2b2283d5de0dfd3fc3fa1de5b87dc /web | |
parent | e0d821352fbe38b3629044396d1ed23132d2c0d4 (diff) | |
download | aur-e3ca3c96e5fe87d6ea8123b02ea037cf8255adb9.tar.gz aur-e3ca3c96e5fe87d6ea8123b02ea037cf8255adb9.tar.xz |
Add "Enable notifications" checkbox in "Add Comment" form
Currently, it is a little to easy to forget to enable notifications
for a package after leaving a comment, thus never being notified of a
reply. Even though the "Enable notifications" link is on the same
page, it is not part of the flow for posting a new comment, and so,
easy to miss.
Most web forums and comment systems include a checkbox to enable
notifications when posting for the first time in a thread. This patch
implements this in aurweb, as well.
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Diffstat (limited to 'web')
-rw-r--r-- | web/html/css/aurweb.css | 5 | ||||
-rw-r--r-- | web/html/pkgbase.php | 3 | ||||
-rw-r--r-- | web/template/pkg_comment_form.php | 6 |
3 files changed, 14 insertions, 0 deletions
diff --git a/web/html/css/aurweb.css b/web/html/css/aurweb.css index 593c9ae8..ef37bf59 100644 --- a/web/html/css/aurweb.css +++ b/web/html/css/aurweb.css @@ -104,6 +104,11 @@ top: 1px; } +.comment-enable-notifications { + display: inline-block; + margin-left: 1em; +} + .rss-icon, .delete-comment, .undelete-comment, .edit-comment, .pin-comment { -webkit-filter: grayscale(100%); filter: grayscale(100%); diff --git a/web/html/pkgbase.php b/web/html/pkgbase.php index 46ad77e6..b716644c 100644 --- a/web/html/pkgbase.php +++ b/web/html/pkgbase.php @@ -120,6 +120,9 @@ if (check_token()) { } elseif (current_action("do_AddComment")) { $uid = uid_from_sid($_COOKIE["AURSID"]); list($ret, $output) = pkgbase_add_comment($base_id, $uid, $_REQUEST['comment']); + if ($ret && isset($_REQUEST['enable_notifications'])) { + list($ret, $output) = pkgbase_notify(array($base_id)); + } $fragment = '#news'; } elseif (current_action("do_EditComment")) { list($ret, $output) = pkgbase_edit_comment($_REQUEST['comment']); diff --git a/web/template/pkg_comment_form.php b/web/template/pkg_comment_form.php index c450c4b3..3feee8fb 100644 --- a/web/template/pkg_comment_form.php +++ b/web/template/pkg_comment_form.php @@ -13,6 +13,12 @@ </p> <p> <input type="submit" value="<?= (isset($comment_id)) ? __("Save") : __("Add Comment") ?>" /> + <?php if (!isset($comment_id) && !pkgbase_user_notify($uid, $base_id)): ?> + <span class="comment-enable-notifications"> + <input type="checkbox" name="enable_notifications" id="id_enable_notifications" /> + <label for="id_enable_notifications"><?= __("Enable notifications") ?></label> + </span> + <?php endif; ?> </p> </fieldset> </form> |