Page MenuHomePhabricator

Halp - how get policy control into batch editor?
AbandonedPublic

Authored by btrahan on Apr 2 2014, 6:37 PM.
Tags
None
Referenced Files
F12833040: D8677.id.diff
Thu, Mar 28, 1:47 PM
F12807863: D8677.id.diff
Wed, Mar 27, 8:06 PM
Unknown Object (File)
Tue, Mar 5, 6:47 AM
Unknown Object (File)
Sun, Mar 3, 10:14 AM
Unknown Object (File)
Sun, Mar 3, 10:08 AM
Unknown Object (File)
Feb 4 2024, 3:16 AM
Unknown Object (File)
Jan 30 2024, 5:15 AM
Unknown Object (File)
Jan 25 2024, 4:16 AM
Subscribers

Details

Summary

Ref T4675. Getting the policy control into the batch editor is a bit tricky since the policy control is JS wizardy bound to a single object in the vanilla case. Tossing up this non-working diff for guidance as I don't want to waste time on a bad solution. I think we need to get this working well for the herald case too. We could possibly have a weaker version that doesn't allow for creating new custom policies.

Test Plan

NA

Diff Detail

Repository
rP Phabricator
Branch
T4675
Lint
Lint Errors
SeverityLocationCodeMessage
Errorwebroot/rsrc/js/application/maniphest/behavior-batch-editor.js:73JSHintW086JSHintW086
Unit
No Test Coverage

Event Timeline

btrahan retitled this revision from to Halp - how get policy control into batch editor?.
btrahan updated this object.
btrahan edited the test plan for this revision. (Show Details)
btrahan added a reviewer: epriestley.

oh man this is a huge mess

I think the cleanest approach is to do something similar to the Typeahead:

  • Separate the control into "template" (dumb blob of HTML) and "js magic" parts, like the Tokenizer/Typeahead are.
  • Put the "js magic" part in some separate Javascript class (JX.PhabricatorPolicyControl).
  • Make the existing behavior a thin wrapper around "pass all this stuff to the JS magic", so it basically does new JX.PhabricatorPolicyControl().setStuff(...).start().
  • From the batch editor, drop the template into the document and then create a new JX.PhabricatorPolicyControl and call all the set() junk to give it magic.

This is probably an ass-ton of work. I don't think this feature is too important, so maybe deprioritize it for now? If anyone runs into an issue I can give them a 5 line script to make the adjustment they want. Or take a shot at the above, but I was thinking this was like a 5-minute fix when prioritizing.

Yeah, I'll de-prioritize for now, but I'd like to take a whack at it later.