lilshum5labnodejsbstu 1.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of lilshum5labnodejsbstu might be problematic. Click here for more details.

@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="JavaScriptLibraryMappings">
4
+ <includedPredefinedLibrary name="Node.js Core" />
5
+ </component>
6
+ </project>
package/.idea/lab5.iml ADDED
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="WEB_MODULE" version="4">
3
+ <component name="NewModuleRootManager">
4
+ <content url="file://$MODULE_DIR$">
5
+ <excludeFolder url="file://$MODULE_DIR$/.tmp" />
6
+ <excludeFolder url="file://$MODULE_DIR$/temp" />
7
+ <excludeFolder url="file://$MODULE_DIR$/tmp" />
8
+ </content>
9
+ <orderEntry type="inheritedJdk" />
10
+ <orderEntry type="sourceFolder" forTests="false" />
11
+ </component>
12
+ </module>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/lab5.iml" filepath="$PROJECT_DIR$/.idea/lab5.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
package/06-02.js ADDED
@@ -0,0 +1,24 @@
1
+ const sendMessage = require('./sender');
2
+ const http = require("http");
3
+ const fs = require("fs");
4
+ const queryString = require('querystring');
5
+ const querystring = require("querystring");
6
+
7
+ const password = "nszgcthayztzklcw";
8
+
9
+ http.createServer((req, res) => {
10
+ if(req.method === "GET" && req.url === "/") {
11
+ let html = fs.readFileSync("index.html");
12
+ res.end(html);
13
+ }
14
+ else if(req.method === "POST" && req.url === '/sender-email') {
15
+ let data = "";
16
+ req.on("data", chunk => data += chunk.toString());
17
+ req.on("end", ()=>{
18
+ const parsedData = querystring.parse(data);
19
+ let {sender, receiver, subject, message} = parsedData;
20
+ sendMessage(sender, receiver, subject, message, password);
21
+ res.end(`Message sent: sender: ${sender} receiver: ${receiver}\n`);
22
+ })
23
+ }
24
+ }).listen(5000);
package/06-03.js ADDED
@@ -0,0 +1,8 @@
1
+ const send = require('./m06_SNA');
2
+ const http = require('http');
3
+
4
+ http.createServer((req, res) => {
5
+ let message = "Hello!"
6
+ send("nodelabsbstu@yandex.ru",message);
7
+ res.end(`<h1>${message}</h1>`)
8
+ }).listen(5000);
package/index.html ADDED
@@ -0,0 +1,25 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Email Sender</title>
7
+ </head>
8
+ <body>
9
+ <form action="/sender-email" method="post">
10
+ <label for="sender">Email отправителя:</label>
11
+ <input type="email" id="sender" name="sender" required>
12
+ <br>
13
+ <label for="receiver">Email получателя:</label>
14
+ <input type="email" id="receiver" name="receiver" required>
15
+ <br>
16
+ <label for="subject">Тема письма:</label>
17
+ <input type="text" id="subject" name="subject" required>
18
+ <br>
19
+ <label for="message">Сообщение:</label>
20
+ <textarea id="message" name="message" required></textarea>
21
+ <br>
22
+ <button type="submit">Отправить</button>
23
+ </form>
24
+ </body>
25
+ </html>
package/m06_SNA.js ADDED
@@ -0,0 +1,30 @@
1
+ const nodemailer = require('nodemailer');
2
+ const smtpTransport = require("nodemailer-smtp-transport");
3
+ function send(email, message, password = "nszgcthayztzklcw") {
4
+ const transporter = nodemailer.createTransport(smtpTransport({
5
+ host: "smtp.yandex.ru",
6
+ port: 465,
7
+ secure: true,
8
+ auth: {
9
+ user: email,
10
+ pass: password,
11
+ }
12
+ }));
13
+ const mailOption = {
14
+ from: email,
15
+ to: email,
16
+ subject: "SNA_MESSAGE",
17
+ text: message,
18
+ html: `<h1>${message}</h1>`
19
+ }
20
+ return transporter.sendMail(mailOption)
21
+ .then(() => {
22
+ console.log('Email sent successfully');
23
+ })
24
+ .catch(error => {
25
+ console.error('Error sending email:', error);
26
+ });
27
+ }
28
+
29
+ module.exports = send;
30
+
package/package.json ADDED
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "lilshum5labnodejsbstu",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "keywords": [],
10
+ "author": "",
11
+ "license": "ISC",
12
+ "dependencies": {
13
+ "nodemailer": "^6.9.5",
14
+ "nodemailer-smtp-transport": "^2.7.4",
15
+ "qs": "^6.11.2"
16
+ }
17
+ }
package/sender.js ADDED
@@ -0,0 +1,26 @@
1
+ const nodemailer = require('nodemailer');
2
+ const smtpTransport = require("nodemailer-smtp-transport");
3
+
4
+ function sendMessage(sender,receiver, subject, message, password) {
5
+ const transporter = nodemailer.createTransport(smtpTransport({
6
+
7
+ host: 'smtp.yandex.ru',
8
+ port: 465,
9
+ secure: true,
10
+ auth: {
11
+ user: sender,
12
+ pass: password
13
+ }
14
+ }));
15
+
16
+ const mailOption = {
17
+ from: sender,
18
+ to: receiver,
19
+ subject: subject,
20
+ text: message,
21
+ html: `<h1>${message}</h1>`
22
+ }
23
+ transporter.sendMail(mailOption)
24
+ }
25
+
26
+ module.exports = sendMessage;