         else
           @sendDatabaseError(res, 'Error charging card, please retry.'))
     )
-    
-    
+
+
   recordStripeCharge: (req, res, payment, product, charge) ->
     return @sendError(res, 500, 'Fake db error for testing.') if req.body.breakAfterCharging
     payment = @makeNewInstance(req)

          return @sendDatabaseError(res, err) if err
          @incrementGemsFor(req.user, product.gems, (err) =>
            return @sendDatabaseError(res, err) if err
            @sendCreated(res, @formatEntity(req, payment))
          )
        )
      )
    )

    
  #- Stripe payments
    
  handleStripePaymentPost: (req, res, timestamp, productID, token) ->
    
    # First, make sure we save the payment info as a Customer object, if we haven't already.
    if not req.user.get('stripeCustomerID')
      stripe.customers.create({

      )
    )


  #- Incrementing/recalculating gems

  incrementGemsFor: (user, gems, done) ->
    purchased = _.clone(user.get('purchased'))
    if not purchased?.gems
