Commit graph

174 commits

Author SHA1 Message Date
Joachim
bf5cb898ef Apply review suggestion 2021-11-28 21:45:35 +01:00
Joachim
3816b0aa57 Better JS 2021-11-28 18:34:54 +01:00
Joachim
c924f578e5 Fix linting errors 2021-11-28 18:26:01 +01:00
Hugh Rundle
f828f36cc5
show popup for remote follow 2021-11-28 21:16:57 +11:00
Joachim
4ed4278826 Tidy header for non-authenticated visitors
with the help of a login modal
2021-11-27 19:18:20 +01:00
Hugh Rundle
951eb43aa6
bypass ajax for shelf_selector statuses 2021-11-26 17:16:26 +11:00
Hugh Rundle
5b67226571
forceReload prevents ajax submission
...instead of weird hacky workarounds forcing refreshes later.
2021-11-25 19:12:03 +11:00
Joachim
8712b2fdab ESLint 2021-11-24 19:02:07 +01:00
Joachim
db5e7a886a Handle count of notifications banner 2021-11-24 19:00:30 +01:00
Chad Nelson
6be9ac4f70 Abstract JS for multivalue form fields 2021-11-21 17:32:48 -05:00
Hugh Rundle
e247e96832
remove incorrect comment 2021-11-20 19:34:37 +11:00
Hugh Rundle
a3270551f9
code cleanup 2021-11-20 19:19:51 +11:00
Hugh Rundle
b273123708
code style 2021-11-20 16:06:16 +11:00
Hugh Rundle
9ffe4d340e
trigger reading status modals from move button
- unhide reading status shelves
- trigger modals when moving to a read status shelf
- force page refresh when using move button
2021-11-20 08:06:13 +11:00
Hugh Rundle
5d7f77021b dammit eslint 2021-10-10 14:02:55 +11:00
Hugh Rundle
3d74b10c5f eslinting 2021-10-10 13:55:18 +11:00
Hugh Rundle
726217577f linting 2021-10-10 13:18:16 +11:00
Hugh Rundle
48fc85c761 adjust commenting on js file 2021-10-08 18:45:28 +11:00
Hugh Rundle
ec7d0db843 linting fixes 2021-10-05 21:48:59 +11:00
Hugh Rundle
3a90311129 update indenting for linter 2021-10-04 22:20:02 +11:00
Hugh Rundle
602664b8d7 Merge branch 'main' into groups-merge-test
Big merge of a couple of weeks' work from the main project back into this branch. :ohno:
2021-10-03 10:49:38 +11:00
Mouse Reeve
db74538345 Update for js linter 2021-10-02 11:28:16 -07:00
Mouse Reeve
b9632039f9 Link notification block to its main path 2021-10-02 11:26:22 -07:00
Mouse Reeve
d78c278665 Progress update flow for modal 2021-09-29 10:59:36 -07:00
Hugh Rundle
762202c4b0 fix UI for group curated list editing
When creating or editing a list, the group selection dropdown will only appear if the user selects "group" as the curation option (or it is already selected).

- fix typo in bookwyrm.js comments
- add data-hides trigger for hiding elements after they have been unhidden, where simple toggles are not the right approach
2021-09-27 11:03:41 +10:00
Mouse Reeve
ccdfaa3187 Linter fixes 2021-09-12 11:48:25 -07:00
Mouse Reeve
7cfb0a4271 Supports Safari in form submission event 2021-09-12 11:45:18 -07:00
Mouse Reeve
daf42a30da Adds javascript for half star ratings 2021-09-10 14:27:08 -07:00
Mouse Reeve
5c329c35f0 Warn http error 2021-09-10 10:22:28 -07:00
Mouse Reeve
5e9b8eb571 Removes unused variable 2021-09-10 10:20:40 -07:00
Mouse Reeve
08d2bff7ca General function for displaying messages 2021-09-10 10:12:37 -07:00
Mouse Reeve
e3ab5afcbd Catch error responses from API 2021-09-10 08:59:49 -07:00
Mouse Reeve
3c38a64a81 Return http responses for ajax requests 2021-09-10 08:03:22 -07:00
Mouse Reeve
909293bbb0 Re-adds error handling code written a while back
Co-authored-by: Fabien Basmaison <contact@arkhi.org>
2021-09-09 19:56:42 -07:00
Mouse Reeve
f9b9a66224 Linter appeasement 2021-09-09 17:07:48 -07:00
Mouse Reeve
9ba066ad6d Cleanup after submitting modal 2021-09-09 17:04:16 -07:00
Mouse Reeve
06b0325c1b Update dropdown options on shelve action 2021-09-09 16:43:47 -07:00
Mouse Reeve
9ee1a110a9 Update visible shelve buttons on read action 2021-09-09 15:36:58 -07:00
Mouse Reeve
5f584c1403 Lints for the Linter god 2021-09-09 08:24:36 -07:00
Mouse Reeve
055cced75b Close reply panel 2021-09-09 08:20:55 -07:00
Mouse Reeve
49f1226f3a Close modals after submit 2021-09-09 08:06:36 -07:00
Mouse Reeve
053e2cea0d Clear localstorage items 2021-09-09 07:39:38 -07:00
Mouse Reeve
dfaf085843 Move status code into the new file 2021-09-09 06:54:34 -07:00
Mouse Reeve
b0e7a5e468 Post statuses asynchronously 2021-09-08 19:30:45 -07:00
Mouse Reeve
c007f44030 Linter's have demands 2021-09-08 17:54:50 -07:00
Mouse Reeve
03b608565d Save status drafts in localstorage 2021-09-08 13:58:10 -07:00
Mouse Reeve
8b5ac6b012 Javascript linter 2021-08-17 09:28:39 -07:00
Mouse Reeve
3026a86b11 Refines preventDefault logic 2021-08-17 09:21:57 -07:00
Mouse Reeve
2f93017eaa Fixes event propogation 2021-08-17 08:45:10 -07:00
Mouse Reeve
011175a6e3 Appeases js linter 2021-08-16 12:44:36 -07:00
Mouse Reeve
e6b785d731 No-update mode for "want to read" 2021-08-16 12:28:04 -07:00
Mouse Reeve
21a954c7df Always use underscores in html ids
Plus some other shifting around
2021-08-08 19:44:12 -07:00
Mouse Reeve
e65bc09e7a Linter fixes 2021-06-08 12:42:45 -07:00
Mouse Reeve
eb12506985 No script fallback mode 2021-06-08 12:40:01 -07:00
Jason Kelly
7eb5f3b026 Making magic number more readable 2021-05-23 14:31:22 +08:00
Jason Kelly
6e655cb0e0 Added new widget to alert if a file is set at larger than 10 MB.
- Updated default widget to use template that adds a notification box.
- Added JS to add onchange & load events to look at the value in the input and trigger the notification & disable the form submits.
2021-05-23 14:12:00 +08:00
Mouse Reeve
454dd25681 Only make notification count red for mentions 2021-04-30 07:49:34 -07:00
Fabien Basmaison
b92ff9752d [assets] Remove UI and behaviours for interactions:
This commit addresses https://github.com/mouse-reeve/bookwyrm/pull/883#discussion_r609739553.
2021-04-08 17:37:29 +02:00
Fabien Basmaison
2f90b4ce66 [assets] Fix broken actions for focus and checkbox:
This commit should address the following two comments:

- https://github.com/mouse-reeve/bookwyrm/pull/883#discussion_r609172258
- https://github.com/mouse-reeve/bookwyrm/pull/883#discussion_r609174513
2021-04-08 11:37:14 +02:00
Fabien Basmaison
83bd417878 [assets] Update interactions code:
This commit should address https://github.com/mouse-reeve/bookwyrm/pull/883#discussion_r609381969.

- Disable the button being used to submit the form.
- Rename variables based on @mouse-reeve’s explanations. Thanks! 
2021-04-08 11:08:13 +02:00
Fabien Basmaison
f77088b964 [assets] Remove redundant class already provided by bulma:
Replace all classes `hidden` with `is-hidden` in templates, CSS and JS.
2021-04-07 17:31:00 +02:00
Fabien Basmaison
54805afb51 [assets] Tweak JSDoc. 2021-04-07 10:37:11 +02:00
Fabien Basmaison
5d569e8926 [assets] Only update status if the promise is successful:
- Use promises in `ajaxPost` and `interact`.
- Add some animations in CSS.
2021-04-07 09:24:34 +02:00
Fabien Basmaison
1c05107f2b [assets] Tweak comments. 2021-04-07 07:53:30 +02:00
Fabien Basmaison
44040201f9 [assets] Move interact function. 2021-04-06 17:57:39 +02:00
Fabien Basmaison
9d95f54aa2 [assets] Refactor toggleAction and toggleMenu a bit. 2021-04-06 17:48:56 +02:00
Fabien Basmaison
52d2f0e331 [assets] Document functions and variables:
- Use expressive names for variables.
- Add docblocks for each function.
- Add ESLint rules for comments.
2021-04-06 16:17:20 +02:00
Fabien Basmaison
5d3d00f694 [assets] Use dataset + use expressive names for some variables. 2021-04-06 15:36:34 +02:00
Fabien Basmaison
62fe2ef600 [assets] Replace inline events with addEventListener; this breaks sliding menu. 2021-04-06 11:37:23 +02:00
Fabien Basmaison
7e49b3cb26 [assets] Simplify addRemoveClass function. 2021-04-06 11:19:44 +02:00
Fabien Basmaison
70c652d565 [assets] Add rules to ESLint:
- Fix long line.
- Enforce a few stylistic habits:

    - Avoid some potential dangerous constructs.
    - `arrow-spacing`: Use at least one space around arrows.
    - `keyword-spacing`: Use at least one space around keywords (if, else, for…).
    - `no-multiple-empty-lines`: Only use one empty line between code.
	- `no-var`: Use `let` or `const` instead of `var`:
    - `padded-blocks`: Do not pad blocks.
    - `padding-line-between-statements`: Use empty lines between some statements.
    - `space-before-blocks`: Use at least one space before the opening brace of a block.
2021-04-06 10:42:52 +02:00
Fabien Basmaison
991d897ac7 [assets] Listen to events as soon as possible. 2021-04-06 09:57:52 +02:00
Fabien Basmaison
2f2f7db086 [assets] Use classes for JS files:
- Classes strictly parse code implicitly.
- Fix previously updated code.
2021-04-06 09:44:59 +02:00
Fabien Basmaison
f430363be0 [assets] Simplify a function expression. 2021-04-06 09:11:56 +02:00
Fabien Basmaison
f6c3e581b9 [assets] Replace Array.from(document.getElementsByClassName(…)) by querySelectorAll(…). 2021-04-06 09:11:27 +02:00
Fabien Basmaison
6b0a3ce4b1 [assets] Move localStorage chunks of code to their own file:
This should prevent a sync issue with updateDisplay not always being loaded on time.
2021-04-06 09:06:51 +02:00
Fabien Basmaison
cbed5e331b [assets] Move some frontend assets to _vendor_ directories:
This simplifies linting of files we have no grasp on, and clarifies responsibilities.

- Add .eslintignore.
- Restrict linting to bookwyrm/static.
2021-04-05 16:17:11 +02:00
Fabien Basmaison
5aea7343b4 [assets] Rename some files for consistency. 2021-04-05 16:16:48 +02:00
Fabien Basmaison
6971c9b133 [assets] Move toggleAllCheckboxes code to its own file. 2021-04-05 16:16:05 +02:00
Fabien Basmaison
53f03457cc Add linter for JS files with basic recommended rules:
- Add Github Action.
- Fix JS files to match rules; mostly `globals` and `exported`.
2021-03-31 17:07:28 +02:00
Mouse Reeve
b8cd1d5bce Show unread status reload link 2021-03-23 12:52:38 -07:00
Fabien Basmaison
fa79070b59 [lint] Update editorconfig linting:
- Add settings for comments.
- Remove custom settings that don’t work.
- Fix vendor JS file:
2021-03-20 16:33:18 +01:00
Mouse Reeve
c31bf1f0c8 Fixes loading javascript listeners 2021-03-19 15:59:28 -07:00
Mouse Reeve
5ad645c225 Move check all js into separate file 2021-03-19 10:51:45 -07:00
Mouse Reeve
443daab128 Move tabs javascript into separate file 2021-03-19 10:47:32 -07:00
Mouse Reeve
baee0796cd Moves localstorage handlers into its own file 2021-03-18 09:02:07 -07:00
Mouse Reeve
091ad53061 JS linting and whitespace fixes 2021-03-13 12:14:34 -08:00
Fabien Basmaison
097b8e5811 Fix toggling all checkboxes of failed imports:
- Rename classes and function to something more descriptive.
- Listen to the element checked status instead of a click on a non‑focusable element.
- Use specific DOM targets instead of relying on the DOM ancestor tree.
- Add a skip‑link to the end of the list and avoid tabbing through all failed items.
- Update related i18n strings in French.
- Avoid having the label on the whole width to prevent accidental click.
- Move `fieldset` out of `ul`.
2021-03-05 15:41:21 +01:00
Ned Zimmerman
263b13f157 Adapt tab handler to vanilla JS, fix focus jump, improve accessible naming of tabs/panels 2021-02-28 14:04:04 -04:00
Ned Zimmerman
bc7f830b2b Merge branch 'upstream' into tab-keyboard-accessibility 2021-02-27 11:53:27 -04:00
Ned Zimmerman
9580bec154 feat: modify tabbed interfaces to support keyboard accessibility (fixes #526) 2021-02-27 11:47:03 -04:00
Mouse Reeve
76491e4e35 Back off notification polling 2021-02-09 10:38:43 -08:00
Mouse Reeve
b53ef73faf Feed templates 2021-01-29 10:25:31 -08:00
Mouse Reeve
2411b4fe79 puts @'mentions directly in compose box 2021-01-19 16:16:22 -08:00
Mouse Reeve
1778e8dd46 Uses timeout instead of interval 2021-01-19 14:59:46 -08:00
Mouse Reeve
94a41498cf Remove counts when notifications are deleted 2021-01-19 14:32:08 -08:00
Mouse Reeve
3fce67a60d Only update on change 2021-01-19 14:25:04 -08:00
Mouse Reeve
394666357f Poll for notifications 2021-01-18 16:32:02 -08:00
Mouse Reeve
c7b03fec5a Fixes rate action 2021-01-18 09:57:44 -08:00
Mouse Reeve
7308d8d1e9 javascript cleanup
I got my linter working!
2021-01-18 08:26:04 -08:00