Commit e757221
Add Settings API and more (#331)
* Move tracking opt-in to general settings and onboarding wizard
* better error logging and handling of user accounts unable to connect to addon store
* add recommended html attr
* allow kses to be extended
* add settings api
* Fix problems with choosing country and state
* Fix login redirect
* Add support for pay what you want prices
* Add support for pay what you want prices
* Add support for pay what you want prices
* set duration for manually created memberships
* add duration restrictions for discount codes
* make yoursite translatable
* let users change their email
* let networks login
* fix error in multinetwork
* fix extra chars
* Apply suggestion from @superdav42
* Fix product tabs
* Skip billing requirements for free trials, fix null product handling, add hooks documentation generator
- Move cart assignment before validation so should_collect_payment() is available
- Remove billing field requirements when payment is not needed (free trials)
- Hide billing address fields via v-show when payment not collected
- Handle 'autogenerate' site_url value in checkout
- Add array_filter to prevent null products in template limits (3 locations)
- Add sunrise.php mapping and SUNRISE config to wp-env
- Add BerlinDB dynamic hooks documentation generator to build pipeline
- Update encrypted secrets and translation file
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Skip billing validation when payment not required, code style fixes
- Add should_collect_payment() method to Checkout class to determine
payment requirements earlier in the flow
- Only validate billing address when payment is actually being collected
- Apply WordPress code style fixes to hooks documentation generator
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Apply suggestion from @coderabbitai[bot]
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Address CodeRabbit review feedback and refactor Settings API
PWYW fixes:
- Add custom_amounts and pwyw_recurring to Cart in process_order()
- Add missing pricing inputs to should_collect_payment() temporary cart
- Remove v-bind:name suppression for PWYW duration fields in product edit
- Update Product::is_recurring() to check pwyw_recurring_mode
- Add wu_product_is_recurring filter for extensibility
Settings API refactor:
- Create save_setting() helper for DRY code
- Add sanitize_setting_value() using Field API for proper sanitization
- Add get_field_definition() to look up field definitions from Settings
- Remove body_params from API logging to avoid storing sensitive data
Grammar and text fixes:
- "This products" → "These products"
- "do not exist" → "does not exist"
- Remove trailing space from "Force Synchronous Site Publication"
Security improvements:
- Add rel="noopener noreferrer" and esc_url() to privacy policy link
Cleanup:
- Delete stale inc/berlindb-dynamic-hooks.php duplicate
- Fix changelog: separate 2.4.10 (released) from 2.4.11 (unreleased)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Enforce a strong password
* Restructure E2E tests with programmatic setup and working checkout flows
Replace fragile UI-based wizard setup with WP-CLI/PHP fixture approach:
- Add PHP fixtures for DB tables, products, checkout form, trial products,
and verification scripts
- Create 000-setup, 010-manual-checkout-flow, 020-free-trial-flow specs
- Fix wpCli command (npx wp-env instead of npm run env) and add wpCliFile
- Remove broken checkout commands and old specs that used vague selectors
- Remove domain-mapping-roles and plugin specs (incompatible with wp-env)
- Fix wizard.spec.js: handle variable button text on installer steps,
add missing recommended-plugins step, reset custom login page on setup
- Remove WooCommerce addon from core .wp-env.json test plugins
- Add env:fix-perms script for Docker permission issues
All 15 tests across 7 specs pass reliably on consecutive runs.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Fix PHPCS violations in E2E PHP fixtures
Apply WordPress coding standards: escape echo output with esc_html(),
use wp_json_encode() instead of json_encode(), fix spacing in function
calls and arrays.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Fix e2e workflow: correct spec names, remove invalid CLI flags, fix error handling
- Reference actual spec files (000-setup, 010-manual-checkout-flow, 020-free-trial-flow)
instead of non-existent ones (checkout-registration, setup-wizard-complete, etc.)
- Remove invalid Cypress CLI flags (--video, --screenshot-on-failure, --record,
--reporter-options) that caused 'unknown option' errors
- Remove continue-on-error from test steps so failures properly fail the job
- Remove redundant 'Fail job if tests failed' step
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix searches
* Add the doc
* fix legacy
* Use correct logic
* Update test matrix to require PHP 8.2 minimum
Remove PHP 7.4, 8.0, and 8.1 from the CI test matrix.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>1 parent 4258c98 commit e757221
62 files changed
Lines changed: 6479 additions & 6291 deletions
File tree
- .github/workflows
- assets/js
- inc
- admin-pages
- apis
- checkout
- signup-fields
- documentation
- functions
- gateways
- helpers/validation-rules
- limits
- list-tables
- models
- sso
- ui
- lang
- mu-plugins/email-smtp-test
- tests/e2e/cypress
- fixtures
- integration
- support/commands
- views
- checkout
- fields
- templates/pricing-table
- legacy/signup
- steps
- ui
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
120 | 120 | | |
121 | 121 | | |
122 | 122 | | |
123 | | - | |
| 123 | + | |
124 | 124 | | |
125 | | - | |
126 | 125 | | |
127 | | - | |
128 | | - | |
129 | | - | |
| 126 | + | |
130 | 127 | | |
131 | 128 | | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
| 129 | + | |
| 130 | + | |
167 | 131 | | |
168 | 132 | | |
169 | | - | |
170 | | - | |
| 133 | + | |
171 | 134 | | |
| 135 | + | |
172 | 136 | | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | 137 | | |
177 | | - | |
178 | 138 | | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
| 139 | + | |
| 140 | + | |
183 | 141 | | |
184 | 142 | | |
185 | 143 | | |
| |||
190 | 148 | | |
191 | 149 | | |
192 | 150 | | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
| 151 | + | |
200 | 152 | | |
201 | 153 | | |
202 | 154 | | |
| |||
209 | 161 | | |
210 | 162 | | |
211 | 163 | | |
212 | | - | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | | - | |
| 164 | + | |
| 165 | + | |
218 | 166 | | |
219 | 167 | | |
| 168 | + | |
| 169 | + | |
220 | 170 | | |
221 | 171 | | |
222 | 172 | | |
| |||
237 | 187 | | |
238 | 188 | | |
239 | 189 | | |
240 | | - | |
241 | | - | |
242 | | - | |
243 | | - | |
244 | | - | |
245 | | - | |
246 | 190 | | |
247 | 191 | | |
248 | 192 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
| 11 | + | |
11 | 12 | | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
17 | 18 | | |
18 | | - | |
| 19 | + | |
| 20 | + | |
19 | 21 | | |
20 | 22 | | |
21 | 23 | | |
| |||
24 | 26 | | |
25 | 27 | | |
26 | 28 | | |
27 | | - | |
| 29 | + | |
| 30 | + | |
28 | 31 | | |
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
32 | 35 | | |
33 | 36 | | |
34 | 37 | | |
35 | | - | |
| 38 | + | |
| 39 | + | |
36 | 40 | | |
37 | 41 | | |
38 | 42 | | |
| |||
0 commit comments