diff --git a/routes/methods.js b/routes/methods.js index 3f3edf54b5fa335e648d44052dddf619038389cc..fe3e73e750e17570e82f22737a22f7dd45503d94 100644 --- a/routes/methods.js +++ b/routes/methods.js @@ -138,6 +138,12 @@ var methods = { if (err) throw err; callback(rows[0], err); }) + }, + getAllMailinglists: function(callback) { + dbconn.project.query('CALL getAllLists', function (err, rows, fields){ + if (err) throw err; + callback(rows[0], err); + }) } }; diff --git a/routes/routes.js b/routes/routes.js index 4908a218878f9900ddc3f13cc99f8a6c8b2b472d..329057d1f9e60e915083a1cd8d007d780f619f98 100644 --- a/routes/routes.js +++ b/routes/routes.js @@ -517,5 +517,33 @@ module.exports = function (app, config, passport) { } }) }) - + app.get('/mailinglists', function (req, res) { + async.waterfall([ + function(done) { + methods.getAllMailinglists(function(mailinglistOverview, err) { + if (!err) { + done(err, mailinglistOverview) + } + }) + }, + // create JSON object of mailinglists for front-end + function(mailinglistOverview, done) { + var allMailingLists = [] // JSON object + for (let i = 0; i < mailinglistOverview.length; i++) { + // add data to JSON object + allMailingLists.push({ + id: mailinglistOverview[i].id, + name: mailinglistOverview[i].name, + src: mailinglistOverview[i].src, + projectstatus: mailinglistOverview[i].projectstatus, + project_title: mailinglistOverview[i].project_title + }); + } + res.render('mailinglists', { + user: req.user, + mailinglists: allMailingLists + }); + } + ]) + }); }; diff --git a/views/mailinglists.pug b/views/mailinglists.pug new file mode 100644 index 0000000000000000000000000000000000000000..5420eaf2d148a376c4ee6ec5c98a8953258a61be --- /dev/null +++ b/views/mailinglists.pug @@ -0,0 +1,57 @@ +html(lang="de") + head + title= "Mailinglisten" + meta(charset="UTF-8") + meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no") + link(rel="stylesheet", type="text/css", href="https://transfer.hft-stuttgart.de/css/bootstrap/bootstrap.css") + link(rel="stylesheet", type="text/css", href="https://transfer.hft-stuttgart.de/css/custom/login.css") + link(rel="stylesheet", href="https://use.fontawesome.com/releases/v5.8.2/css/all.css", integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay", crossorigin="anonymous") + style. + .collapse { + display: none; + } + .collapse.in { + display: block; + } + .collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height,visibility; + -o-transition-property: height,visibility; + transition-property: height,visibility; + } + body + <hr /> + div() + h5(align="left") Aktive Mailinglisten + div(class="flex-container" style="align-items:flex-start") + div(class="table") + table(border="0" id="Projektliste") + tr + th Name + th Link + th zugeh. Projekt + for item in mailinglists + if item.projectstatus == '1' + tr + td #{item.name} + td <a href="#{item.src}">#{item.src}</a> + td <a href='projectoverview?#{item.id}'>#{item.project_title}</a> + <hr /> + div() + h5(align="left") Eintragung in Mailingliste + p() Wenn Sie sich in eine Mailingliste eintragen wollen, folgen Sie folgender Anleitung: + // jQuery + script(src="https://code.jquery.com/jquery-3.3.1.min.js") + script(src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js", integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1", crossorigin="anonymous") + // Bootstrap + script(src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous") + // M4_LAB + script(src="https://transfer.hft-stuttgart.de/js/headfoot.js") \ No newline at end of file