Commit Graph

1843 Commits

Author SHA1 Message Date
Andreas Nedbal 96fc583c42 Remove image folder asset keepfile 2022-01-11 22:41:37 +01:00
Andreas Nedbal 008f3c7b5d Move stylesheets from assets into javascript/styles/ 2022-01-11 22:41:37 +01:00
Karina Kwiatek 9eb34bf984
Fix answers not submitting on Control/Cmd-Return (#279) 2022-01-11 22:32:43 +01:00
Georg Gadinger 29923fac84 add validator for typoed emails
It happens quite often that people typo their email address (I blame
phone keyboards for that).  Catch common cases in a validator and
tell the user that they have a typo in their email.

Why yes, I did write the tests for this first, thanks for asking!
2022-01-11 19:18:23 +01:00
Andreas Nedbal 515e6d09ff Use text ellipsis instead of three single dots for shortening
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-01-10 22:53:58 +01:00
Andreas Nedbal b9c968d3fd Move title and bootstrap related helpers into their own files 2022-01-10 22:53:58 +01:00
Karina Kwiatek d3aaaeb12d
Double question character limit (#292) 2022-01-10 22:01:47 +01:00
Georg Gadinger 331f6477b8 confirmation_instructions: add "do not reply" remark to the email body
There have been several replies to this email containing nothing but the
sentence `Yes, I confirm.` or just simply `Confirmed`.  It seems like
someone discovered that replying to the email with exactly that helped
with recovering their Twitter account after it was locked, and now people
try to do this everywhere else.
2022-01-09 22:57:01 +01:00
Andreas Nedbal aeb8f32fac Remove jquery.growl CoffeeScript and styling 2022-01-09 19:55:17 +01:00
Andreas Nedbal f4d32c5cd1 Use Toastify instead of jquery.growl for notifications 2022-01-09 19:55:17 +01:00
Karina Kwiatek f4c9ab821e Fix incorrect localStorage key of announcement dismiss 2022-01-09 19:01:46 +01:00
Karina Kwiatek e7672e8033 Apply suggestion from @pixeldesu
Co-authored-by: Andreas Nedbal <andy@pixelde.su>
2022-01-09 19:01:46 +01:00
Karina Kwiatek d9e6982637 Address review feedback from @pixeldesu
Co-authored-by: Andreas Nedbal <git@pixelde.su>
2022-01-09 19:01:46 +01:00
Karina Kwiatek 3e9fb2890f Port announcements functionality to TypeScript 2022-01-09 19:01:46 +01:00
Andreas Nedbal 60d8868306 Apply review suggestion from @raccube
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-01-09 16:05:37 +01:00
Andreas Nedbal b287892c19 Apply review suggestion from @raccube
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-01-09 16:05:37 +01:00
Andreas Nedbal bc979a3615 Use proper event for global event handlers in answerbox 2022-01-09 16:05:37 +01:00
Andreas Nedbal d89302f1cc Add return type to `commentCreateHandler` 2022-01-09 16:05:37 +01:00
Andreas Nedbal 0418a67780 Replace window report dialog usages with the TypeScript variant 2022-01-09 16:05:37 +01:00
Andreas Nedbal ecb079b1d4 Port report dialog functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 723ebfb823 Remove legacy answerbox CoffeeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 077e9df2a6 Port comment character count functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 2b11834b31 Port comment destroy functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 05702837bc Port comment create functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 6501bb9f0d Port comment report functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal d004546c65 Port comment smile functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal da26bbc6c0 Port comment toggle functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 0feb05828a Port answerbox destroy functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 346037ddda Port answerbox report feature to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 74463b271c Port answerbox smile feature to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 988775e1fd Port answerbox subscribe functionality to TypeScript 2022-01-09 16:05:37 +01:00
Andreas Nedbal 1d21fb650b Setup TypeScript answerbox feature 2022-01-09 16:05:37 +01:00
Andreas Nedbal 08682308b1 Apply review suggestion from @raccube
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-01-08 20:28:52 +01:00
Andreas Nedbal 84ffbd1c8b Remove unused moment reference 2022-01-08 20:28:52 +01:00
Andreas Nedbal e565df2915 Fix TSLint nits 2022-01-08 20:28:52 +01:00
Andreas Nedbal 75853612f6 Completely remove legacy moderation script entrypoint 2022-01-08 20:28:52 +01:00
Andreas Nedbal 630e2847c2 Remove legacy moderation CoffeeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal ede117fe18 Port report comment character count to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal f93de5c56a Port report comment destroy functionality to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 126a733c76 Port report comment creation functionality to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 01bedd1143 Port report comment toggle feature to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 9e2a9a2be9 Port moderator privilege feature to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 54b9791dc3 Port report vote functionality to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 31e2ad6e0b Port report destroy functionality to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 00cd54e082 Port ban functionality to TypeScript 2022-01-08 20:28:52 +01:00
Andreas Nedbal 50070d9afc Setup TypeScript moderation feature 2022-01-08 20:28:52 +01:00
Andreas Nedbal 5b324caf7c Add stylesheet pack tag import to load library styles 2022-01-07 22:17:29 +01:00
Karina Kwiatek 136e2fa016
Merge pull request #272 from Retrospring/feature/social-post-tagging
Add the ability to post to services with a tag
2022-01-07 19:40:52 +01:00
Karina Kwiatek fed37ec81c
Merge pull request #277 from Retrospring/refactor/typescript-settings
Port Settings functionality to TypeScript
2022-01-07 15:14:29 +01:00
Andreas Nedbal 0a8ff20f36 Fix theme page breaking after a reload 2022-01-07 14:12:45 +01:00
Karina Kwiatek 96e48a833b
Merge pull request #194 from Retrospring/refactor/user-bans
Implement ban history
2022-01-06 14:05:33 +01:00
Karina Kwiatek 75d24db1b9
Merge pull request #269 from Retrospring/feature/mod-pagination
Pagination in moderation panel
2022-01-06 14:05:12 +01:00
Karina Kwiatek b398265a98 Address review comments from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-06 13:59:04 +01:00
Andreas Nedbal f035cc2f89 Remove reference code comment 2022-01-06 13:02:18 +01:00
Andreas Nedbal 6dcb5a2afb Remove `jquery.guillotine` import in legacy CoffeeScript 2022-01-06 03:21:09 +01:00
Andreas Nedbal fb9d8bf947 Fix TSLint nits 2022-01-06 03:21:09 +01:00
Andreas Nedbal ed9f0f0123 Remove legacy settings functionality 2022-01-06 03:21:09 +01:00
Andreas Nedbal e4485cb5cd Refactor mute rule functionality into seperate file 2022-01-06 03:21:09 +01:00
Andreas Nedbal b18c68449e Port password confirmation functionality to TypeScript 2022-01-06 03:21:09 +01:00
Andreas Nedbal 9b6abb9148 Port profile picture/header cropping functionality to TypeScript 2022-01-06 03:21:09 +01:00
Andreas Nedbal 12430aebf1 Port theme functionality to TypeScript 2022-01-06 03:21:09 +01:00
Karina Kwiatek ac92a8b6bd Use `String#tr` instead of `String#gsub` 2022-01-05 20:09:34 +01:00
Karina Kwiatek 023b642bc1 Disallow @ symbols from post tags
Co-authored-by: Andreas Nedbal <git@pixelde.su>
2022-01-05 19:50:01 +01:00
Karina Kwiatek 683fffd734 Add the ability to post to services with a tag 2022-01-05 19:49:59 +01:00
Georg Gadinger 3c58257d21 remove tumblr
Resolves #274
2022-01-05 19:32:52 +01:00
Andreas Nedbal bbe5325ba5 Use proper import for question functionality 2022-01-05 01:07:53 +01:00
Andreas Nedbal 99c74e8418 Use proper selector to select share checkboxes 2022-01-05 01:07:53 +01:00
Andreas Nedbal 44b5e3e6a4 Insert answer into list after submitting 2022-01-05 01:07:53 +01:00
Andreas Nedbal 721b7f3657 Remove legacy question TypeScript 2022-01-05 01:07:53 +01:00
Andreas Nedbal a6bc27e884 Port question functionality to TypeScript 2022-01-05 01:07:53 +01:00
Andreas Nedbal 72ae2503ae Add null check to mute rule submits to prevent error flood 2022-01-04 01:40:44 +01:00
Andreas Nedbal 7fcb8312b9 Put `/settings/muted` behind authentication 2022-01-04 01:35:14 +01:00
Andreas Nedbal ceeca7483e Fix haml-lint nits 2022-01-04 00:05:11 +01:00
Andreas Nedbal 8ac7444518 Fix TSLint nits 2022-01-04 00:05:11 +01:00
Andreas Nedbal 21cba89add Remove legacy questionbox CoffeeScript 2022-01-04 00:05:11 +01:00
Andreas Nedbal 3df0196e1f Add `questionbox` class to questions
...so they get removed from the DOM after deletion
2022-01-04 00:05:11 +01:00
Andreas Nedbal a524a244a9 Use utility class instead of inline style on promotion container 2022-01-04 00:05:11 +01:00
Andreas Nedbal 172fc0b84b Port questionbox all (followers) functionality to TypeScript 2022-01-04 00:05:11 +01:00
Andreas Nedbal 5888b0ff04 Port questionbox destroy functionality to TypeScript 2022-01-04 00:05:11 +01:00
Andreas Nedbal e33d2478c2 Port questionbox report functionality to TypeScript 2022-01-04 00:05:11 +01:00
Andreas Nedbal 88d8cae815 Port questionbox user functionality to TypeScript 2022-01-04 00:05:11 +01:00
Karina Kwiatek c19b2df93c Implement pagination in Moderation Panel view 2022-01-03 23:23:12 +01:00
Karina Kwiatek 2cab96b9af Implement cursored pagination in Moderation Panel 2022-01-03 22:43:37 +01:00
Andreas Nedbal 41a7c89dae Make icons on buttons clickthrough to properly catch events 2022-01-03 16:33:06 +01:00
Andreas Nedbal f7e4fc76cb Use proper events for global event handlers 2022-01-03 16:33:06 +01:00
Andreas Nedbal 36acd25395 Disable inbox entry delete button to prevent duplicate deletion errors 2022-01-03 16:33:06 +01:00
Andreas Nedbal 229c10e358 Disable inbox answer button after pressing it to prevent duplicate sending 2022-01-03 16:33:06 +01:00
Andreas Nedbal 367fe0e7a6 Use `registerEvents` to register multiple global events 2022-01-03 16:33:06 +01:00
Andreas Nedbal 707cba8ede Pass proper sweetalert options for delete actions 2022-01-03 16:33:06 +01:00
Andreas Nedbal 3ef2c15267 Use `I18n.translate` everywhere instead of `I18n.t` 2022-01-03 16:33:06 +01:00
Andreas Nedbal 2e5f500d24 Use notification helpers instead of window reference everywhere 2022-01-03 16:33:06 +01:00
Andreas Nedbal 0770dbfc21 Remove legacy inbox CoffeeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 4be25b2a1a Replace inline style on inbox entry options with utility class 2022-01-03 16:33:06 +01:00
Andreas Nedbal aef180277c Extend `registerEvents` utility to accept global events 2022-01-03 16:33:06 +01:00
Andreas Nedbal b2d430eb1e Export `on` method callback function type 2022-01-03 16:33:06 +01:00
Andreas Nedbal 683657a281 Add TypeScript wrapper around legacy notification functionality 2022-01-03 16:33:06 +01:00
Andreas Nedbal 5337897b23 Port inbox deletion functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 721ff425b2 Port inbox question generation functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 8797652746 Port inbox author search functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 2b06d6a6cc Port inbox entry option functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 2fe4438068 Port inbox entry delete functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 128d2142da Port inbox entry answer functionality to TypeScript 2022-01-03 16:33:06 +01:00
Andreas Nedbal 4a1c8ebcf7 Move report event handler to entry subfolder 2022-01-03 16:33:06 +01:00
Karina Kwiatek b249e40273 Fix ban checkbox being passed into ban payload 2022-01-02 19:50:45 +01:00
Karina Kwiatek b196cbdd1c Adjust ban script to work when unbanning 2022-01-02 19:50:45 +01:00
Karina Kwiatek 7677ed21a4 Update tests for unbanning users 2022-01-02 19:50:44 +01:00
Karina Kwiatek a9392dad53 Use use case for `User#unban` 2022-01-02 19:50:44 +01:00
Karina Kwiatek 6500d7ac71 Update usages of bans 2022-01-02 19:50:44 +01:00
Karina Kwiatek ea62d91014 Make ban UI more intuitive when a user is already banned 2022-01-02 19:50:02 +01:00
Karina Kwiatek 9a35584284 Refactor ban-related functionality into use cases 2022-01-02 19:50:01 +01:00
Karina Kwiatek be0cf69368 Refactor existing ban-related methods 2022-01-02 19:50:01 +01:00
Karina Kwiatek e4241d2001 Create user ban model
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-02 19:50:01 +01:00
Andreas Nedbal fab007b2a2 Apply review suggestion from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-02 19:31:58 +01:00
Andreas Nedbal 48c31ebdc6 Apply review suggestion from @raccube
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-01-02 19:31:58 +01:00
Andreas Nedbal 13c397fe73 Prevent exceptions with invalid URIs 2022-01-02 19:31:58 +01:00
Karina Kwiatek b7ce9cdbba
Merge pull request #222 from Retrospring/feature/muting 2022-01-02 15:31:49 +01:00
Karina Kwiatek abe33a831f Fix lint errors 2022-01-02 01:55:52 +01:00
Karina Kwiatek 05ed214367 Implement frontend for deleting mute rules 2022-01-02 01:55:52 +01:00
Karina Kwiatek 23a5fb55d1 Implement frontend for adding mute rules 2022-01-02 01:55:52 +01:00
Karina Kwiatek 6b626765a8 Create views for managing muted words 2022-01-02 01:55:52 +01:00
Andreas Nedbal bc316757c3 Fix haml-lint nit 2022-01-02 01:27:03 +01:00
Andreas Nedbal dabc917ab5 Align dropdown-menu to the right 2022-01-02 01:27:03 +01:00
Andreas Nedbal 92544370b6 Make entirity of "Lists" dropdown clickable 2022-01-02 01:27:03 +01:00
Andreas Nedbal 2ce94893ea Use `env(safe-area-inset-bottom)` to prevent issues on Apple devices 2022-01-01 22:46:52 +01:00
Andreas Nedbal f75d63bf07 Show progressbar at the top of mobile navbar 2022-01-01 22:46:52 +01:00
Andreas Nedbal 46855eb43f use `md` breakpoint instead of `sm` for the progress bar 2022-01-01 22:46:52 +01:00
Andreas Nedbal 97786e8dec Move turbolinks progressbar to the bottom on tablet and lower 2022-01-01 22:46:52 +01:00
Karina Kwiatek 9ce1fc0ce4 Address review comments from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-01 22:10:13 +01:00
Karina Kwiatek fe6dff8ed6 Improve error messaging when trying to attach a service connected to another account 2022-01-01 21:58:22 +01:00
Andreas Nedbal a4041e5da6 Remove another paragraph where questions are rendered 2022-01-01 02:04:49 +01:00
Andreas Nedbal 4fb1f3f38c Fix wrong spacing in inbox entries 2022-01-01 01:50:46 +01:00
Karina Kwiatek 6c0e6b1d30 Create mute rules AJAX controller 2022-01-01 00:38:38 +01:00
Karina Kwiatek c31ab3578d Apply mute filters to questions asked directly 2022-01-01 00:38:38 +01:00
Karina Kwiatek 249438e5a8 Escape muted strings 2022-01-01 00:38:38 +01:00
Karina Kwiatek 18de468198 Add inverse relationship for mute rules <-> users 2022-01-01 00:38:38 +01:00
Karina Kwiatek f85769eb55 Add mute rules 2022-01-01 00:38:36 +01:00
Andreas Nedbal f803a972b9 Fix haml-lint nit 2021-12-31 22:40:38 +01:00
Andreas Nedbal a0a403ca4f Use `rel="nofollow"` in linkfilter view 2021-12-31 22:40:38 +01:00
Andreas Nedbal c28ecafa80 Refactor `SharedMarkers::autolink` to use `content_tag` 2021-12-31 22:40:38 +01:00
Andreas Nedbal 1f2c9a08eb Fix haml-lint nits 2021-12-31 22:40:38 +01:00
Andreas Nedbal 02a5e7029e Add linkfilter logic to existing renderers 2021-12-31 22:40:38 +01:00
Andreas Nedbal 67ee589b5b Add question markup renderer 2021-12-31 22:40:38 +01:00
Andreas Nedbal 09172a56ef Add linkfilter action 2021-12-31 22:40:38 +01:00
Karina Kwiatek 2a2bd6ad14
Merge pull request #250 from Retrospring/eager-loading
Eager load relationships for questions, answers and users
2021-12-31 22:37:41 +01:00
Karina Kwiatek c3ca93de7f
Merge pull request #252 from Retrospring/rel-nofollow
views: add rel=nofollow to some links
2021-12-31 21:47:18 +01:00
Karina Kwiatek 552f7373e6
Merge pull request #248 from Retrospring/feature/answer-theme
Extend theme helper to show themes on answer pages
2021-12-31 19:46:21 +01:00
Georg Gadinger 34aeb2350c views: add rel=nofollow to some links 2021-12-31 19:30:18 +01:00
Karina Kwiatek 0da070c5ff Move includes into `cursored_friends`/`cursored_followers` 2021-12-31 15:35:02 +01:00
Karina Kwiatek 7e57735b88 Add basic test for answer & user show views 2021-12-31 13:59:15 +01:00
Karina Kwiatek 32e6975c28 Include smiles when eager loading answers 2021-12-30 23:21:46 +01:00