Skip to content

Widget Visibility: Rewrite the way that the major/minor rules lists are generated.#6333

Merged
samhotchkiss merged 2 commits intomasterfrom
fix/visibility-rule-generation
Feb 10, 2017
Merged

Widget Visibility: Rewrite the way that the major/minor rules lists are generated.#6333
samhotchkiss merged 2 commits intomasterfrom
fix/visibility-rule-generation

Conversation

@zinigor
Copy link
Copy Markdown
Contributor

@zinigor zinigor commented Feb 8, 2017

Widget Visibility: Rewrite the way that the major/minor rules lists are generated to save bandwidth and memory. (Replay of #3444 by @cfinke )

In situations where a site has hundreds of widgets each with multiple visibility rules, the widget admin pagesize can grow out of control, causing out-of-memory errors and issues with loading the customizer.

This commit rewrites the way that the admin UI is generated, moving from hardcoding everything server-side to providing a single set of all the possible visibility options that are then dynamically generated client-side when they're needed.

This also has the happy side-effect of eliminating the need for the AJAX calls when changing the major rule type. It also fixes some inconsistencies with how the "Include children" checkbox was processed -- in some circumstances, the "Include children" option was being applied to the wrong set of conditions.

cfinke and others added 2 commits February 8, 2017 18:19
…re generated to save bandwidth and memory.

In situations where a site has hundreds of widgets each with multiple visibility rules, the widget admin pagesize can grow out of control, causing out-of-memory errors and issues with loading the customizer.

This commit rewrites the way that the admin UI is generated, moving from hardcoding everything server-side to providing a single set of all the possible visibility options that are then dynamically generated client-side when they're needed.

This also has the happy side-effect of eliminating the need for the AJAX calls when changing the major rule type. It also fixes some inconsistencies with how the "Include children" checkbox was processed.
Address some comparison and variable declaration issues, mostly by eliminating them alltogether by using a simpler method of setting the value of a select input.
@zinigor
Copy link
Copy Markdown
Contributor Author

zinigor commented Feb 8, 2017

Master issue: #5781

@zinigor zinigor added [Status] Needs Review This PR is ready for review. [Status] Ready to Merge Go ahead, you can push that green button! and removed [Status] In Progress [Status] Needs Review This PR is ready for review. labels Feb 9, 2017
Copy link
Copy Markdown
Contributor Author

@zinigor zinigor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works great for me, much more pleasant to use without constant AJAX requests to retrieve data. Handles previously set rules well too.

@samhotchkiss samhotchkiss merged commit 0c510aa into master Feb 10, 2017
@samhotchkiss samhotchkiss deleted the fix/visibility-rule-generation branch February 10, 2017 04:53
@samhotchkiss samhotchkiss removed the [Status] Ready to Merge Go ahead, you can push that green button! label Feb 10, 2017
jeherve added a commit that referenced this pull request Feb 21, 2017
dereksmart pushed a commit that referenced this pull request Feb 28, 2017
* Changelog: update stable tag and move changelog to changelog.txt

Also remove old releases from readme.txt to keep the changelog tab short.

* Changelog: add #5883

Also update the filter's docblock to match new version.

* Changelog: add #5938

* Changelog: add #6298

* Changelog: add #3405

* Changelog: add #5941

* Changelog: add #6239

* Changelog: add #6281

* Changelog: add #6303

* Changelog: add #6018

* Changelog: add #6300

* Changelog: add #6296

* Changelog: add #6130

* Changelog: add #6292

* Readme: remove extra "on".

* Changelog: add #6307

* Changelog: add #3297

* Changelog: add #6275

* Changelog: add #6321

* Changelog: add #6297

* Readme: update the support forum link anchor.

Anchor changed when WordPress.org forums were updated to bbPress 2

* Readme: update list of a12s, it wasn't up to date anymore!

* Changelog: add #6338

* Changelog: add #6337

* Changelog: add #6335

* Changelog: add #6333

* Testing List: first version of the 4.7 testing list.

* Changelog: add #6332

* Changelog: add #6325

* Changelog: add #6326

* Changelog: add #6339

* Changelog: add #6342

* Changelog: add #6343

* Changelog: add #6346

* Changelog: add #6347

* Changelog: add #6279

* Changelog: add #6306

* Changelog: add #6312

* Changelog: add #6316

* Changelog: add #6171

* Changelog: add #6317

* Changelog: add #6246

* Changelog: add #6263

* Changelog: add #4220

* Changelog: add #5888

* Changelog: add #3406

* Changelog: add #3637

* Changelog: add #6320

* Changelog: add #5992

* Changelog: add #6322

* Changelog: add #6324

* Changelog: add #6352

* Changelog: add #6355

* Changelog: add #6360

* Changelog: add #6362

* Changelog: add #6369, #6382

* Changelog: add #6370

* Changelog: add #6375

* Changelog: add #6383

* Changelog: add #6384

* Changelog: add #6386

* Changelog: add #6395

* Changelog: add #6403

* Changelog: add #6406

* Changelog: add #6418

* Changelog: add #6419

* Changelog: add #6434

* Changelog: add #6446

* Changelog: add #6006

* Changelog: add #6096

* Changelog: add #6399

* Changelog: fix typo.

@see #6331 (comment)

* Changelog: add #6440

* Changelog: add #6443

* Changelog: add #6445

* Changelog: add #6463

* Changelog: add #6468

* Changelog: add #6471

* Changelog: add #6474

* Changelog: add #6480

* Changelog: add #6497

* Changelog: add #6499

* Changelog: add #6514

* Changelog: add #6267

* Changelog: add #5940

* Changelog: add #6492

* Changelog: add #5281

* Changelog: add #6327

* Changelog: add #6451

* Changelog: add #6525

* Changelog: add #6530
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement Changes to an existing feature — removing, adding, or changing parts of it [Feature] Widget Visibility

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants