summaryrefslogtreecommitdiff
path: root/app/client/dataset/dataset.actions.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/client/dataset/dataset.actions.js')
-rw-r--r--app/client/dataset/dataset.actions.js65
1 files changed, 62 insertions, 3 deletions
diff --git a/app/client/dataset/dataset.actions.js b/app/client/dataset/dataset.actions.js
index f42e15c..983d586 100644
--- a/app/client/dataset/dataset.actions.js
+++ b/app/client/dataset/dataset.actions.js
@@ -1,12 +1,71 @@
// import socket from '../socket'
import types from '../types'
+import actions from '../actions'
+import { parser } from '../api'
+
+export const createOrUpdateFolder = (module, folder) => dispatch => {
+ if (! folder || ! folder.id) {
+ actions.folder.create({
+ // username... should get added inside the API
+ module: module.name,
+ datatype: module.datatype,
+ activity: 'dataset',
+ name
+ }).then(folder => {
+ // set current folder
+ })
+ }
+ else {
+ actions.folder.update({
+ id: folder.id,
+ module: module.name,
+ datatype: module.datatype,
+ activity: 'dataset',
+ name
+ })
+ }
+}
+
+export const uploadFile = (module, folder, file) => dispatch => {
+ const fd = new FormData()
+ fd.append('file', file)
+ actions.folder.upload(fd, {
+ id: folder.id,
+ module: module.name,
+ activity: 'file',
+ epoch: 0,
+ processed: false,
+ generated: false,
+ })
+}
+
+export const fetchURL = (module, folder, url) => {
+ // name url
+ // mime datatype
+ // duration analysis
+ // size activity
+ // opt created_at updated_at
+ parser.parse(url, media => {
+ if (!media) return
+ console.log('media', media)
+ actions.file.create({
+ folder_id: folder.id,
+ module: module.name,
+ activity: 'url',
+ duration: parseInt(media.duration) || 0,
+ epoch: 0,
+ processed: false,
+ generated: false,
+ opt: media,
+ url
+ })
+ })
+}
+
export const uploadFiles = (files) => {
return { type: types.dataset.upload_files }
}
-export const fetchURL = (url) => {
- return { type: types.dataset.fetch_url }
-}
// export const uploadFiles = (files) => {
// return dispatch => {