forked from pcs2024/NLPsoma
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.js
More file actions
126 lines (104 loc) · 4.86 KB
/
Copy pathapp.js
File metadata and controls
126 lines (104 loc) · 4.86 KB
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/**
* Module dependencies.
*/
var express = require('express');
var routes = require('./routes');
var http = require('http');
var path = require('path');
var passport = require('passport');
var app = express();
// all environments
app.set('port', process.env.PORT || 4000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(express.favicon());
// app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.cookieParser());
app.use(express.bodyParser());
app.use(express.session({
key : 'sid',
secret : 'secret'
}));
app.use(passport.initialize());
app.use(passport.session());
app.use(app.router);
// development only
if ('development' == app.get('env')) {
app.use(express.errorHandler());
}
/*
oauth setting
*/
require('./modules/oauth')(app);
app.get('/', routes.main);
app.get('/main', checkSession_get, routes.userChecking);
app.get('/document', checkSession_get, routes.document);
app.get('/bookmark', checkSession_get, routes.bookmark);
app.get('/editor', checkSession_get, routes.editor);
app.get('/editor/:documentName', checkSession_get, routes.documentEdit);
app.get('/snapshot/:hashurl', checkSession_get, routes.snapshot);
app.post('/ajax/insert_user', checkSession_post, routes.insert_user);
app.post('/ajax/insert_pageEntry', checkSession_post, routes.insert_pageEntry); //extension 에서 page를 추가할 때 쓰는 요청을 받는 부분입니다.
app.post('/ajax/insert_pageDir', checkSession_post, routes.insert_pageDir); //extension 에서 directory를 추가할 때 쓰는 요청을 받는 부분입니다.
app.post('/ajax/get_pageEntry_list', checkSession_post, routes.get_pageEntry_list); //Bookmark view에서 Entry list를 전부 가져올때 쓰는 부분입니다.
app.post('/ajax/get_pageDir_list', checkSession_post, routes.get_pageDir_list); //Bookmark view에서 directory list를 전부 가져올때 쓰는 부분입니다.
app.post('/ajax/get_pageAll_list', checkSession_post, routes.get_pageAll_list); //Bookmark view에서 directorym, entry list를 전부 가져올때 쓰는 부분입니다.
app.post('/ajax/remove_pageEntry', checkSession_post, routes.remove_pageEntry); //Bookmark view에서 entry를 지울 때 쓰는 부분입니다.
app.post('/ajax/remove_pageDir', checkSession_post, routes.remove_pageDir); //Bookmark view에서 Directory를 지울 때 쓰는 부분입니다.
app.post('/ajax/move_dirPath', checkSession_post, routes.move_dirPath); //Bookmark view에서 Directory위치를 변경할 때 쓰는 부분입니다.
app.post('/ajax/move_entryPath', checkSession_post, routes.move_entryPath); //Bookmark view에서 Entry위치를 변경할 때 쓰는 부분입니다.
app.post('/ajax/rename_pageDir', checkSession_post, routes.rename_pageDir); //Bookmark view에서 Directory 이름을 변경할 때 쓰는 부분입니다.
app.post('/ajax/rename_pageEntry', checkSession_post, routes.rename_pageEntry); //Bookmark view에서 Entry 이름을 변경할 때 쓰는 부분입니다.
app.post('/ajax/auth/extension/google', extensionCheckSession); //outh를 관장하는 부분입니다.
app.post('/ajax/document/insert', checkSession_post, routes.insert_document);
app.post('/ajax/document/update', checkSession_post, routes.update_document);
app.post('/ajax/document/remove', checkSession_post, routes.remove_document);
app.post('/ajax/document/get_list', checkSession_post, routes.get_document_list);
app.post('/ajax/document/get_content', checkSession_post, routes.get_document_content);
app.post('/ajax/category/insert', checkSession_post, routes.insert_category);
app.post('/ajax/category/update', checkSession_post, routes.update_category);
app.post('/ajax/category/remove', checkSession_post, routes.remove_category);
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
function checkSession_get(req, res, next){
if(!req.session || !req.user){
res.redirect('/');
return;
}else{
var userInfo = {
email:req.user._json.email,
name:req.user._json.name,
picture:req.user._json.picture
}
req.body.userInfo = userInfo;
}
next();
}
function checkSession_post(req, res, next){
if(typeof(next) != "function") next = function(){};
if(!req.session || !req.user){
res.json({status: false, errorMsg: "Need Login"});
return;
}else{
var userInfo = {
email:req.user._json.email,
name:req.user._json.name,
picture:req.user._json.picture
}
req.body.userInfo = userInfo;
}
next();
}
function extensionCheckSession(req, res){
if(typeof(next) != "function") next = function(){};
if(!req.session || !req.user){
res.json({status: false, errorMsg: "Need Login"});
}else{
res.json({status: true, errorMsg: null});
}
}