Commit Graph

582 Commits

Author SHA1 Message Date
Thorben Günther 999fe57e35 API: Autosubscribe owners to created trackers 2020-10-31 10:52:25 -04:00
Drew DeVault ba12050c5f API: fix error with editing comments
This was fixed earlier in the web blueprints but the API was never
updated accordingly.
2020-10-20 10:39:50 -04:00
Drew DeVault 2c8901c8ee tracker_import: fix tickets with no events 2020-10-14 13:40:02 -04:00
Drew DeVault 15e8154fb3 dashboard: make prefs style more specific
The more-general version hit some details elements elsewhere, such as
the user assignment UI.

This also improves the margin consistency in the open/closed states.
2020-10-10 14:10:02 -04:00
наб bb5a0a8ccf Add option to notify users of their own web activity
Ref: ~sircmpwn/todo.sr.ht#94
2020-10-10 14:00:58 -04:00
Drew DeVault 68e1a17b2a Omit description from tracker search 2020-09-15 10:36:34 -04:00
наб d3ef822252 Allow long tracker/ticket slugs to break
Ref: ~sircmpwn/sr.ht#245
2020-09-11 10:15:22 -04:00
Drew DeVault 28c831f4d7 alpine.yml: reboot -webhooks on deploy 2020-09-07 12:55:11 -04:00
Drew DeVault b15763940b Add core.sr.ht webhook cascades to webhook tables 2020-09-07 12:45:53 -04:00
Drew DeVault c144bfc9b1 Further fixes to Sender header syntax 2020-09-05 11:51:28 -04:00
Drew DeVault af41dfe29f Fix Sender email header syntax 2020-09-03 11:52:16 -04:00
Drew DeVault 2687448c09 Use last event when editing a comment, not only 2020-09-03 11:09:54 -04:00
наб 809e294ef0 Free labels tab from its internal menu 2020-09-03 11:05:15 -04:00
Drew DeVault e2bc9f59e8 Wrap ticket title in event lists 2020-09-03 10:09:01 -04:00
наб 752f8fe026 Don't link to create a label if the user wouldn't be able to
I'd misread the permission hierarchy the first time and assumed that if
user can manage, they can also add a label
2020-09-02 12:30:39 -04:00
Drew DeVault f8db933317 .builds/alpine.yml: take three 2020-09-01 17:13:11 -04:00
Drew DeVault a3756c9107 .builds/alpine.yml: fix variable expansion 2020-09-01 17:10:32 -04:00
Drew DeVault 7f30c525b0 .builds/alpine.yml: increase specificity of sed 2020-09-01 17:08:11 -04:00
Drew DeVault 6dbc8e927b todosrht-lmtp: allow command without comment 2020-09-01 16:28:56 -04:00
Drew DeVault b90c13da5e tracker summary: update permissions notice
ref ~sircmpwn/todo.sr.ht#227
2020-09-01 16:26:53 -04:00
Drew DeVault a197154771 Fix notification emails 2020-08-28 10:31:01 -04:00
наб bd57379c99 Correctly scroll down to the new comment after posting
I was redirected to
  https://todo.sr.ht/~sircmpwn/lists.sr.ht/67#comment-13819
after posting, whereas the correct URL is
  https://todo.sr.ht/~sircmpwn/lists.sr.ht/67#event-47645
2020-08-28 09:00:58 -04:00
наб 17607d9ef4 Scroll down to the comment preview when previewing a comment 2020-08-28 09:00:56 -04:00
наб b20d80a34d Don't hide settings tab on narrow screens
Ref: ~sircmpwn/sr.ht#179
2020-08-26 09:35:03 -04:00
наб f368e772f3 Don't create useless transitions between identical states and clean previous ones with migration
A FIXED -> FIXED transition happens, e.g., here:
  https://todo.sr.ht/~sircmpwn/meta.sr.ht/46#event-47525
because I fucked up a link and listed this one twice,
and Drew opened each link first, then closed them,
hence marking the ticket as FIXED twice

With this patch, we just do nothing if there's nothing to do
2020-08-26 09:34:30 -04:00
Drew DeVault 85a7f0f6e1 API: add route to edit comments 2020-08-25 15:47:58 -04:00
Drew DeVault deb31fb00e Implement ticket editing in the UI 2020-08-25 15:47:58 -04:00
наб 44d05940ed Add migration to prune previous ticket self-mentions 2020-08-24 10:08:04 -04:00
наб 2c881a696e Don't generate events for a ticket mentioning itself 2020-08-24 10:08:03 -04:00
наб ca6ab07d74 Link to label creation page from ticket if no labels exist
Ref: ~sircmpwn/todo.sr.ht#189
2020-08-21 10:11:40 -04:00
наб 25ef1808bf Don't require login to browse tracker labels
Anonymous access is equivalent to logged-in non-owner here
2020-08-11 10:48:26 -04:00
gildarts dfd9ab1c61 add database stamp for core.sr.ht 2020-08-11 10:46:56 -04:00
Drew DeVault 9450ca6437 API: ticket by ID: abort 404 if no ticket 2020-08-10 12:29:32 -04:00
наб 79212efcc4 Allow 50-character labels, as the error message suggests
Ref: ~sircmpwn/todo.sr.ht#181
2020-08-10 10:22:59 -04:00
наб 732093c1c0 Check that current_user before using it and crashing when searching 2020-08-06 09:15:45 -04:00
наб 0ac0859f4d Don't suggest submitter:me if not logged in 2020-08-06 09:15:45 -04:00
Drew DeVault 9554487777 Settings import: abort(400) on invalid dump 2020-08-05 16:32:27 -04:00
наб caaab0c2c1 Show subscription mailto: links to anonymous users
As suggested in <C4DCAJR6LQD2.GBNNZ1ME6L4N@homura>
2020-07-30 08:52:18 -04:00
наб ce2683189f Match "{En,Dis}able notifications" capitalisation in ticket to tracker's 2020-07-27 15:08:44 -04:00
наб 613933a49c Wrap valid punctuation in tracker creation error in <samp>s
They were pretty hard to notice and read otherwise
2020-07-22 13:19:57 -04:00
наб a7bc3191ff Add List-Unsubscribe: mailto:{sub.ref}/unsubscribe to notifications 2020-07-22 13:19:57 -04:00
наб b7b5abb83a Allow (un)subscribing by mailing ~u/t[/1]/[un]subscribe 2020-07-22 13:19:56 -04:00
наб 4270950afe Add Tracker.ref() à la Ticket.ref(), replacing manual construxions 2020-07-22 13:19:56 -04:00
наб eff4ea1d86 Don't reacquire participant in ~u/t/enable_notifications handler 2020-07-22 13:19:55 -04:00
наб eec8eb5fa0 Fix e-mail ticket submission not notifying the submitter
To reproduce, the setup:
  * run todo.sr.ht-lmtp,
    listen on sock=127.0.0.1:2525,
    with posting-domain=todo.nabijaczleweli.xyz
  * register users:
    + ~nabijaczleweli  <nabijaczleweli/srht/test@nabijaczleweli.xyz>
    + ~nabijaczleweli2 <nabijaczleweli/srht/test2@nabijaczleweli.xyz>
  * create tracker "~nabijaczleweli/test", potentially unsubscribe
  * do not subscribe ~nabijaczleweli2 to that tracker

Now, run
-- >8 --
$ telnet 127.0.0.1 2525
ehlo owo
mail from:<nabijaczleweli/srht/test2@nabijaczleweli.xyz>
rcpt to:<~nabijaczleweli/test@todo.nabijaczleweli.xyz>
data
From: nabijaczleweli/srht/test2@nabijaczleweli.xyz
To: ~nabijaczleweli/test@todo.nabijaczleweli.xyz
Subject: Repro

This will not be delivered to nabijaczleweli2

.
quit
-- >8 --

If you didn't unsubscribe, ~nabijaczleweli will get the e-mail;
either way, ~nabijaczleweli2 won't receive it.
This goes against the intent of 6599be5371

This happens because in submit_ticket() tracker.subscriptions is either
empty or contains just ~nabijaczleweli; concatenating it with
ticket.subscriptions allows picking up the potential new sub created by
get_or_create_subscription().

With this patch, delivering that same mail will also notify
~nabijaczleweli2.

This fixes the problem described in
https://lists.sr.ht/~sircmpwn/sr.ht-dev/%3C20200714151756.gxmowmpohmtps76h@tarta.local.nabijaczleweli.xyz%3E
2020-07-20 08:43:04 -04:00
Drew DeVault 6e438d993b Fix extra space in ticket ID link 2020-07-17 10:11:48 -04:00
наб 8a3c9b63b9 Include an In-Reply-To: <Message-ID of triggering e-mail>, if any, in the new_ticket notification 2020-07-17 09:59:49 -04:00
наб d14758e1d8 Tracker export doc: registered users' e-mailed submissions *are* signed 2020-07-16 09:03:59 -04:00
Drew DeVault eed8f8f697 API: add integer specification to route params 2020-07-06 12:47:05 -04:00
Drew DeVault e101e7eeca Utilize srht.cache instead of direct Redis access
This also removes some outdated dependencies in setup.py that were found
while grepping around for redis use-cases.
2020-06-29 10:41:12 -04:00