Skip to content

Commit 8fd1f89

Browse files
authored
discord.gg/codare
1 parent 6f6cf9c commit 8fd1f89

File tree

18 files changed

+5958
-0
lines changed

18 files changed

+5958
-0
lines changed

app.js

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
const express = require('express');
2+
const expressLayouts = require('express-ejs-layouts');
3+
const mongoose = require('mongoose');
4+
const passport = require('passport');
5+
const flash = require('connect-flash');
6+
const session = require('express-session');
7+
const Site = require('./models/siteler');
8+
9+
const app = express();
10+
11+
// Passport Config
12+
require('./config/passport')(passport);
13+
14+
// DB Config
15+
const db = require('./config/keys').mongoURI;
16+
17+
// Connect to MongoDB
18+
mongoose
19+
.connect(
20+
db,
21+
{ useNewUrlParser: true ,useUnifiedTopology: true}
22+
)
23+
.then(() => console.log('MongoDB Connected'))
24+
.catch(err => console.log(err));
25+
26+
// EJS
27+
app.set('view engine', 'ejs');
28+
29+
// Express body parser
30+
app.use(express.urlencoded({ extended: true }));
31+
32+
// Express session
33+
app.use(
34+
session({
35+
secret: 'secret',
36+
resave: true,
37+
saveUninitialized: true
38+
})
39+
);
40+
41+
// Passport middleware
42+
app.use(passport.initialize());
43+
app.use(passport.session());
44+
45+
// Connect flash
46+
app.use(flash());
47+
48+
// Global variables
49+
app.use(function(req, res, next) {
50+
res.locals.success_msg = req.flash('success_msg');
51+
res.locals.error_msg = req.flash('error_msg');
52+
res.locals.error = req.flash('error');
53+
next();
54+
});
55+
56+
57+
58+
// Routes
59+
app.use('/', require('./routes/index.js'));
60+
app.use('/users', require('./routes/users.js'));
61+
62+
63+
64+
65+
const http = require('http');
66+
67+
68+
69+
app.get('/', function (req, res) {
70+
mongoose.connect("mongo linki", function (err,db) {
71+
var users=db.collection("sites");
72+
users.find({}).toArray(function (err, result){
73+
result.forEach(function(site){
74+
setInterval(() => {
75+
http.get(site.site_link);
76+
}, 280000);
77+
})
78+
})
79+
});
80+
});
81+
82+
83+
84+
const PORT = process.env.PORT || 5000;
85+
86+
app.listen(PORT, console.log(`Server started on port ${PORT}`));

config/auth.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
module.exports = {
2+
ensureAuthenticated: function(req, res, next) {
3+
if (req.isAuthenticated()) {
4+
return next();
5+
}
6+
req.flash('error_msg', 'Lütfen giriş yapınız!');
7+
res.redirect('/users/login');
8+
},
9+
forwardAuthenticated: function(req, res, next) {
10+
if (!req.isAuthenticated()) {
11+
return next();
12+
}
13+
res.redirect('/dashboard');
14+
}
15+
};

config/keys.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
dbPassword = 'mongo adresi';
2+
3+
module.exports = {
4+
mongoURI: dbPassword
5+
};

config/passport.js

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
const LocalStrategy = require('passport-local').Strategy;
2+
const bcrypt = require('bcryptjs');
3+
4+
// Load User model
5+
const User = require('../models/User');
6+
7+
module.exports = function(passport) {
8+
passport.use(
9+
new LocalStrategy({ usernameField: 'email' }, (email, password, done) => {
10+
// Match user
11+
User.findOne({
12+
email: email
13+
}).then(user => {
14+
if (!user) {
15+
return done(null, false, { message: 'Bu E-Posta kayıtlı değil' });
16+
}
17+
18+
// Match password
19+
bcrypt.compare(password, user.password, (err, isMatch) => {
20+
if (err) throw err;
21+
if (isMatch) {
22+
return done(null, user);
23+
} else {
24+
return done(null, false, { message: 'Şifreniz Yanlış' });
25+
}
26+
});
27+
});
28+
})
29+
);
30+
31+
passport.serializeUser(function(user, done) {
32+
done(null, user.id);
33+
});
34+
35+
passport.deserializeUser(function(id, done) {
36+
User.findById(id, function(err, user) {
37+
done(err, user);
38+
});
39+
});
40+
};

models/User.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
const mongoose = require('mongoose');
2+
3+
const UserSchema = new mongoose.Schema({
4+
name: {
5+
type: String,
6+
required: true
7+
},
8+
email: {
9+
type: String,
10+
required: true
11+
},
12+
admin: {
13+
type: Boolean,
14+
default: false
15+
},
16+
password: {
17+
type: String,
18+
required: true
19+
},
20+
password2: {
21+
type: String,
22+
required: true
23+
},
24+
siteler: [{
25+
type: mongoose.Schema.Types.ObjectId,
26+
ref: "Site",
27+
}],
28+
date: {
29+
type: Date,
30+
default: Date.now
31+
}
32+
});
33+
34+
const User = mongoose.model('User', UserSchema);
35+
36+
module.exports = User;

models/siteler.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
const mongoose = require('mongoose');
2+
3+
const SiteSchema = new mongoose.Schema({
4+
sahibi: {
5+
type: String,
6+
required: true
7+
},
8+
site_link: {
9+
type: String,
10+
required: true
11+
},
12+
});
13+
14+
const Site = mongoose.model('Site', SiteSchema);
15+
16+
module.exports = Site;

0 commit comments

Comments
 (0)