• R/O
  • HTTP
  • SSH
  • HTTPS

zephyr: Commit

This repository is for zephyr, which is implemented for a GUI of Eos.


Commit MetaInfo

Revisionb5f5176dc28c567112cc454e20feb6ad27c80f14 (tree)
Time2015-08-10 10:28:29
Authorhimetani_cafe <fumifumi@yasu...>
Commiterhimetani_cafe

Log Message

create directory

Change Summary

Incremental Difference

--- /dev/null
+++ b/client/app/components/createDirModal/createDirModal.controller.js
@@ -0,0 +1,27 @@
1+'use strict'
2+
3+angular.module('zephyrApp')
4+.controller('CreateDirModalController', function($scope, $modalInstance, Restangular, user, $timeout) {
5+ // To send multipart request from angular, we should set below
6+ var baseDirCreation = Restangular.all('/api/dirCreation')
7+ $scope.create = function() {
8+ var params = {
9+ dir: $scope.path,
10+ email: user.getEmail(),
11+ createdDirName: $scope.createdDirName
12+ }
13+ baseDirCreation.post(params).then(function(status) {
14+ console.log(status)
15+ $modalInstance.close()
16+ })
17+ }
18+
19+ $scope.$on('conflict', function() {
20+ $scope.alert = true
21+ })
22+
23+ $scope.close = function() {
24+ $modalInstance.close()
25+ }
26+
27+})
--- /dev/null
+++ b/client/app/components/createDirModal/createDirModal.html
@@ -0,0 +1,23 @@
1+<div class="modal-header">
2+<h3>Save Notes</h3>
3+</div>
4+
5+<div class="modal-body">
6+ <div class="container">
7+ <input type="text"
8+ ng-model="createdDirName" />
9+ </div>
10+ <p class="text-danger" ng-show="alert">already exists</p>
11+</div>
12+
13+<div class="modal-footer">
14+ <ul class="list-inline">
15+ <li>
16+ <button class="btn btn-default" ng-click="create()" type="button">create</button>
17+ </li>
18+ <li>
19+ <button class="btn btn-default" ng-click="close()" type="button">cancel</button>
20+ </li>
21+ </ul>
22+</div>
23+
--- a/client/app/components/uploadFileModal/uploadFileModal.controller.js
+++ b/client/app/components/uploadFileModal/uploadFileModal.controller.js
@@ -1,9 +1,7 @@
11 'use strict'
22
33 angular.module('zephyrApp')
4-.controller('UploadFileModalController', function($scope, $modalInstance, Restangular, socket) {
5- // To send multipart request from angular, we should set below
6- var baseUpload = Restangular.all('/api/upload').withHttpConfig({transformRequest: angular.identity})
4+.controller('UploadFileModalController', function($scope, $modalInstance, socket) {
75 $scope.upload = function() {
86 var array = []
97 angular.forEach($scope.uploadFiles, function(file) {
--- a/client/index.html
+++ b/client/index.html
@@ -48,6 +48,7 @@
4848 <script src="/client/app/components/board/board.controller.js"></script>
4949 <script src="/client/app/components/board/board.js"></script>
5050 <script src="/client/app/components/commandModal/commandModal.controller.js"></script>
51+ <script src="/client/app/components/createDirModal/createDirModal.controller.js"></script>
5152 <script src="/client/app/components/login/login.controller.js"></script>
5253 <script src="/client/app/components/login/login.js"></script>
5354 <script src="/client/app/components/notes/notes.controller.js"></script>
--- a/server/api/dirCreation/index.js
+++ b/server/api/dirCreation/index.js
@@ -1,9 +1,31 @@
11 'use strict';
22
3-var express = require('express');
4-var router = express.Router();
3+var express = require('express'),
4+ router = express.Router(),
5+ path = require('path'),
6+ fs = require('fs'),
7+ jb = require('../../jb.js')
8+
9+router.post('/', function(req, res) {
10+ var dir = req.body.dir,
11+ email = req.body.email,
12+ name = req.body.createdDirName,
13+ createdDirPath = path.normalize(__dirname+'/../../../'+dir+'/'+name)
14+
15+ try {
16+ fs.mkdirSync(createdDirPath)
17+ res.send('dirCreation success')
18+ } catch(e) {
19+ res.sendStatus(409)
20+ }
21+
22+ if(dir === 'workspace') {
23+ jb.update('user',
24+ { email: email ,
25+ $addToSet: { workspaces: name }
26+ })
27+ }
528
6-router.get('/', function() {
729
830 });
931
--- a/server/api/upload/index.js
+++ /dev/null
@@ -1,30 +0,0 @@
1-'use strict';
2-
3-var express = require('express'),
4- router = express.Router(),
5- path = require('path'),
6- formidable = require('formidable')
7-
8-
9-router.post('/', function(req, res) {
10- var form = new formidable.IncomingForm()
11- form.maxFieldsSize = 10 * 1024 * 1024
12-
13- form.on('field', function(name, value) {
14- if(name === 'dir')
15- form.uploadDir = path.normalize(__dirname+'/../../../'+value+'/')
16- console.log(form.uploadDir)
17- })
18-
19- form.on('fileBegin', function(field, file) {
20- file.path = form.uploadDir + file.name
21- })
22-
23- form.parse(req, function(err, fields, files) {
24- })
25-
26- res.send('success')
27-
28-});
29-
30-module.exports = router;
--- a/server/app.js
+++ b/server/app.js
@@ -15,8 +15,6 @@ var server = app.listen(config.port, config.ip, function () {
1515 console.log(config.root);
1616 console.log('iEos listening at http://%s:%s', config.ip, config.port);
1717 console.log(app.get('env'))
18-
19-
2018 });
2119
2220 var io = require('socket.io').listen(server)
--- a/server/routes.js
+++ b/server/routes.js
@@ -13,7 +13,7 @@ module.exports = function(app) {
1313 app.use('/api/commandExecution', require('./api/commandExecution'))
1414 app.use('/api/noteCreation', require('./api/noteCreation'))
1515 app.use('/api/noteInfo', require('./api/noteInfo'))
16- app.use('/api/upload', require('./api/upload'))
16+ app.use('/api/dirCreation', require('./api/dirCreation'))
1717 app.use('/auth/login', require('./auth/login'))
1818 app.use('/auth/signup', require('./auth/signup'))
1919
Show on old repository browser