4 * Copyright 2016 RIFT.IO Inc
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
21 import $ from 'jquery'
22 import alt
from '../../alt'
23 import utils
from '../../libraries/utils'
24 import FileManagerActions
from './FileManagerActions'
25 let Utils
= require('utils/utils.js');
26 let API_SERVER
= require('utils/rw.js').getSearchParams(window
.location
).api_server
;
27 let HOST
= API_SERVER
;
28 let NODE_PORT
= require('utils/rw.js').getSearchParams(window
.location
).api_port
|| ((window
.location
.protocol
== 'https:') ? 8443 : 8000);
29 const FileManagerSource
= {
31 getFilelist: function() {
33 remote: function(state
, id
, type
) {
34 return new Promise(function(resolve
, reject
) {
35 console
.log('Getting File Manager');
37 beforeSend
: Utils
.addAuthorizationStub
,
38 url
: 'api/file-manager?api_server=' + utils
.getSearchParams(window
.location
).api_server
+'&package_type=' + type
+ '&package_id=' + id
,
39 success: function(data
) {
40 resolve(JSON
.parse(data
));
42 error: function(error
) {
43 if (typeof error
== 'string') {
44 error
= JSON
.parse(error
);
48 }).fail(function(xhr
){
49 //Authentication and the handling of fail states should be wrapped up into a connection class.
50 Utils
.checkAuthentication(xhr
.status
);
54 success
: FileManagerActions
.getFilelistSuccess
,
55 error
: FileManagerActions
.getFilelistError
60 remote: function(state
, id
, type
, assetType
, path
, url
, refresh
) {
61 return new Promise(function(resolve
, reject
) {
62 console
.log('Adding file');
63 console
.log(id
, type
, path
, url
);
64 let splitUrl
= url
.split('/');
65 let fileName
= splitUrl
[splitUrl
.length
-1];
66 let packagePath
= refresh
? path
+ ((path
[path
.length
- 1] == '/') ? '' : '/') : (path
? path
+ '/' + fileName
: fileName
);
67 let assetFolder
= assetType
.toLowerCase();
69 beforeSend
: (xhr
) => {
70 Utils
.addAuthorizationStub(xhr
);
71 // lets get the buzy graphic rolling
72 FileManagerActions
.addFileSuccess
.defer({
73 path
: assetFolder
+ (path
? '/' + path
: ''),
78 url
: 'api/file-manager?api_server=' + utils
.getSearchParams(window
.location
).api_server
+'&package_type=' + type
+ '&package_id=' + id
+ '&package_path=' + packagePath
+ '&asset_type=' + assetType
+ '&url=' + url
,
79 success: function(data
) {
82 path
: assetFolder
+ (path
? '/' + path
: ''),
87 error: function(error
) {
88 if (typeof error
== 'string') {
89 error
= JSON
.parse(error
);
93 }).fail(function(xhr
){
94 //Authentication and the handling of fail states should be wrapped up into a connection class.
95 Utils
.checkAuthentication(xhr
.status
);
99 success
: FileManagerActions
.addFileSuccess
,
100 error
: FileManagerActions
.addFileError
103 deleteFile: function() {
105 remote: function(state
, id
, type
, assetType
, path
) {
106 let assetFolder
= assetType
.toLowerCase();
107 return new Promise(function(resolve
, reject
) {
110 beforeSend
: Utils
.addAuthorizationStub
,
111 url
: 'api/file-manager?api_server=' + utils
.getSearchParams(window
.location
).api_server
+'&package_type=' + type
+ '&package_id=' + id
+ '&asset_type=' + assetType
+ '&package_path=' + path
,
112 success: function(data
) {
113 if (data
.output
.status
== 'True') {
114 resolve({data
, assetFolder
, path
});
116 reject({data
, assetFolder
, path
})
119 error: function(error
) {
120 if (typeof error
== 'string') {
121 error
= JSON
.parse(error
);
123 reject({data
, assetFolder
, path
});
125 }).fail(function(xhr
){
126 //Authentication and the handling of fail states should be wrapped up into a connection class.
127 Utils
.checkAuthentication(xhr
.status
);
131 success
: FileManagerActions
.deleteFileSuccess
,
132 error
: FileManagerActions
.deleteFileError
135 updateFile: function() {
137 remote: function(state
, file
) {
138 return new Promise(function(resolve
, reject
) {
139 console
.log('Getting File Manager');
141 console
.log('Updating single file');
144 console
.log('Update all files')
149 success
: FileManagerActions
.getFilelistSuccess
,
150 error
: FileManagerActions
.getFilelistError
153 openDownloadMonitoringSocket: function() {
155 remote: function(state
, packageID
) {
156 return new Promise(function(resolve
, reject
) {
157 //api/operational/download-jobs/job/
159 url
: '/socket-polling?api_server=' + API_SERVER
,
161 beforeSend
: Utils
.addAuthorizationStub
,
163 url
: 'composer/api/file-manager/jobs/' + packageID
+ '?api_server=' + API_SERVER
,
165 success: function(data
, textStatus
, jqXHR
) {
166 Utils
.checkAndResolveSocketRequest(data
, resolve
, reject
);
168 }).fail(function(xhr
){
169 //Authentication and the handling of fail states should be wrapped up into a connection class.
170 Utils
.checkAuthentication(xhr
.status
);
174 success
: FileManagerActions
.openDownloadMonitoringSocketSuccess
,
175 error
: FileManagerActions
.openDownloadMonitoringSocketError
178 openFileMonitoringSocket: function() {
180 remote: function(state
, id
, type
) {
181 return new Promise(function(resolve
, reject
) {
182 //api/operational/download-jobs/job/
184 url
: '/socket-polling?api_server=' + API_SERVER
,
186 beforeSend
: Utils
.addAuthorizationStub
,
188 url
: 'composer/api/file-manager?api_server=' + utils
.getSearchParams(window
.location
).api_server
+'&package_type=' + type
+ '&package_id=' + id
190 success: function(data
, textStatus
, jqXHR
) {
191 Utils
.checkAndResolveSocketRequest(data
, resolve
, reject
);
193 }).fail(function(xhr
){
194 //Authentication and the handling of fail states should be wrapped up into a connection class.
195 Utils
.checkAuthentication(xhr
.status
);
199 success
: FileManagerActions
.getFilelistSocketSuccess
,
200 error
: FileManagerActions
.getFilelistError
205 export default FileManagerSource
;