0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-21 17:00:29 +01:00
Commit-Graph

540 Commits

Autor SHA1 Nachricht Datum
Angus McLeod
0970b49db8 Remove unnecessary extensions 2022-04-11 15:24:10 +02:00
Angus McLeod
a87dc19eb3 Add qunit CSP extension 2022-04-11 12:21:38 +02:00
Angus McLeod
04f0d34ef3 Fix specs 2022-03-25 17:08:24 +01:00
Angus McLeod
92219ace2f Apply linting 2022-03-25 12:22:27 +01:00
Angus McLeod
f607863510 Remove more subscription related things and integrate with subscription client 2022-03-25 12:18:54 +01:00
Angus McLeod
5edfb4c41e Remove subs and notices files 2022-03-16 15:49:25 +01:00
Angus McLeod
0c48435672 Merge branch 'pro-release' into add_acceptance_tests 2022-03-16 12:51:15 +01:00
Angus McLeod
8893e6caf1 Refactor wizard client and add tests 2022-03-16 12:33:34 +01:00
Angus McLeod
69fd3d451d merge main 2022-03-12 15:08:56 +01:00
Angus McLeod
cb7bb4e12f Move to proper folder structure 2022-03-12 14:49:41 +01:00
Angus McLeod
46c86cda58 Move to new coverage approach 2022-03-12 14:00:07 +01:00
Angus McLeod
3169c0803e BUGFIX: assignment does not need mapping 2022-03-03 20:38:49 +01:00
Faizaan Gagan
f0580d2bba
FEATURE: allow tags from tag field to be confined to a tag group (#175)
* FEATURE: allow tag field to be confined to a tag group

* fixed linting

* bump minor version

* moved monkeypatch to a separate module

* use snake case for variable names

* added specs
2022-02-07 11:10:52 +05:30
Faizaan Gagan
51553bc71d
FEATURE: validate liquid templates on wizard save (#156)
* DEV: validate liquid templates on wizard save

* minor fix

* code improvements and spec

* version bump

* fixed failing specs

* FIX: handle displaying backend validation errors on frontend

* fixed linting

* improved error display

* validate raw description for steps

* refactor conditional

* Identify attribute with liquid template error and pass syntax error

Co-authored-by: angusmcleod <angus@mcleod.org.au>
Co-authored-by: Angus McLeod <angusmcleod@users.noreply.github.com>
2022-01-31 15:11:14 +05:30
Angus McLeod
5e5b5e67ee
FIX: Cache valid directs and only allow one type in a template (#176)
* Cache valid directs and only allow one type in a template

* Add spec

* Bump version

* Bump version

* Exclude current wizard from other_after_signup
2022-01-31 14:48:04 +05:30
Faizaan Gagan
f5a35baa1b simplified logic 2022-01-31 12:50:20 +05:30
Faizaan Gagan
5d882d69a2 merged 'main' and resolved conflicts 2022-01-31 09:47:12 +05:30
angusmcleod
4605b23585 Merge branch 'main' into pro-release 2022-01-27 17:51:24 +08:00
Faizaan Gagan
00682fb4c2
FIX: field validation was not working in backend (#165)
* FIX: field validation was not working in backend

* added tests
2021-12-07 14:20:34 +05:30
angusmcleod
7af77533ba Add https to notice requests 2021-11-25 14:38:16 +08:00
angusmcleod
fac8d821cf publish notice count at the end of the update cycle 2021-11-18 17:07:15 +08:00
angusmcleod
559d3f4f19 Use iso times for the notice timestamps 2021-11-18 16:05:32 +08:00
angusmcleod
49538d554d Linting 2021-11-17 20:48:11 +08:00
angusmcleod
98061c14e8 Fix spec (mostly) 2021-11-17 20:26:44 +08:00
angusmcleod
81bb7e56c2 WIP 2021-11-17 20:26:44 +08:00
Angus McLeod
bbd1253891
Merge pull request #147 from paviliondev/pro-release-api
Pro release api
2021-11-17 20:18:54 +08:00
angusmcleod
457463f7c7 Add blankspace 2021-11-10 22:25:42 +08:00
merefield
e37b2a6e85 Remove semi colon! 2021-11-09 15:04:04 +00:00
merefield
584ee6d24e remove redundant returns 2021-11-09 15:01:17 +00:00
merefield
c6b8e08e38 Add subscription level logic to back-end validation 2021-11-09 14:57:33 +00:00
Faizaan Gagan
b7575a3295 use standard naming for custom fields 2021-10-30 16:07:16 +05:30
Faizaan Gagan
c1481e2ad4 Merge branch 'main' into wizard-permissions 2021-10-30 14:29:32 +05:30
merefield
36257fbdfe fix excon call 2021-10-27 13:59:50 +01:00
merefield
41e0f13b25 update subscription types 2021-10-22 19:24:28 +01:00
merefield
50176b400d more rubocop 2021-10-22 19:07:45 +01:00
angusmcleod
805e934fdf FIX: cast both key and value as boolean if operator is `is:[true|false]` 2021-10-20 20:48:38 +08:00
angusmcleod
231051d8ea Update status domains 2021-10-19 16:08:03 +08:00
Faizaan Gagan
687c3530b3 WIP 2021-10-19 09:05:55 +05:30
Faizaan Gagan
d9d4c7d8fa WIP 2021-10-14 18:27:18 +05:30
merefield
a42e23d352 Show but differentiate unsubbed action options 2021-10-14 13:41:24 +01:00
Robert Barrow
a13096c8f1 merge in pro-release branch 2021-10-13 14:22:33 +01:00
angusmcleod
450f7bfc25 Update notice.rb 2021-10-13 19:32:49 +08:00
Robert Barrow
d4e489456e rename functional levels 2021-10-12 13:01:39 +01:00
Robert Barrow
14e7e9c0db improve api section switch 2021-10-12 09:54:52 +01:00
angusmcleod
702ccc868c Update connection_error.rb 2021-10-12 09:45:50 +08:00
angusmcleod
b475e39ee9 Fix specs 2021-10-07 21:19:19 +08:00
angusmcleod
925c8c009a DEV: Add notice specs and UI updates 2021-10-05 20:54:06 +08:00
merefield
6056351b7c API: fix request call 2021-10-05 10:06:15 +01:00
angusmcleod
1edfcca78b DEV: remove group log settings change from create_group action 2021-10-05 10:23:48 +08:00
angusmcleod
084c6f4a7a wip 2021-09-24 17:58:42 +08:00
Faizaan Gagan
2678ee153d
FEATURE: add resume wizard popup (#146)
* FEATURE: add resume wizard popup

* code cleanup, copy edits

* FIX: address functionality, setting and copy issues

@fzngagan a few issues fixed

1. The resume button wasn't working (old reference to ``resumeDialog`` remained in callback.
2. This needs a wizard setting
3. It's not necessary to serialize the first step separately. We have all the steps in ``steps`` and steps have indexes.
4. Button copy

* Fix linting

* Ensure aa submission exists

* Apply prettier

Co-authored-by: angusmcleod <angus@mcleod.org.au>
2021-09-22 13:52:05 +05:30
angusmcleod
270d3bccf5 IMPROVE: translation feature 2021-09-14 11:33:16 +08:00
angusmcleod
10fb3ee176 Merge branch 'master' into pro-release 2021-09-09 14:39:49 +08:00
angusmcleod
7b57e7fcab Apply new table style to wizard logs view 2021-09-09 14:07:12 +08:00
angusmcleod
33824de1d1 Merge branch 'pro-features' of https://github.com/angusmcleod/discourse-custom-wizard into pro-features 2021-09-07 20:13:13 +08:00
angusmcleod
7c9a0ef862 Apply rubocop 2021-09-07 20:11:50 +08:00
Angus McLeod
f4d419cac2
Merge branch 'pro-release' into pro-features 2021-09-07 20:10:12 +08:00
angusmcleod
23c4b45195 Add pro feature specs 2021-09-07 20:06:13 +08:00
angusmcleod
208cb1229a FIX: Minor bugfixes in manager and create_group action 2021-09-07 11:11:29 +08:00
Angus McLeod
3383aec37f
Merge pull request #142 from paviliondev/ui_conventions
UX: Update Submissions Admin UI
2021-09-06 22:51:52 +08:00
angusmcleod
8dbb3990e4 Remove test change 2021-09-03 16:46:43 +08:00
angusmcleod
6ef333a657 Complete pro-feature functionality 2021-09-03 16:46:32 +08:00
Keegan George
622ab1b2ce Merge branch 'pro-release' of https://github.com/paviliondev/discourse-custom-wizard into ui_conventions 2021-09-01 12:38:09 -07:00
KC Maddever
e34f2b5076 Merge branch 'pro-release' into split_log_messages 2021-09-01 16:51:28 +08:00
angusmcleod
0e5fc756df Fix merge issues 2021-09-01 10:46:52 +08:00
angusmcleod
001d116298 Merge branch 'master' into pro-release 2021-09-01 10:37:50 +08:00
angusmcleod
6b1e7568c1 Improve PRO feature approach 2021-09-01 10:19:00 +08:00
KC Maddever
b79039c2e2 DEV: save logs with split fields 2021-08-31 14:33:16 +08:00
Faizaan Gagan
0b20c6ff81 removed redundant method 2021-08-23 10:38:02 +05:30
Faizaan Gagan
1916335fa9 FIX: use class method as alias for instance method 2021-08-23 03:00:14 +05:30
angusmcleod
a810155f91 Clean up pro constants 2021-08-18 14:59:43 +08:00
angusmcleod
eadc40bdae Add CustomWizard class protections and pro feature restrictions 2021-08-18 14:11:00 +08:00
angusmcleod
eff1d2c7d2 Merge branch 'master' into pro-features 2021-08-17 19:35:10 +08:00
Faizaan Gagan
3c70b712bf remove redundant reset method 2021-08-13 18:57:20 +05:30
Faizaan Gagan
61c92ec768 FIX: reset user's progress on wizard skip 2021-08-13 17:49:31 +05:30
Faizaan Gagan
bfa190e98b Revert "FIX: reset step progress on wizard skip"
This reverts commit 0d2f3d1cb5.
2021-08-13 02:55:25 +05:30
Faizaan Gagan
0d2f3d1cb5 FIX: reset step progress on wizard skip 2021-08-12 20:02:04 +05:30
Faizaan Gagan
dee3691cd0 fix formatting 2021-08-10 14:35:56 +05:30
Faizaan Gagan
c1fc2fd0e4 FIX: clear submission if skipped by user 2021-08-10 14:31:59 +05:30
angusmcleod
f49f516403 Add pro restriction 2021-08-10 17:00:42 +08:00
angusmcleod
a27c222dc6 Update authentication and subscription handling 2021-08-10 14:45:23 +08:00
Faizaan Gagan
f00d01c50f
FIX: ensure single incomplete submission existence (#136)
* created method to fetch incomplete submissions

* added new field 'updated_at' to submission schema

* Revert "created method to fetch incomplete submissions"

This reverts commit 15c65236e7.

* added logic to cleanup redundant incomplete submissions

* logic improvements and spec

* simplified the cleanup logic

* simplified the logic further

* early return to improve performance

* consolidated cleanup logic

* perform cleanup in wizard.update

* fixed issue

* minor fix

* use consistent naming
2021-08-02 13:01:49 +05:30
Faizaan Gagan
998757f857
FIX: apply text length validations for non-empty fields only (#137)
* apply text length validations for non-empty fields only

* consolidated logic

* fixed formatting

* fix formatting

* calculate length only for string type values

* fix assignment

* added specs
2021-07-30 16:03:48 +05:30
Faizaan Gagan
ee9e9a1d94 FIX: skip_guardian option is removed from discourse core 2021-07-28 19:01:09 +05:30
angusmcleod
55b92f4256 IMPROVE: Add additional data to submission serialiser 2021-07-21 11:31:03 +08:00
angusmcleod
1a78b44d35 Apply rubocop 2021-07-14 14:06:54 +08:00
angusmcleod
34fee3729c Add pagination to submissions 2021-07-14 14:04:19 +08:00
Angus McLeod
5aef8972ff
Merge pull request #125 from paviliondev/submission_improvements
Abstract and improve submission handling
2021-07-12 22:43:13 +08:00
Faizaan Gagan
ca10ae797a
FEATURE: new field type Composer Preview (#130)
* WIP

* composer preview field working

* remove redundant variable

* fix linting issues

* fix rubocop

* remove unnecessary entry

* consolidate preview generation code

* add styles for onebox

* add css for @ mentions

* fixed eslint issues

* FIX: ensure oneboxes load every time

* remove unused import

* fix prettier issues

* removed unused code

* remove unused imports

* fixed prettier issue

* improve css structure

* add csrf header in all cases
2021-07-12 17:05:05 +05:30
angusmcleod
56f58414b3 Remove meta keys from fields attribute and update submissions ui to handle new submission structure 2021-07-12 15:53:58 +08:00
angusmcleod
20c8ec1202 Merge branch 'master' into pr/125 2021-07-12 14:05:02 +08:00
Faizaan Gagan
c9f90fb8ce FIX: text length validation bug 2021-07-07 11:50:56 +05:30
Faizaan Gagan
d47950733d enabled interpolation and templating 2021-07-05 11:52:29 +05:30
Faizaan Gagan
21ac87cdda FEATURE: placeholder setting for text type fields 2021-07-03 15:41:49 +05:30
Faizaan Gagan
6d1958d772 Merge branch 'master' into submission_improvements 2021-06-28 13:54:03 +05:30
Faizaan Gagan
28400ee24e Merge branch 'master' into sprockets-fix 2021-06-26 13:30:37 +05:30
Angus McLeod
f80f40d6b3
Apply consistent date validation on the server (using v8) (#124)
* Apply consistent date validation on the server (using v8)

* Variable fix

* added specs to verify date/time field validation

* minor text change

Co-authored-by: Faizaan Gagan <fzngagan@gmail.com>
2021-06-26 13:15:33 +05:30
angusmcleod
3d9f6aac98 Ensure data is not nil 2021-06-23 17:02:21 +10:00
angusmcleod
098e8418fb Apply rubocop 2021-06-23 16:15:17 +10:00
angusmcleod
e441588aa3 Fix specs and tighten conditional handling 2021-06-23 16:13:58 +10:00
angusmcleod
d3c6733e59 Abstract and improve submission handling 2021-06-17 17:50:22 +10:00
Faizaan Gagan
7b9a54590b Merge branch 'master' into sprockets-fix 2021-06-16 14:28:55 +05:30
angusmcleod
dc7e43b6d7 Force second step build to overcome can_access? check
The can_access? check will fail if the wizard does not allow multiple submissions. This means that on the second build of the wizard on the final step of a single submission wizard, the wizard instance will have no steps, and an error will be thrown when logic assumes it does.
2021-06-16 16:21:24 +10:00
Angus McLeod
58b3bc13c9
FIX: Ensure user_email and user_option attributes are handled properly (#119) 2021-06-15 11:48:17 +05:30
Angus McLeod
af3e61fe75
Add custom field improvements (#115)
* Add custom field improvements

This PR does a few things to improve our support of custom fields
1. Adds custom fields added by other plugins to the list in admin/wizards/custom-fields and the custom field list in the mapper selector
2. Adds support for json custom fields in the wizard actions

* Make eslint happy

* Make prettier happy

* Make rubocop happy

* Make ember template lint happy

* Don't assume we have the context in the selector

* Ensure custom fields don't require optional attributes (with tests)
2021-06-08 17:09:49 +05:30
Angus McLeod
522d4e9489
IMPROVE: ensure redirect_to_wizard is cleaned up even if sidekiq is not working (#116)
* Add test of redirect_to_wizard when wizard is removed

* Make clear_user_wizard_redirect a synchronous operation
2021-06-07 18:45:41 +05:30
Faizaan Gagan
ff14570d64 FIX: exclude conditional fields while saving step submission 2021-05-12 18:15:55 +05:30
Faizaan Gagan
a4adeecf5f Revert "Revert "DEV: add new sprockets directive to require discourse folders" (#111)"
This reverts commit ca125a2a8a.
2021-05-12 06:14:09 +05:30
Faizaan Gagan
ca125a2a8a
Revert "DEV: add new sprockets directive to require discourse folders" (#111) 2021-05-12 02:58:12 +05:30
Angus McLeod
edbba891f6
Merge pull request #86 from paviliondev/sprockets-fix
DEV: add new sprockets directive to require discourse folders
2021-05-10 19:07:32 +12:00
Faizaan Gagan
4cacd84967 code formatting 2021-05-08 23:38:26 +05:30
Faizaan Gagan
3a3d23a317 added missing file 2021-05-08 23:18:58 +05:30
Faizaan Gagan
c254a0c6b8 convert key to string 2021-05-07 04:02:56 +05:30
Faizaan Gagan
56268823c5 confine exclusion to wizard fields 2021-05-07 03:28:16 +05:30
Faizaan Gagan
957a32cf5a FIX: filter conditionally excluded fields from wizard submission 2021-05-05 13:13:03 +05:30
Faizaan Gagan
887de25833 FIX: set checkbox field default value as false 2021-04-30 22:59:06 +05:30
Faizaan Gagan
f05d859007
Enable templating (#102)
* enabled templating for create topic action

* enabled templating for step and field descriptions

* FIX: don't run pretty text on step description

* FIX: step description should be cooked post template parsing
2021-04-23 17:21:41 +05:30
Faizaan Gagan
eb93169f86 use option multiple and aggregate the result 2021-04-23 12:22:04 +05:30
Faizaan Gagan
911140fde3 improved the logic to accomodate multiple conditions using 'or' 2021-04-22 23:50:26 +05:30
Angus McLeod
ceef3f4bc9
Step and field conditionality (#87)
* Re structure builder logic to allow for step conditionality

Concerns
- Performance. Look at whether the additional build in the steps controller can be reduced
- Does not work if applied to the last step.
- Certain conditions will not work with the first step(?)
- How should this be scoped to known functionality?

* Add indexes and conditions to steps and fields

* Complete and add spec

* Complete backend

* Complete step conditionality and field indexing

* Fix failing spec

* Update coverage

* Apply rubocop

* Apply prettier

* Apply prettier to wizard js

* Fix schema issues created in merge

* Remove setting label for force_final

* Improve client wizard cache naming

* Improve steps controller and spec conditionality

* Improve final step attribute naming

* Fix failing spec

* Linting

* Add one more final step test

* Linting

* Fix eslint issues

* Apply prettier

* Linting, syntax, merge and copy cleanups

* Update wizard-admin.scss

* Fix template linting

* Rubocop fixes
2021-04-20 23:28:19 +05:30
Faizaan Gagan
9ded3602eb Merge branch 'master' into pm-multiple-targets 2021-04-19 11:04:47 +05:30
Faizaan Gagan
b71548427d
Added files used by github actions workflows (#78)
* Added files used by github actions workflows

* added simplecov report for tests workflow

* removed trailing space

* Rubocop fixes

* Update plugin-linting.yml

* Create Gemfile.lock

* Update Gemfile.lock

* Re-add bundler

* Update gitignore

* Limit yarn install to dev

* Update rubocop config and gemfile.lock

* allow strings to be mutated

* Update invites_controller_spec.rb

Co-authored-by: angusmcleod <angus@mcleod.org.au>
2021-04-16 13:37:32 +05:30
Faizaan Gagan
f443840358 FEATURE: allow targetting multiple users/groups when sending a private message 2021-04-14 08:59:12 +05:30
Faizaan Gagan
105fc46774
FEATURE: added liquid based templating (#83)
* FEATURE: added liquid based templating

* templating should be false by default

* added rspec tests for mapper templating

* wrapped templating tests in a context block

* added a custom liquid filter and tests

* ran rubocop on changed files

* DEV: minor variable and naming changes

* minor code formatting

* improved overall structure and tightened spec for custom filter

* added a spec template: false

* define method at the top of spec file

* naming convention

* removed extra space
2021-04-09 11:04:42 +05:30
angus
3bb244be79 Add .jpeg to list of default upload extensions 2021-03-12 21:12:26 +11:00
angus
e7a1472a1c Handle when permitted is set as "everyone" 2021-03-12 21:02:42 +11:00
Angus McLeod
4edb40e526
Apply rubcop and get tests pass (#76) 2021-03-11 12:00:15 +05:30
Faizaan Gagan
cced7a8d25 minor formatting 2021-02-26 09:53:39 +05:30
Faizaan Gagan
33e457a5c9 simplified the conditional 2021-02-26 09:46:23 +05:30
Faizaan Gagan
bc2cc85804 rename n_value to time_n_value 2021-02-25 15:59:42 +05:30
Faizaan Gagan
c54273b94a implemented a relative time based filtering for similar topics 2021-02-25 15:36:43 +05:30
angusmcleod
5794349244 Ensure url field validates properly and accepts empty inputs 2021-02-20 17:59:41 +11:00
angus
1a175b4d2b Ensure prompt completion works as intended
- Users who have completed should never see prompt
- Add rspec test for this case
2021-02-19 17:10:59 +11:00
angusmcleod
5e09d067bc Display category badge if similar topics is scoped to category 2021-02-18 14:40:59 +11:00
Angus McLeod
7f021791f5
Merge pull request #69 from paviliondev/realtime-validation
FEATURE: Implemented realtime validation framework
2021-02-17 15:50:39 +11:00
angusmcleod
c45e51fcb6 Various fixes
* Code formatting
* Both "type" and "name" are used to refer to the validation type. Changed all to "type".
* Added proper abstraction of realtime validation classes on server
* UI improvements in admin and wizard
2021-02-16 11:43:00 +11:00
Faizaan Gagan
69ce09bdf7 moved serialization logic to the controller 2021-02-15 18:12:32 +05:30
Faizaan Gagan
20c8d8493e fixed code formatting for realtime_validation class 2021-02-15 17:57:15 +05:30
Faizaan Gagan
4883d85d56 renamed the validator 2021-02-11 22:35:04 +05:30
angusmcleod
d339130c34 Switch to using category_id instead of slug for open_composer
See further https://thepavilion.io/t/category-is-not-working-in-open-composer-action/3979/2
2021-02-08 21:06:28 +11:00
Faizaan Gagan
77ca946745 completed categories and date after filters 2021-02-05 18:29:30 +05:30
Faizaan Gagan
ffd2101a30 added backend validation mechanism and refined code 2021-02-01 19:28:37 +05:30
Faizaan Gagan
79e2368b57 validation framework code working 2021-01-30 23:16:04 +05:30
Faizaan Gagan
5d749fe426 some changes 2021-01-27 10:38:26 +05:30
Faizaan Gagan
cdfd699491 resolved conflicts with latest code 2021-01-20 13:07:44 +05:30
Angus McLeod
b5a6d15c9d Add wizard field tabindex relative to field order 2021-01-19 18:50:37 +11:00
Faizaan Gagan
57b51c2972 Added a wizard setting to toggle displaying character counter 2021-01-12 16:16:24 +05:30
Angus McLeod
909f82095f Encode each query param seperately using Addressable 2020-12-19 10:16:12 +11:00
Faizaan Gagan
49f82b4014 fixed formatting 2020-12-08 13:19:31 +05:30
Faizaan Gagan
4f7d18d193 FEATURE: added max length setting for text type fields 2020-12-08 12:44:37 +05:30