(Issue #752) Add user-side /data/interests (JSON), remove site-side /misc/interestdata

Add a JSON API endpoint for retrieving user interests, and remove the old script.

No replacement is being made for the previous ?int= functionality to find the count for a single interest; this was apparently rarely used.

The new file is based on the Edges.pm file, so I've left the credits for that file as I'm not sure how much of the stuff I deleted is theirs. (Commit b879927 shows the exact amount that was deleted.)

Fixes #752.
Ummm though I would add that since this is only testing the flag for an expunged user rather than functionality settled around them I'd probably just tweak the journal type in the database...



> On Jul 4, 2014, at 01:41, Sophira <notifications@github.com> wrote:
> 
> In cgi-bin/DW/Controller/Interests.pm:
> 
> > +       my ( $code, $message ) = @_;
> > +       $r->status( $code );
> > +       $format->( $r, { error => $message } );
> > +
> > +       return $r->OK;
> > +    };
> > +
> > +    # Load the account or error
> > +    return $error_out->( $r->NOT_FOUND, 'Need account name as user parameter' ) unless $opts->username;
> > +    my $u = LJ::load_user_or_identity( $opts->username )
> > +        or return $error_out->( $r->NOT_FOUND, "invalid account");
> > +
> > +    # Check for other conditions
> > +    return $error_out->( $r->HTTP_GONE, 'expunged' ) if $u->is_expunged;
> > +    return $error_out->( $r->FORBIDDEN, 'suspended' ) if $u->is_suspended;
> > +    return $error_out->( $r->NOT_FOUND, 'deleted' ) if $u->is_deleted;
> About to test these, but it turns out that to test an expunged user I need to update as commit bffc119 fixed an issue with expunging users.
> 
> —
> Reply to this email directly or view it on GitHub.