Add caffeine frontend

Yes, I know this is a huge diff - even without migration scripts. (I didn't want to add partially functioning junk to Liquid in a bunch of smaller/stacked diffs. Nonetheless, I apologize in advance.)

I've reviewed it several times, but I'd like it to get some fresh eyes before getting merged.

@CJS7070: [TODO] We need to either implement force-vend SSH capability, or remove it outright. We also need to decide on how soda images are going to work. Whether you want to do those in this diff or a separate one is totally your call since I see arguments for both sides.
The boolean was used to prevent an infinite loop. I agree with @bjryan2
that it's unnecessarily hacky and there ought to be a better way to do
things.

The main thing I'm trying to prevent is something along the lines of
'/intranet/caffeine/user/netid1/?q=netid2'. That behaves correctly on the
frontend (and shows netid2's profile), but it just feels unpolished to me.


On Wed, Sep 3, 2014 at 11:03 PM, Cole Gleason <notifications@github.com>
wrote:

> In liquid/intranet/caffeine_manager/user/views.py:
>
> > @@ -0,0 +1,108 @@
> > +from django.shortcuts import render_to_response, redirect, get_object_or_404
> > +from django.template import RequestContext
> > +from intranet.models import Member, Vending
> > +from utils.group_decorator import group_admin_required
> > +from django.core.urlresolvers import reverse
> > +from intranet.caffeine_manager.user.forms import VendingForm
> > +from django.db.models import Q
> > +from decimal import Decimal
> > +
> > +def view(request, netid=None):
> > +    searchArg=request.GET.get('q') or ''
> > +    vend_user=None
> > +    is_caffeine_admin=request.user.is_group_admin('Caffeine')
> > +
> > +    if searchArg and (not request.GET.get('searched')):
>
> I'm actually confused as to why we need the boolean at all. Can you
> explain please @ace-n <https://github.com/ace-n>?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/acm-uiuc/liquid/pull/252/files#r17094762>.
>