var express = require('express');
var Bodyperser = require('body-parser');
var mongoose = require('mongoose');
var path = require('path');
var ejs = require('ejs');
app.listen(3002, function () {
console.log('Server started on port 3001')
})
app.get('/users/:page', function(req, res, next) {
var perPage = 1
var page = req.params.page || 1
User
.find({})
.skip((perPage * page) - perPage)
.limit(perPage)
.exec(function(err, users) {
User.count().exec(function(err, count) {
if (err) return next(err)
res.render('home/indexp', {
users: users,
current: page,
pages: Math.ceil(count / perPage)
})
})
})
})
home/indexp.ejs
<div class="container">
<h2> User List</h2>
<table class="table table-bordered">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Name</th>
<th scope="col">Email</th>
<th scope="col">Action</th>
</tr>
</thead>
<tbody>
<% var i=1 users.forEach(function(user){ %>
<tr>
<th scope="row"><%= i %></th>
<td><%= user.fullname %></td>
<td><%= user.email %></td>
<td><a class="btn btn-primary" href="/user/edit/<%= user._id %>" role="button">Edit</a> <a class="btn btn-danger" href="/user/delete/<%= user._id %>" role="button">Delete</a> </td>
</tr>
<% i++ }); %>
</tbody>
</table>
<% if (pages > 0) { %>
<nav aria-label="Page navigation example">
<ul class="pagination">
<% if (current == 1) { %>
<li class="page-item disabled"><a class="page-link">First</a></li>
<% } else { %>
<li class="page-item"><a class="page-link" href="/users/1">First</a></li>
<% } %>
<% var i = (Number(current) > 5 ? Number(current) - 4 : 1) %>
<% if (i !== 1) { %>
<li class="page-item disabled"><a class="page-link">...</a></li>
<% } %>
<% for (; i <= (Number(current) + 4) && i <= pages; i++) { %>
<% if (i == current) { %>
<li class="page-item active"><a class="page-link"><%= i %></a></li>
<% } else { %>
<li class="page-item"><a class="page-link" href="/users/<%= i %>"><%= i %></a></li>
<% } %>
<% if (i == Number(current) + 4 && i < pages) { %>
<li class="page-item disabled"><a class="page-link">...</a></li>
<% } %>
<% } %>
<% if (current == pages) { %>
<li class="page-item disabled"><a class="page-link">Last</a></li>
<% } else { %>
<li class="page-item"><a class="page-link" href="/users/<%= pages %>">Last</a></li>
<% } %>
</ul>
</nav>
<% } %>
</div>
Comments
Post a Comment