1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-24 15:52:41 +01:00
phorge-phorge/src/applications/people
epriestley 2218caee0f Reduce the amount of boilerplate that implementing FerretInterface requires
Summary:
See brief discussion in D18554. All the index tables are the same for every application (and, at this point, seem unlikely to change) and we never actually pass these objects around (they're only used internally).

In some other cases (like Transactions) not every application has the same tables (for example, Differential has extra field for inline comments), and/or we pass the objects around (lots of stuff uses `$xactions` directly).

However, in this case, and in Edges, we don't interact with any representation of the database state directly in much of the code, and it doesn't change from application to application.

Just automatically define document, field, and ngram tables for anything which implements `FerretInterface`. This makes the query and index logic a tiny bit messier but lets us delete a ton of boilerplate classes.

Test Plan: Indexed objects, searched for objects. Same results as before with much less code. Ran `bin/storage upgrade`, got a clean bill of health.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12819

Differential Revision: https://secure.phabricator.com/D18559
2017-09-07 13:23:31 -07:00
..
application Add Revisions to User Profiles 2017-05-21 09:24:37 -07:00
cache Remove "participationStatus" from ConpherenceParticipant 2017-04-19 13:58:42 -07:00
capability People - refine permissions on creating new users 2015-02-05 16:47:09 -08:00
conduit Mark "v3" API methods as stable; mark obsoleted methods as "Frozen" 2017-01-09 07:16:27 -08:00
config Move "wild" config types to new code 2017-06-27 12:34:56 -07:00
controller Update people edit pages UI 2017-09-07 12:47:24 -07:00
customfield Fix errors found by PHPStan 2017-02-17 10:10:15 +00:00
editor When a user changes to a verified primary address, mark their account as verified 2017-04-24 10:24:21 -07:00
engine Add Revisions to User Profiles 2017-05-21 09:24:37 -07:00
engineextension Update people hovercard UI 2017-02-21 14:41:10 -08:00
garbagecollector Provide bin/garbage for interacting with garbage collection 2015-10-02 09:17:24 -07:00
guidance Add a bunch of Phacility-specific code to the upstream, thinly veiled as generic code 2016-11-15 09:11:22 -08:00
icon Add additional icons for User Profiles 2016-01-31 20:09:06 +00:00
lipsum Make bin/lipsum generate hanldle generator keys and arguments more clearly 2017-02-27 09:09:28 -08:00
management Auto-generate profile images for sad psyducks 2017-03-05 08:25:02 -08:00
markup Use grey dots for disabled users, even if a user is also unverified 2017-04-30 13:10:00 -07:00
menuitem Add Revisions to User Profiles 2017-05-21 09:24:37 -07:00
phid Use grey dots for disabled users, even if a user is also unverified 2017-04-30 13:10:00 -07:00
policyrule Move some files around 2015-11-17 06:26:13 +11:00
query Add more "disabled" UI to PHUIObjectItemView 2017-05-19 17:54:53 +00:00
search Reduce the amount of boilerplate that implementing FerretInterface requires 2017-09-07 13:23:31 -07:00
searchfield Add basic typechecking support to Conduit 2015-12-14 04:21:39 -08:00
storage Reduce the amount of boilerplate that implementing FerretInterface requires 2017-09-07 13:23:31 -07:00
typeahead Separate sever-side typeahead queries into "prefix" and "content" phases 2016-11-10 08:54:59 -08:00
view Search and Replace calls to setShade 2017-05-22 18:59:53 +00:00