OSDN Git Service

create directory db
authorhimetani_cafe <fumifumi@yasunaga-lab.bio.kyutech.ac.jp>
Mon, 10 Aug 2015 01:28:29 +0000 (10:28 +0900)
committerhimetani_cafe <fumifumi@yasunaga-lab.bio.kyutech.ac.jp>
Mon, 10 Aug 2015 01:28:29 +0000 (10:28 +0900)
client/app/components/createDirModal/createDirModal.controller.js [new file with mode: 0644]
client/app/components/createDirModal/createDirModal.html [new file with mode: 0644]
client/app/components/uploadFileModal/uploadFileModal.controller.js
client/index.html
server/api/dirCreation/index.js
server/api/upload/index.js [deleted file]
server/app.js
server/routes.js

diff --git a/client/app/components/createDirModal/createDirModal.controller.js b/client/app/components/createDirModal/createDirModal.controller.js
new file mode 100644 (file)
index 0000000..2da6ac4
--- /dev/null
@@ -0,0 +1,27 @@
+'use strict'
+
+angular.module('zephyrApp')
+.controller('CreateDirModalController', function($scope, $modalInstance, Restangular, user, $timeout) {
+    // To send multipart request from angular, we should set below
+    var baseDirCreation = Restangular.all('/api/dirCreation')    
+    $scope.create = function() {
+        var params = {
+            dir: $scope.path,
+            email: user.getEmail(),
+            createdDirName: $scope.createdDirName
+        }
+        baseDirCreation.post(params).then(function(status) {
+            console.log(status)
+            $modalInstance.close()
+        })
+    }
+
+    $scope.$on('conflict', function() {
+        $scope.alert = true
+    })
+
+    $scope.close = function() {
+        $modalInstance.close()
+    }
+
+})
diff --git a/client/app/components/createDirModal/createDirModal.html b/client/app/components/createDirModal/createDirModal.html
new file mode 100644 (file)
index 0000000..5e2d32b
--- /dev/null
@@ -0,0 +1,23 @@
+<div class="modal-header">
+<h3>Save Notes</h3>
+</div>
+
+<div class="modal-body">
+    <div class="container">
+        <input type="text"
+               ng-model="createdDirName" />
+    </div>
+    <p class="text-danger" ng-show="alert">already exists</p>
+</div>
+
+<div class="modal-footer">
+    <ul class="list-inline">
+        <li>
+            <button class="btn btn-default" ng-click="create()" type="button">create</button>
+        </li>
+        <li>
+            <button class="btn btn-default" ng-click="close()" type="button">cancel</button>
+        </li>
+    </ul>
+</div>
+
index e6bcad9..f6387d2 100644 (file)
@@ -1,9 +1,7 @@
 'use strict'
 
 angular.module('zephyrApp')
-.controller('UploadFileModalController', function($scope, $modalInstance, Restangular, socket) {
-    // To send multipart request from angular, we should set below
-    var baseUpload = Restangular.all('/api/upload').withHttpConfig({transformRequest: angular.identity})    
+.controller('UploadFileModalController', function($scope, $modalInstance, socket) {
     $scope.upload = function() {
         var array = []
         angular.forEach($scope.uploadFiles, function(file) {
index 9079a64..e20c34a 100644 (file)
@@ -48,6 +48,7 @@
         <script src="/client/app/components/board/board.controller.js"></script>
         <script src="/client/app/components/board/board.js"></script>
         <script src="/client/app/components/commandModal/commandModal.controller.js"></script>
+        <script src="/client/app/components/createDirModal/createDirModal.controller.js"></script>
         <script src="/client/app/components/login/login.controller.js"></script>
         <script src="/client/app/components/login/login.js"></script>
         <script src="/client/app/components/notes/notes.controller.js"></script>
index 52891f6..011c4b1 100644 (file)
@@ -1,9 +1,31 @@
 'use strict';
 
-var express = require('express');
-var router  = express.Router();
+var express = require('express'),
+    router  = express.Router(),
+    path = require('path'),
+    fs = require('fs'),
+    jb = require('../../jb.js')
+
+router.post('/', function(req, res) {
+    var dir = req.body.dir,
+        email = req.body.email,
+        name = req.body.createdDirName,
+        createdDirPath = path.normalize(__dirname+'/../../../'+dir+'/'+name)
+    
+    try {
+        fs.mkdirSync(createdDirPath)
+        res.send('dirCreation success')
+    } catch(e) {
+        res.sendStatus(409)
+    }
+
+    if(dir === 'workspace') {
+        jb.update('user',
+                { email: email ,
+                $addToSet: { workspaces: name }
+                })
+    }
 
-router.get('/', function() {
 
 });
 
diff --git a/server/api/upload/index.js b/server/api/upload/index.js
deleted file mode 100644 (file)
index 48f80fb..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-var express = require('express'),
-    router  = express.Router(),
-    path = require('path'),
-    formidable = require('formidable')
-
-
-router.post('/', function(req, res) {
-    var form = new formidable.IncomingForm()
-    form.maxFieldsSize = 10 * 1024 * 1024
-
-    form.on('field', function(name, value) {
-        if(name === 'dir') 
-            form.uploadDir = path.normalize(__dirname+'/../../../'+value+'/')
-        console.log(form.uploadDir)
-    })
-
-    form.on('fileBegin', function(field, file) {
-        file.path = form.uploadDir + file.name
-    })
-    
-    form.parse(req, function(err, fields, files) {
-    })
-
-    res.send('success')
-    
-});
-
-module.exports = router;
index b8cfbb4..fb311c6 100644 (file)
@@ -15,8 +15,6 @@ var server = app.listen(config.port, config.ip, function () {
     console.log(config.root);
     console.log('iEos listening at http://%s:%s', config.ip, config.port);
     console.log(app.get('env'))
-
-    
 });
 
 var io = require('socket.io').listen(server)
index 78a8801..b9df3eb 100644 (file)
@@ -13,7 +13,7 @@ module.exports = function(app) {
     app.use('/api/commandExecution', require('./api/commandExecution'))
     app.use('/api/noteCreation', require('./api/noteCreation'))
     app.use('/api/noteInfo', require('./api/noteInfo'))
-    app.use('/api/upload', require('./api/upload'))
+    app.use('/api/dirCreation', require('./api/dirCreation'))
     app.use('/auth/login', require('./auth/login'))
     app.use('/auth/signup', require('./auth/signup'))