6lab 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

package/06-02.html ADDED
@@ -0,0 +1,68 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <title>Node 04-02</title>
6
+ <style type="text/css">
7
+ * {
8
+ color: #011627;
9
+ background-color: #f5f5f5;
10
+ text-align: center;
11
+ font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
12
+ }
13
+ button {
14
+ background-color:#ffc857;
15
+ border: none;
16
+ color: white;
17
+ padding: 8px 15px;
18
+ text-align: center;
19
+ font-size: 14pt;
20
+ border-radius: 10px;
21
+ }
22
+ #status {
23
+ margin: auto;
24
+ margin-top: 10px;
25
+ padding: 10px;
26
+ width: fit-content;
27
+ border-radius: 10px;
28
+ border: 3px solid #8980f5;
29
+ text-align: center;
30
+ display: none;
31
+ padding: 10px 20px;
32
+ max-width: 600px;
33
+ }
34
+ .row {
35
+ margin-bottom: 20px;
36
+ }
37
+ </style>
38
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
39
+ </head>
40
+ <body>
41
+ <h1>task 06-02</h1>
42
+ <form action="http://localhost:5000/" method="POST">
43
+ <div class="row">
44
+ <label>Sender:</label><br>
45
+ <input type="email" name="sender" required/>
46
+ </div>
47
+ <div class="row">
48
+ <label>Password:</label><br>
49
+ <input type="password" name="password" required/>
50
+ </div>
51
+ <div class="row">
52
+ <label>Receiver</label><br>
53
+ <input type="email" name="receiver" required/>
54
+ </div>
55
+ <div class="row">
56
+ <label>Subject:</label><br>
57
+ <input type="text" name="subject" required/>
58
+ </div>
59
+ <div class="row">
60
+ <label>Your message:</label><br>
61
+ <input type="text" name="message" required/>
62
+ </div>
63
+ <div>
64
+ <button type="submit">Send message</button>
65
+ </div>
66
+ </form>
67
+ </body>
68
+ </html>
package/06-03.js ADDED
@@ -0,0 +1,8 @@
1
+ const http = require('http');
2
+ const send = require('./m0603.js');
3
+
4
+ http.createServer((request, response) => {
5
+ response.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
6
+ send('[06-03] всем привет кто первый день во вконтакте');
7
+ response.end('<h2>Message sucessfully sent.</h2>');
8
+ }).listen(5000, () => console.log('Server running at http://localhost:5000/\n'));
package/06-04.js ADDED
@@ -0,0 +1,8 @@
1
+ const send = require('C:/Users/valda/AppData/Roaming/npm/node_modules/secxmail');
2
+ const http = require('http');
3
+
4
+ http.createServer((req, res) => {
5
+ res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
6
+ send('[06-04] hello from secxmail GLOBAL module!');
7
+ res.end('<h2>Message sucessfully sent.</h2>');
8
+ }).listen(5000, () => console.log('Server running at http://localhost:5000/\n'));
package/app.js ADDED
@@ -0,0 +1,60 @@
1
+ //icqbbmbsahofmuyw
2
+ //pnrykthhiqovrczc
3
+
4
+
5
+ const http = require('http');
6
+ const url = require('url');
7
+ const fs = require('fs');
8
+ const { parse } = require('querystring');
9
+ const nodemailer = require('nodemailer');
10
+
11
+
12
+
13
+ http.createServer((request, response) => {
14
+ response.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
15
+
16
+ if (url.parse(request.url).pathname === '/' && request.method === 'GET')
17
+ {
18
+ response.end(fs.readFileSync('./06-02.html'));
19
+ }
20
+ else if (url.parse(request.url).pathname === '/' && request.method === 'POST')
21
+ {
22
+ let body = '';
23
+ request.on('data', chunk => { body += chunk.toString(); });
24
+
25
+ request.on('end', () => {
26
+ let parm = parse(body);
27
+
28
+ const transporter = nodemailer.createTransport({
29
+ host: 'smtp.gmail.com',
30
+ port: 465,
31
+ secure: false,
32
+ service: 'Gmail',
33
+ auth: {
34
+ user: parm.sender,
35
+ pass: parm.password
36
+ }
37
+ });
38
+
39
+ const mailOptions = {
40
+ from: parm.sender,
41
+ to: parm.receiver,
42
+ subject: parm.subject,
43
+ text: parm.message
44
+ }
45
+
46
+ transporter.sendMail(mailOptions, (err, info) => {
47
+ err ? console.log(err) : console.log('Sent: ' + info.response);
48
+ })
49
+
50
+ response.end(`<h2>Отправитель: ${parm.sender}</br>Получатель: ${parm.receiver}
51
+ </br>Тема: ${parm.subject}</br>Сообщение: ${parm.message}</h2>`);
52
+ })
53
+ }
54
+
55
+ else
56
+ response.end('<html><body><h1>Error! Visit http://localhost:5000/</h1></body></html>');
57
+ }).listen(5000, () => console.log('Server running at http://localhost:5000/\n'));
58
+
59
+
60
+
package/apps.js ADDED
File without changes
package/index.html CHANGED
@@ -1,29 +1,39 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <title>6 lab</title>
6
- </head>
7
- <body>
8
- <h1>Send Email</h1>
9
- <form action="/send" method="POST">
10
- <div class="form-group">
11
- <label for="from">From:</label>
12
- <input type="email" id="from" name="from" required>
13
- </div>
14
- <div class="form-group">
15
- <label for="to">To:</label>
16
- <input type="email" id="to" name="to" required>
17
- </div>
18
- <div class="form-group">
19
- <label for="subject">Subject:</label>
20
- <input type="text" id="subject" name="subject" required>
21
- </div>
22
- <div class="form-group">
23
- <label for="message">Message:</label>
24
- <textarea id="message" name="message" rows="6" required></textarea>
25
- </div>
26
- <button type="submit">Send Email</button>
27
- </form>
28
- </body>
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>Document</title>
8
+ </head>
9
+ <body>
10
+ <form>
11
+ <div>
12
+ <label for="sender" >From:</label>
13
+ <input type="email" id="sender" placeholder="Enter email">
14
+ </div>
15
+ <div>
16
+ <label for="receiver">To:</label>
17
+ <input type="email" id="receiver" placeholder="Enter email">
18
+ </div>
19
+ <div>
20
+ <label for="message">Message:</label>
21
+ <textarea id="message"></textarea>
22
+ </div>
23
+ <button onclick="Send()">Send</button>
24
+ </form>
25
+ <script>
26
+ function Send() {
27
+ fetch('http://localhost:5000/', {
28
+ method: 'POST', mode: 'no-cors',
29
+ headers: { 'Content-Type':'application/json',
30
+ 'Accept':'text/html'
31
+ },
32
+ body: JSON.stringify({from: sender.value,
33
+ to: receiver.value,
34
+ message: message.value})
35
+ }).then(response => response.text()).then(pdata => alert(pdata));
36
+ }
37
+ </script>
38
+ </body>
29
39
  </html>
package/m0603.js CHANGED
@@ -1,34 +1,35 @@
1
- const nodemailer = require('nodemailer');
2
- const FIXED_EMAIL = 'orcanotadolphin@proton.me';
3
-
4
- async function send(content) {
5
- try {
6
- const testAccount = await nodemailer.createTestAccount();
7
- const transporter = nodemailer.createTransport({
8
- host: 'smtp.ethereal.email',
9
- port: 587,
10
- secure: false,
11
- auth: {
12
- user: testAccount.user,
13
- pass: testAccount.pass,
14
- },
15
- });
16
-
17
- const info = await transporter.sendMail({
18
- from: 'sender@example.com',
19
- to: FIXED_EMAIL,
20
- subject: 'Message from m0603 module',
21
- html: content,
22
- });
23
-
24
- console.log('Message sent successfully with nodemailer');
25
- console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
26
-
27
- return `Message sent successfully with nodemailer. Preview URL: ${nodemailer.getTestMessageUrl(info)}`;
28
- } catch (error) {
29
- console.error('Failed to send email with nodemailer:', error);
30
- throw error;
31
- }
32
- }
33
-
34
- module.exports = { send };
1
+ const nodemailer = require('nodemailer');
2
+
3
+ const sender = 'nodemailertests1@gmail.com';
4
+ const receiver = 'nodemailertests1@gmail.com';
5
+ const password = 'pnrykthhiqovrczc';
6
+
7
+
8
+ const transporter = nodemailer.createTransport({
9
+ host: 'smtp.gmail.com',
10
+ port: 587,
11
+ secure: false,
12
+ service: 'Gmail',
13
+ auth: {
14
+ user: sender,
15
+ pass: password
16
+ }
17
+ });
18
+
19
+
20
+ send = (message) =>
21
+ {
22
+
23
+ const mailOptions = {
24
+ from: sender,
25
+ to: receiver,
26
+ subject: 'Module m0306',
27
+ text: message
28
+ }
29
+
30
+ transporter.sendMail(mailOptions, (err, info) => {
31
+ err ? console.log(err) : console.log('Sent: ' + info.response);
32
+ })
33
+ }
34
+
35
+ module.exports = send;
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
- "name": "6lab",
3
- "version": "1.0.0",
4
- "main": "06-02.js",
5
- "scripts": {
6
- "test": "06-02.js"
7
- },
8
- "keywords": [],
9
- "author": "",
10
- "license": "ISC",
11
2
  "dependencies": {
12
- "body-parser": "^2.2.0",
13
- "express": "^5.1.0",
14
- "nodemailer": "^7.0.3"
3
+ "nodemailer": "^6.8.0",
4
+ "sendmail": "^1.6.1"
15
5
  },
16
- "devDependencies": {},
17
- "description": ""
6
+ "description": "send message выполнил name partyhome75@gmail.com",
7
+ "keyword": "send name in email-message to partyhome75@gmail.com without smtp",
8
+ "main": "m0603.js",
9
+ "maintainers": [
10
+ {
11
+ "name": "partyhome",
12
+ "email": "partyhome75@gmail.com"
13
+ }
14
+ ],
15
+ "name": "6lab",
16
+ "publishConfig": { "access": "public" },
17
+ "version": "1.0.1"
18
18
  }
package/.idea/6lab.iml DELETED
@@ -1,12 +0,0 @@
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>
@@ -1,6 +0,0 @@
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/modules.xml DELETED
@@ -1,8 +0,0 @@
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/6lab.iml" filepath="$PROJECT_DIR$/.idea/6lab.iml" />
6
- </modules>
7
- </component>
8
- </project>
package/06-02.js DELETED
@@ -1,63 +0,0 @@
1
- const express = require('express');
2
- const path = require('path');
3
- const bodyParser = require('body-parser');
4
- const nodemailer = require('nodemailer');
5
-
6
- const app = express();
7
- const PORT = 3000;
8
-
9
- app.use(bodyParser.urlencoded({ extended: true }));
10
- app.use(bodyParser.json());
11
-
12
- app.get('/', (req, res) => {
13
- res.sendFile(path.join(__dirname, 'index.html'));
14
- });
15
-
16
- app.post('/send', async (req, res) => {
17
- const { from, to, subject, message } = req.body;
18
-
19
- try {
20
- const testAccount = await nodemailer.createTestAccount();
21
-
22
- const transporter = nodemailer.createTransport({
23
- host: 'smtp.ethereal.email',
24
- port: 587,
25
- secure: false,
26
- auth: {
27
- user: testAccount.user,
28
- pass: testAccount.pass,
29
- },
30
- });
31
-
32
- const info = await transporter.sendMail({
33
- from,
34
- to,
35
- subject,
36
- html: message,
37
- });
38
-
39
- console.log('Email sent successfully with nodemailer');
40
- console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
41
-
42
- res.send(`
43
- <h1>Email Sent!</h1>
44
- <p>Your email was sent successfully using nodemailer.</p>
45
- <p>From: ${from}</p>
46
- <p>To: ${to}</p>
47
- <p>Preview URL: <a href="${nodemailer.getTestMessageUrl(info)}" target="_blank">View sent email</a></p>
48
- <p><a href="/">Send another email</a></p>
49
- `);
50
- } catch (error) {
51
- console.error('Error sending with nodemailer:', error);
52
- res.status(500).send(`
53
- <h1>Error</h1>
54
- <p>Failed to send email.</p>
55
- <p>Error: ${error.message}</p>
56
- <p><a href="/">Try again</a></p>
57
- `);
58
- }
59
- });
60
-
61
- app.listen(PORT, () => {
62
- console.log(`Server is running on http://localhost:${PORT}`);
63
- });