Showing
8 changed files
with
62 additions
and
69 deletions
... | @@ -9,7 +9,6 @@ var index = require('./routes/index'); | ... | @@ -9,7 +9,6 @@ var index = require('./routes/index'); |
9 | var users = require('./routes/users'); | 9 | var users = require('./routes/users'); |
10 | var calendar = require('./routes/calendar'); | 10 | var calendar = require('./routes/calendar'); |
11 | var events = require('./routes/events'); | 11 | var events = require('./routes/events'); |
12 | -var login = require('./routes/login') | ||
13 | 12 | ||
14 | passport.serializeUser(function(user,done) { | 13 | passport.serializeUser(function(user,done) { |
15 | console.log('serialized'); | 14 | console.log('serialized'); |
... | @@ -45,7 +44,6 @@ app.use('/', index); | ... | @@ -45,7 +44,6 @@ app.use('/', index); |
45 | app.use('/users', users); | 44 | app.use('/users', users); |
46 | app.use('/calendar',calendar); | 45 | app.use('/calendar',calendar); |
47 | app.use('/events',events); | 46 | app.use('/events',events); |
48 | -app.use('/login',login); | ||
49 | 47 | ||
50 | // catch 404 and forward to error handler | 48 | // catch 404 and forward to error handler |
51 | app.use(function(req, res, next) { | 49 | app.use(function(req, res, next) { | ... | ... |
... | @@ -6,15 +6,6 @@ router.post('/calendar',function(req,res,next){ | ... | @@ -6,15 +6,6 @@ router.post('/calendar',function(req,res,next){ |
6 | var id = req.body.id; | 6 | var id = req.body.id; |
7 | res.render('calendar',{id: id}); | 7 | res.render('calendar',{id: id}); |
8 | }); | 8 | }); |
9 | -//router.get('/',function(req,res,next){ | ||
10 | - //var accessToken = req.session.access_token; | ||
11 | - //gcal(accessToken).calendarList.list(function(err,data){ | ||
12 | - //if(err) return res.send(err); | ||
13 | - //return res.render('calendar',{calendars : data}); | ||
14 | - //}); | ||
15 | - //res.render('calendar',{id:1}); | ||
16 | - console.log(1); | ||
17 | -//}) | ||
18 | 9 | ||
19 | calList = new Array(); | 10 | calList = new Array(); |
20 | 11 | ||
... | @@ -29,13 +20,10 @@ router.get('/', function(req, res, next) { | ... | @@ -29,13 +20,10 @@ router.get('/', function(req, res, next) { |
29 | if(err) return console.log(err); | 20 | if(err) return console.log(err); |
30 | else { | 21 | else { |
31 | calList = data.items; | 22 | calList = data.items; |
32 | - //console.log(calList); | ||
33 | res.render('calendar',{calList:calList,googleToken:googleToken,kakaoToken:kakaoToken}); | 23 | res.render('calendar',{calList:calList,googleToken:googleToken,kakaoToken:kakaoToken}); |
34 | } | 24 | } |
35 | }); | 25 | }); |
36 | }); | 26 | }); |
37 | 27 | ||
38 | 28 | ||
39 | -module.exports = router; | ||
40 | - | ||
41 | -//db에서 calendar id에 해당하는 이벤트 출력 | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
29 | +module.exports = router; | ||
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -79,8 +79,6 @@ router.post('/add', function(req, res, next) { | ... | @@ -79,8 +79,6 @@ router.post('/add', function(req, res, next) { |
79 | 79 | ||
80 | router.post('/remove', function(req, res, next) { | 80 | router.post('/remove', function(req, res, next) { |
81 | var eId = req.body.eId; | 81 | var eId = req.body.eId; |
82 | - console.log(id); | ||
83 | - console.log(eId); | ||
84 | gcal(googleToken).events.delete(id, eId, function(err, data) { | 82 | gcal(googleToken).events.delete(id, eId, function(err, data) { |
85 | if(err) return res.send(err); | 83 | if(err) return res.send(err); |
86 | return res.redirect('/events'); | 84 | return res.redirect('/events'); |
... | @@ -114,9 +112,7 @@ var timestamp = function (date) { | ... | @@ -114,9 +112,7 @@ var timestamp = function (date) { |
114 | 112 | ||
115 | function checkEvents(){ | 113 | function checkEvents(){ |
116 | var nDate = new Date(); | 114 | var nDate = new Date(); |
117 | - console.log(nDate); | ||
118 | for(var i = 0;i<events.length;i++){ | 115 | for(var i = 0;i<events.length;i++){ |
119 | - console.log(events[i].start.dateTime) | ||
120 | var time = events[i].start.dateTime.split(/[-:+T]/); | 116 | var time = events[i].start.dateTime.split(/[-:+T]/); |
121 | var tDate = new Date(time[0],time[1]-1,time[2],time[3],time[4],time[5]); | 117 | var tDate = new Date(time[0],time[1]-1,time[2],time[3],time[4],time[5]); |
122 | if(nDate.getFullYear()==tDate.getFullYear()&&nDate.getMonth()==tDate.getMonth()&&nDate.getDate()==tDate.getDate()){ | 118 | if(nDate.getFullYear()==tDate.getFullYear()&&nDate.getMonth()==tDate.getMonth()&&nDate.getDate()==tDate.getDate()){ |
... | @@ -135,12 +131,10 @@ var timestamp = function (date) { | ... | @@ -135,12 +131,10 @@ var timestamp = function (date) { |
135 | }; | 131 | }; |
136 | 132 | ||
137 | function sendMessage(event,minute){ | 133 | function sendMessage(event,minute){ |
138 | - console.log(event); | ||
139 | - console.log(minute); | ||
140 | let template_objectObj = { | 134 | let template_objectObj = { |
141 | "object_type" : 'text', | 135 | "object_type" : 'text', |
142 | - "text" : " Reminder Talk\n"+event.summary+"\n" | 136 | + "text" : " [Reminder Talk]\n"+"일정 : "+event.summary+ |
143 | - +event.start.dateTime+" ~ "+event.end.dateTime+"\n일정시작까지 "+minute+"분 남았습니다!", | 137 | + "\n시작 : " + event.start.dateTime+"\n종료 : "+event.end.dateTime+"\n일정시작까지 "+minute+"분 남았습니다!", |
144 | "link":{ | 138 | "link":{ |
145 | "web_url" :'https://developers.kakao.com', | 139 | "web_url" :'https://developers.kakao.com', |
146 | "mobile_web_url" : 'https://developers.kakao.com', | 140 | "mobile_web_url" : 'https://developers.kakao.com', |
... | @@ -175,6 +169,4 @@ var timestamp = function (date) { | ... | @@ -175,6 +169,4 @@ var timestamp = function (date) { |
175 | setInterval(checkEvents,5*60*1000); | 169 | setInterval(checkEvents,5*60*1000); |
176 | //5분에 한 번 수행 | 170 | //5분에 한 번 수행 |
177 | 171 | ||
178 | -module.exports = router; | ||
179 | - | ||
180 | -//timestamp(new Date(1983, 4, 9, 11, 5, 17)); | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
172 | +module.exports = router; | ||
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -3,8 +3,8 @@ var router = express.Router(); | ... | @@ -3,8 +3,8 @@ var router = express.Router(); |
3 | const KakaoStrategy = require("passport-kakao").Strategy; | 3 | const KakaoStrategy = require("passport-kakao").Strategy; |
4 | var passport = require('passport'); | 4 | var passport = require('passport'); |
5 | var GoogleStrategy = require('passport-google-oauth').OAuth2Strategy; | 5 | var GoogleStrategy = require('passport-google-oauth').OAuth2Strategy; |
6 | -var googleLogin = false; | 6 | + |
7 | -var kakaoLogin =false; | 7 | +//구글 로그인 |
8 | passport.use(new GoogleStrategy({ | 8 | passport.use(new GoogleStrategy({ |
9 | clientID:'978869138601-u3euf0c04sbdor68r30m599gilvjn91e.apps.googleusercontent.com', | 9 | clientID:'978869138601-u3euf0c04sbdor68r30m599gilvjn91e.apps.googleusercontent.com', |
10 | clientSecret:'9ERYhDZJK-CrX3moES2z11ol', | 10 | clientSecret:'9ERYhDZJK-CrX3moES2z11ol', |
... | @@ -23,11 +23,11 @@ router.get('/auth/google/callback',passport.authenticate('google',{ | ... | @@ -23,11 +23,11 @@ router.get('/auth/google/callback',passport.authenticate('google',{ |
23 | failureRedirect:'/' | 23 | failureRedirect:'/' |
24 | }),function(req, res) { | 24 | }),function(req, res) { |
25 | req.session.googleToken = req.user.accessToken; | 25 | req.session.googleToken = req.user.accessToken; |
26 | - googleLogin = true; | ||
27 | if(!req.session.kakaoToken) return res.redirect('/'); | 26 | if(!req.session.kakaoToken) return res.redirect('/'); |
28 | else return res.redirect('/calendar'); | 27 | else return res.redirect('/calendar'); |
29 | }); | 28 | }); |
30 | 29 | ||
30 | +//카카오 로그인 | ||
31 | const kakaoKey = { | 31 | const kakaoKey = { |
32 | clientID: "cf6ae2286a1b022bafa454588f32878b", | 32 | clientID: "cf6ae2286a1b022bafa454588f32878b", |
33 | callbackURL: "/oauth/callback" | 33 | callbackURL: "/oauth/callback" |
... | @@ -36,7 +36,6 @@ const kakaoKey = { | ... | @@ -36,7 +36,6 @@ const kakaoKey = { |
36 | passport.use( | 36 | passport.use( |
37 | "kakao-login", | 37 | "kakao-login", |
38 | new KakaoStrategy(kakaoKey, (accessToken, refreshToken, profile, done) => { | 38 | new KakaoStrategy(kakaoKey, (accessToken, refreshToken, profile, done) => { |
39 | - console.log(profile); | ||
40 | profile.accessToken = accessToken; | 39 | profile.accessToken = accessToken; |
41 | return done(null,profile); | 40 | return done(null,profile); |
42 | }) | 41 | }) |
... | @@ -46,25 +45,20 @@ router.get( | ... | @@ -46,25 +45,20 @@ router.get( |
46 | "/oauth/callback", | 45 | "/oauth/callback", |
47 | passport.authenticate("kakao-login",{failureRedirect:'/'}),function(req, res) { | 46 | passport.authenticate("kakao-login",{failureRedirect:'/'}),function(req, res) { |
48 | req.session.kakaoToken = req.user.accessToken; | 47 | req.session.kakaoToken = req.user.accessToken; |
49 | - kakaoLogin = true; | ||
50 | if(!req.session.googleToken) return res.redirect('/'); | 48 | if(!req.session.googleToken) return res.redirect('/'); |
51 | else return res.redirect('/calendar'); | 49 | else return res.redirect('/calendar'); |
52 | }); | 50 | }); |
53 | 51 | ||
54 | 52 | ||
55 | router.get('/',function(req,res,next){ | 53 | router.get('/',function(req,res,next){ |
56 | - res.render('index',{title:'Reminder-Talk',google:googleLogin,kakao:kakaoLogin}); | 54 | + res.render('index',{title:'Reminder-Talk'}); |
57 | }); | 55 | }); |
58 | 56 | ||
59 | router.get('/logout', function(req, res) { | 57 | router.get('/logout', function(req, res) { |
60 | req.logout(); | 58 | req.logout(); |
61 | - console.log(req.session); | ||
62 | req.session = null; | 59 | req.session = null; |
63 | res.redirect('/'); | 60 | res.redirect('/'); |
64 | }); | 61 | }); |
65 | 62 | ||
66 | 63 | ||
67 | module.exports = router; | 64 | module.exports = router; |
68 | - | ||
69 | -//db에 id 별 이벤트 저장하고 calendar page 에서 출력해주자! | ||
70 | -//문제점 : 비동기식 진행이어서 getAllcalendarID 함수 실행 후 바로 list 출력 안됨. console.log 먼저 출력됨 | ... | ... |
routes/login.js
deleted
100644 → 0
... | @@ -2,20 +2,41 @@ | ... | @@ -2,20 +2,41 @@ |
2 | <html> | 2 | <html> |
3 | <head> | 3 | <head> |
4 | <link rel='stylesheet' href='/stylesheets/style.css' /> | 4 | <link rel='stylesheet' href='/stylesheets/style.css' /> |
5 | + <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Jua|Nanum+Brush+Script|Yeon+Sung&display=swap&subset=korean" > | ||
6 | + <style> | ||
7 | + #d{ | ||
8 | + background-color: none; | ||
9 | + border: 1px solid #772f9c; | ||
10 | + line-height: 1; | ||
11 | + font-size: 17px; | ||
12 | + width: 65%; | ||
13 | + padding:10px 15px; | ||
14 | + display: block; | ||
15 | + box-sizing: border-box; | ||
16 | + border-radius: 60px; | ||
17 | + color: #772f9c; | ||
18 | + font-weight: 100; | ||
19 | + letter-spacing: 0.01em; | ||
20 | + position: relative; | ||
21 | + z-index: 1; | ||
22 | + margin-left: 100px; | ||
23 | + } | ||
24 | +} | ||
25 | + </style> | ||
5 | <ul><p><a href="/logout"><font size="4">Logout</font></a></p></ul> | 26 | <ul><p><a href="/logout"><font size="4">Logout</font></a></p></ul> |
6 | </head> | 27 | </head> |
7 | - <body bgcolor="#ff4a56"> | 28 | + <body bgcolor="e7ded9"> |
8 | <center> | 29 | <center> |
9 | <br> | 30 | <br> |
10 | <h1>Calendar ID Lists</h1> | 31 | <h1>Calendar ID Lists</h1> |
11 | <p> | 32 | <p> |
12 | <form action="/events" method="POST"> | 33 | <form action="/events" method="POST"> |
13 | - <input type=hidden name="googleToken" value=<%= googleToken %>> | 34 | + <input id='d' type=hidden name="googleToken" value=<%= googleToken %>> |
14 | <br><br> | 35 | <br><br> |
15 | - <input type=hidden name="kakaoToken" value=<%= kakaoToken %>> | 36 | + <input id='d' type=hidden name="kakaoToken" value=<%= kakaoToken %>> |
16 | <br><br> | 37 | <br><br> |
17 | <% calList.forEach(function(val){ %> | 38 | <% calList.forEach(function(val){ %> |
18 | - <input type=submit name="id" value=<%= val.id %>> | 39 | + <input id='d' type=submit name="id" value=<%= val.id %>> |
19 | <br><br> | 40 | <br><br> |
20 | <% }) %> | 41 | <% }) %> |
21 | </form> | 42 | </form> | ... | ... |
... | @@ -3,6 +3,7 @@ | ... | @@ -3,6 +3,7 @@ |
3 | <head> | 3 | <head> |
4 | <link rel='stylesheet' href='/stylesheets/style.css' /> | 4 | <link rel='stylesheet' href='/stylesheets/style.css' /> |
5 | <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"/> | 5 | <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"/> |
6 | + <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Jua|Nanum+Brush+Script|Yeon+Sung&display=swap&subset=korean" > | ||
6 | <style> | 7 | <style> |
7 | /* NOTE: The styles were added inline because Prefixfree needs access to your styles and they must be inlined if they are on local disk! */ | 8 | /* NOTE: The styles were added inline because Prefixfree needs access to your styles and they must be inlined if they are on local disk! */ |
8 | .transition, form button, form .question label, form .question input[type="text"] { | 9 | .transition, form button, form .question label, form .question input[type="text"] { |
... | @@ -13,17 +14,17 @@ | ... | @@ -13,17 +14,17 @@ |
13 | } | 14 | } |
14 | 15 | ||
15 | * { | 16 | * { |
16 | - font-family: Helvetica, sans-serif; | ||
17 | font-weight: light; | 17 | font-weight: light; |
18 | -webkit-font-smoothing: antialiased; | 18 | -webkit-font-smoothing: antialiased; |
19 | } | 19 | } |
20 | 20 | ||
21 | html { | 21 | html { |
22 | - background-color: #ff4a56; | 22 | + background-color: #e7ded9; |
23 | } | 23 | } |
24 | 24 | ||
25 | -h2{ | 25 | +h1{ |
26 | margin-left:20px; | 26 | margin-left:20px; |
27 | + font-family: 'Jua', sans-serif; | ||
27 | } | 28 | } |
28 | 29 | ||
29 | form { | 30 | form { |
... | @@ -31,8 +32,9 @@ form { | ... | @@ -31,8 +32,9 @@ form { |
31 | display: inline-block; | 32 | display: inline-block; |
32 | max-width: 300x; | 33 | max-width: 300x; |
33 | box-sizing: border-box; | 34 | box-sizing: border-box; |
34 | - padding: 30px 25px; | 35 | + padding: 20px 20px; |
35 | background-color: white; | 36 | background-color: white; |
37 | + border: 2px solid #772f9c; | ||
36 | border-radius: 40px; | 38 | border-radius: 40px; |
37 | left: 30%; | 39 | left: 30%; |
38 | margin:50px; | 40 | margin:50px; |
... | @@ -40,34 +42,37 @@ form { | ... | @@ -40,34 +42,37 @@ form { |
40 | -ms-transform: translate(-50%, 0); | 42 | -ms-transform: translate(-50%, 0); |
41 | -webkit-transform: translate(-50%, 0); | 43 | -webkit-transform: translate(-50%, 0); |
42 | transform: translate(-50%, 0); | 44 | transform: translate(-50%, 0); |
45 | + font-family: 'Yeon Sung', cursive; | ||
43 | } | 46 | } |
44 | -form h1 { | 47 | +form h2 { |
45 | - color: #ff4a56; | 48 | + color: #772f9c; |
46 | font-weight: 100; | 49 | font-weight: 100; |
47 | letter-spacing: 0.01em; | 50 | letter-spacing: 0.01em; |
48 | margin-left: 15px; | 51 | margin-left: 15px; |
49 | margin-bottom: 35px; | 52 | margin-bottom: 35px; |
50 | text-transform: uppercase; | 53 | text-transform: uppercase; |
54 | + font-family: 'Jua', sans-serif; | ||
51 | } | 55 | } |
52 | form button { | 56 | form button { |
53 | margin-top: 35px; | 57 | margin-top: 35px; |
54 | background-color: white; | 58 | background-color: white; |
55 | - border: 1px solid #ff4a56; | 59 | + border: 1px solid #772f9c; |
56 | line-height: 0; | 60 | line-height: 0; |
57 | font-size: 17px; | 61 | font-size: 17px; |
58 | display: inline-block; | 62 | display: inline-block; |
59 | box-sizing: border-box; | 63 | box-sizing: border-box; |
60 | padding: 20px 15px; | 64 | padding: 20px 15px; |
61 | border-radius: 60px; | 65 | border-radius: 60px; |
62 | - color: #ff4a56; | 66 | + color: #772f9c; |
63 | font-weight: 100; | 67 | font-weight: 100; |
64 | letter-spacing: 0.01em; | 68 | letter-spacing: 0.01em; |
65 | position: relative; | 69 | position: relative; |
66 | z-index: 1; | 70 | z-index: 1; |
71 | + align-self: flex-end; | ||
67 | } | 72 | } |
68 | form button:hover, form button:focus { | 73 | form button:hover, form button:focus { |
69 | color: white; | 74 | color: white; |
70 | - background-color: #ff4a56; | 75 | + background-color: #772f9c; |
71 | } | 76 | } |
72 | form .question { | 77 | form .question { |
73 | position: relative; | 78 | position: relative; |
... | @@ -81,7 +86,7 @@ form .question:last-of-type { | ... | @@ -81,7 +86,7 @@ form .question:last-of-type { |
81 | } | 86 | } |
82 | form .question label { | 87 | form .question label { |
83 | transform-origin: left center; | 88 | transform-origin: left center; |
84 | - color: #ff4a56; | 89 | + color: #772f9c; |
85 | font-weight: 100; | 90 | font-weight: 100; |
86 | letter-spacing: 0.01em; | 91 | letter-spacing: 0.01em; |
87 | font-size: 17px; | 92 | font-size: 17px; |
... | @@ -96,7 +101,7 @@ form .question label { | ... | @@ -96,7 +101,7 @@ form .question label { |
96 | form .question input[type="text"] { | 101 | form .question input[type="text"] { |
97 | appearance: none; | 102 | appearance: none; |
98 | background-color: none; | 103 | background-color: none; |
99 | - border: 1px solid #ff4a56; | 104 | + border: 1px solid #772f9c; |
100 | line-height: 0; | 105 | line-height: 0; |
101 | font-size: 17px; | 106 | font-size: 17px; |
102 | width: 100%; | 107 | width: 100%; |
... | @@ -104,7 +109,7 @@ form .question input[type="text"] { | ... | @@ -104,7 +109,7 @@ form .question input[type="text"] { |
104 | box-sizing: border-box; | 109 | box-sizing: border-box; |
105 | padding: 10px 15px; | 110 | padding: 10px 15px; |
106 | border-radius: 60px; | 111 | border-radius: 60px; |
107 | - color: #ff4a56; | 112 | + color: #772f9c; |
108 | font-weight: 100; | 113 | font-weight: 100; |
109 | letter-spacing: 0.01em; | 114 | letter-spacing: 0.01em; |
110 | position: relative; | 115 | position: relative; |
... | @@ -112,7 +117,7 @@ form .question input[type="text"] { | ... | @@ -112,7 +117,7 @@ form .question input[type="text"] { |
112 | } | 117 | } |
113 | form .question input[type="text"]:focus { | 118 | form .question input[type="text"]:focus { |
114 | outline: none; | 119 | outline: none; |
115 | - background: #ff4a56; | 120 | + background: #772f9c; |
116 | color: white; | 121 | color: white; |
117 | margin-top: 30px; | 122 | margin-top: 30px; |
118 | } | 123 | } |
... | @@ -152,7 +157,7 @@ form .question input[type="text"]:valid ~ label { | ... | @@ -152,7 +157,7 @@ form .question input[type="text"]:valid ~ label { |
152 | } | 157 | } |
153 | #ls{ | 158 | #ls{ |
154 | transform-origin: left center; | 159 | transform-origin: left center; |
155 | - color: #ff4a56; | 160 | + color: #772f9c; |
156 | font-weight: 100; | 161 | font-weight: 100; |
157 | letter-spacing: 0.01em; | 162 | letter-spacing: 0.01em; |
158 | font-size: 17px; | 163 | font-size: 17px; |
... | @@ -165,15 +170,15 @@ form .question input[type="text"]:valid ~ label { | ... | @@ -165,15 +170,15 @@ form .question input[type="text"]:valid ~ label { |
165 | } | 170 | } |
166 | #d{ | 171 | #d{ |
167 | background-color: none; | 172 | background-color: none; |
168 | - border: 1px solid #ff4a56; | 173 | + border: 1px solid #772f9c; |
169 | line-height: 1; | 174 | line-height: 1; |
170 | font-size: 17px; | 175 | font-size: 17px; |
171 | - width: 70%; | 176 | + width: 65%; |
172 | padding:10px 15px; | 177 | padding:10px 15px; |
173 | display: block; | 178 | display: block; |
174 | box-sizing: border-box; | 179 | box-sizing: border-box; |
175 | border-radius: 60px; | 180 | border-radius: 60px; |
176 | - color: #ff4a56; | 181 | + color: #772f9c; |
177 | font-weight: 100; | 182 | font-weight: 100; |
178 | letter-spacing: 0.01em; | 183 | letter-spacing: 0.01em; |
179 | position: relative; | 184 | position: relative; |
... | @@ -183,17 +188,21 @@ form .question input[type="text"]:valid ~ label { | ... | @@ -183,17 +188,21 @@ form .question input[type="text"]:valid ~ label { |
183 | #pad{ | 188 | #pad{ |
184 | padding:10px 0; | 189 | padding:10px 0; |
185 | } | 190 | } |
191 | + #title{ | ||
192 | + color: #772f9c; | ||
193 | + } | ||
186 | </style> | 194 | </style> |
187 | </head> | 195 | </head> |
188 | <body> | 196 | <body> |
189 | <div id="div_root"> | 197 | <div id="div_root"> |
190 | 198 | ||
191 | <div id="div_top"> | 199 | <div id="div_top"> |
192 | - <h1>Calendar ID : <%= id %></h1> | 200 | + <h1 id='title'>Calendar ID : <%= id %></h1> |
193 | </div> | 201 | </div> |
194 | <div id="div_center"> | 202 | <div id="div_center"> |
195 | <% calendars.forEach(function(val){ %> | 203 | <% calendars.forEach(function(val){ %> |
196 | <form action="/events/remove" method="POST"> | 204 | <form action="/events/remove" method="POST"> |
205 | + <p style="font-size:17px">일정</p> | ||
197 | <p>summary : <%= val.summary %></p> | 206 | <p>summary : <%= val.summary %></p> |
198 | <p>created : <%= val.created %></p> | 207 | <p>created : <%= val.created %></p> |
199 | <p>start : <%= val.start.dateTime %></p> | 208 | <p>start : <%= val.start.dateTime %></p> | ... | ... |
1 | <!DOCTYPE html> | 1 | <!DOCTYPE html> |
2 | <html> | 2 | <html> |
3 | <head> | 3 | <head> |
4 | - <br><br><br><br><br><br> | 4 | + <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Jua|Nanum+Brush+Script|Yeon+Sung&display=swap&subset=korean" > |
5 | <title><%= title %></title> | 5 | <title><%= title %></title> |
6 | <link rel='stylesheet' href='/stylesheets/style.css' /> | 6 | <link rel='stylesheet' href='/stylesheets/style.css' /> |
7 | </head> | 7 | </head> |
8 | - <body bgcolor="#ff4a56"> | 8 | + <body bgcolor="#e7ded9"> |
9 | <div id="container" > | 9 | <div id="container" > |
10 | <center> | 10 | <center> |
11 | <div id='item1'><p><font size="7"> | 11 | <div id='item1'><p><font size="7"> | ... | ... |
-
Please register or login to post a comment