-
Notifications
You must be signed in to change notification settings - Fork 2
/
cfs-fm-client.js
46 lines (40 loc) · 1.14 KB
/
cfs-fm-client.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
_.extend(FileManager, {
getTopLevelTemplate: function () {
var view = Blaze.getView( $("#cfsFileManager")[0] );
return view._templateInstance;
},
visibleManager: null,
hide: function () {
var visibleManager = this.visibleManager;
if ( visibleManager )
Blaze.remove(visibleManager);
},
launch: function (collection, opts, callback) {
check(collection, FS.Collection);
check(opts, Match.Optional(Object));
check(callback, Function);
const dataObject = {
collection,
opts,
callback
};
this.visibleManager = Blaze.renderWithData(Template.cfsFileManager, dataObject, this.getWrapperElem());
},
getWrapperElem: function () {
return $(this.wrapperElem || "body")[0];
}
});
_.extend(FileManagerGroup.prototype, {
generatePath: function () {
let pathString = this.name;
function addParentToPath(node) {
if ( !node.parentGroupId )
return;
var parent = node.getParentGroup({fields: {name: 1, parentGroupId: 1}});
pathString = parent.name + " > " + pathString;
addParentToPath(parent);
}
addParentToPath(this);
return pathString;
}
});