egirlskey/src/api/models/drive-file.ts

29 lines
724 B
TypeScript
Raw Normal View History

2017-11-06 05:37:00 +00:00
import * as mongodb from 'mongodb';
import monkDb, { nativeDbConn } from '../../db/mongodb';
2017-01-17 00:12:33 +00:00
2017-11-06 05:37:00 +00:00
const collection = monkDb.get('drive_files.files');
(collection as any).createIndex('hash'); // fuck type definition
export default collection as any; // fuck type definition
2016-12-28 22:49:51 +00:00
2017-11-06 05:37:00 +00:00
const getGridFSBucket = async (): Promise<mongodb.GridFSBucket> => {
const db = await nativeDbConn()
const bucket = new mongodb.GridFSBucket(db, {
bucketName: 'drive_files'
})
return bucket
}
export { getGridFSBucket }
2016-12-28 22:49:51 +00:00
export function validateFileName(name: string): boolean {
return (
(name.trim().length > 0) &&
(name.length <= 200) &&
(name.indexOf('\\') === -1) &&
(name.indexOf('/') === -1) &&
(name.indexOf('..') === -1)
);
}