baucis-decorator-upgrade
Adds level
upgrade/downgrade functionality specific to users.
Install
npm install baucis-decorators baucis-decorator-upgrade --save
Usage
This is a WIP, but if you want to try it out, add the decorator with your stripeSecret
and add the level
, stripeCustomerId
, and stripeSubscriptionId
properties as shown below.
Example
controllers/User.js
var baucis = ;var mongoose = ;var Schema = mongooseSchema; var extend = ;var ResourceProps = ;var ResourceController = ; var UserProps = ; UserPropslevel = type: Number default: 0 min: 0 max: 9001 reserved: true;UserPropsstripeCustomerId = type: String reserved: true select: false;UserPropsstripeSubscriptionId = type: String reserved: true select: false; var UserSchema = UserProps;var UserModel = mongoose;var UserController = baucis; var decorators = ;var upgrade = ;var stripeSecret = 'abc123'; // decorate controllerdecoratorsadd; /** * Expose controller. */moduleexports = UserController;
Then users can upgrade their account level
by POSTing the following parameters to /api/users/upgrade
: