Skip to content

Commit

Permalink
Updated files to ES6 (WIP - tests passing)
Browse files Browse the repository at this point in the history
  • Loading branch information
MKHenson committed May 3, 2016
1 parent e2e3072 commit 533fe74
Show file tree
Hide file tree
Showing 6 changed files with 512 additions and 922 deletions.
6 changes: 3 additions & 3 deletions src/bucket-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -607,7 +607,7 @@ export class BucketManager
removeFilesByBucket(bucket: string): Promise<Array<string>|Error>
{
if (!bucket || bucket.trim() == "")
return Promise.reject( new Error("Please specify a valid bucket"));
return Promise.reject<Error>( new Error("Please specify a valid bucket"));

// Create the search query for each of the files
var searchQuery = { $or: <Array<users.IFileEntry>>[{ bucketId: bucket }, { bucketName: bucket }] };
Expand Down Expand Up @@ -738,7 +738,7 @@ export class BucketManager
that.withinAPILimit(file.user).then(function (val) : Promise<Error|boolean> {

if (!val)
return Promise.reject(new Error("You do not have enough API calls left to make this request"));
return Promise.reject<Error>(new Error("You do not have enough API calls left to make this request"));

return that.incrementAPI(file.user);

Expand Down Expand Up @@ -778,7 +778,7 @@ export class BucketManager
that.withinAPILimit(file.user).then(function (val) : Promise<Error | boolean>
{
if (!val)
return Promise.reject( new Error("You do not have enough API calls left to make this request"));
return Promise.reject<Error>( new Error("You do not have enough API calls left to make this request"));

return that.incrementAPI(file.user);

Expand Down
8 changes: 4 additions & 4 deletions src/controllers/bucket-controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ export class BucketController extends Controller
manager.getFile(req.params.file, req._user.dbEntry.username).then(function(file) : Promise<Error|users.IFileEntry>
{
if (!file)
return Promise.reject(new Error(`Could not find the file '${req.params.file}'`));
return Promise.reject<Error>(new Error(`Could not find the file '${req.params.file}'`));

return manager.renameFile(file, req.body.name);

Expand Down Expand Up @@ -492,7 +492,7 @@ export class BucketController extends Controller
manager.getIBucket(req.params.bucket, req._user.dbEntry.username).then(function(bucket) : Promise<Error|number>
{
if (!bucket)
return Promise.reject(new Error(`Could not find the bucket '${req.params.bucket}'`));
return Promise.reject<Error>(new Error(`Could not find the bucket '${req.params.bucket}'`));

bucketEntry = bucket;
return manager.numFiles({ bucketId: bucket.identifier });
Expand Down Expand Up @@ -623,12 +623,12 @@ export class BucketController extends Controller
if (user)
return manager.withinAPILimit(username);
else
return Promise.reject(new Error(`Could not find a user with the name '${username}'`));
return Promise.reject<Error>(new Error(`Could not find a user with the name '${username}'`));

}).then(function( inLimits: boolean ) : Promise<Error|gcloud.IBucket>
{
if (!inLimits)
return Promise.reject(new Error(`You have run out of API calls, please contact one of our sales team or upgrade your account.`));
return Promise.reject<Error>(new Error(`You have run out of API calls, please contact one of our sales team or upgrade your account.`));

return manager.createBucket(bucketName, username);

Expand Down
74 changes: 0 additions & 74 deletions src/definitions/required/es6-promise.d.ts

This file was deleted.

31 changes: 13 additions & 18 deletions src/permission-controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -107,27 +107,22 @@ export function requireUser(req: def.AuthRequest, res: express.Response, next: F
* @param {string} existingUser [Optional] If specified this also checks if the authenticated user is the user making the request
* @param {Function} next
*/
export function requestHasPermission(level: UserPrivileges, req: def.AuthRequest, res: express.Response, existingUser?: string): Promise<boolean>
export async function requestHasPermission(level: UserPrivileges, req: def.AuthRequest, res: express.Response, existingUser?: string): Promise<boolean>
{
return new Promise(function (resolve, reject)
{
UserManager.get.loggedIn(<express.Request><Express.Request>req, res).then(function (user)
{
if (!user)
return reject(new Error("You must be logged in to make this request"));
var user = await UserManager.get.loggedIn(<express.Request><Express.Request>req, res);

if (existingUser !== undefined)
{
if ((user.dbEntry.email != existingUser && user.dbEntry.username != existingUser) && user.dbEntry.privileges > level)
return reject(new Error("You don't have permission to make this request"));
}
else if (user.dbEntry.privileges > level)
return reject(new Error("You don't have permission to make this request"));
if (!user)
throw new Error("You must be logged in to make this request");

req._user = user;
if (existingUser !== undefined)
{
if ((user.dbEntry.email != existingUser && user.dbEntry.username != existingUser) && user.dbEntry.privileges > level)
throw new Error("You don't have permission to make this request");
}
else if (user.dbEntry.privileges > level)
throw new Error("You don't have permission to make this request");

resolve(true);
req._user = user;

})
})
return true;
}
Loading

0 comments on commit 533fe74

Please sign in to comment.