Page MenuHomePhabricator

Add basic NUX support to SearchEngines
ClosedPublic

Authored by epriestley on Dec 19 2015, 8:44 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Jan 12, 5:01 AM
Unknown Object (File)
Thu, Jan 12, 5:01 AM
Unknown Object (File)
Thu, Jan 12, 1:05 AM
Unknown Object (File)
Dec 28 2022, 5:39 AM
Unknown Object (File)
Dec 22 2022, 6:55 PM
Unknown Object (File)
Dec 20 2022, 10:00 PM
Unknown Object (File)
Dec 17 2022, 3:07 PM
Unknown Object (File)
Dec 15 2022, 12:09 AM
Subscribers
None

Details

Reviewers
chad
Commits
Restricted Diffusion Commit
rPdbb84f1ddc12: Add basic NUX support to SearchEngines
Summary

This is just putting a hook in that pretty much works. Behavior:

  • If you visit /maniphest/?nux=true, it always shows NUX for testing.
  • Otherwise, it shows NUX if there are no objects in the application yet.
Test Plan

Screen Shot 2015-12-19 at 12.44.17 PM.png (787×1 px, 132 KB)

Diff Detail

Repository
rP Phabricator
Branch
nux1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 9670
Build 11587: Run Core Tests
Build 11586: arc lint + arc unit

Event Timeline

epriestley retitled this revision from to Add basic NUX support to SearchEngines.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
src/applications/maniphest/query/ManiphestTaskSearchEngine.php
388–394

I'll delete these before landing if the rest of this seems reasonable.

This revision is now accepted and ready to land.Dec 19 2015, 8:48 PM
epriestley edited edge metadata.
  • Strip out placeholder/demo text so this can go upstream.
This revision was automatically updated to reflect the committed changes.
src/applications/search/controller/PhabricatorApplicationSearchController.php
232

erm, where do I drop this new function? I tried SearchEngine but it complains about being final.

Yeah, the naming is really confusing right now (I'm going to fix that as part of T9979.

SearchEngine is about fulltext search and search indexing. I'm going to rename that to IndexEngine.

ApplicationSearchEngine is what you want.

To get a basic version working:

  • Implement getNewUserHeader() getNewUserBody() in an ApplicationSearchEngine subclass like ManiphestTaskSearchEngine.
  • Visit /maniphest/?nux=true.
  • To get fancier, mess around with PhabricatorApplicationSearchEngine-> renderNewUserView() (see inline).
  • This will be less confusing soon.
src/applications/search/engine/PhabricatorApplicationSearchEngine.php
1357–1371

Mess with this to get a fancier UI.