Merge branch 'hotfix/21.56.9' into master
[gitter.git] / server / api / private / create-badge-pr.js
blobc443654bb8680db3bf5b6ed09b691a6106528516
1 'use strict';
3 var troupeService = require('gitter-web-rooms/lib/troupe-service');
4 var policyFactory = require('gitter-web-permissions/lib/policy-factory');
5 var RoomWithPolicyService = require('gitter-web-rooms/lib/room-with-policy-service');
7 module.exports = function(req, res, next) {
8   var uri = '' + req.body.uri;
9   var user = req.user;
11   return troupeService
12     .findByUri(uri)
13     .bind({
14       troupe: null
15     })
16     .then(function(troupe) {
17       this.troupe = troupe;
18       return policyFactory.createPolicyForRoom(user, troupe);
19     })
20     .then(function(policy) {
21       var roomWithPolicyService = new RoomWithPolicyService(this.troupe, req.user, policy);
22       return roomWithPolicyService.sendBadgePullRequest();
23     })
24     .then(function() {
25       res.send({ success: true });
26     })
27     .catch(next);