Skip to content
This repository has been archived by the owner on Dec 31, 2023. It is now read-only.

Commit

Permalink
Merge branch 'hotfix_admin' into thuy_create_admin
Browse files Browse the repository at this point in the history
  • Loading branch information
hardingadonis authored Dec 7, 2023
2 parents cbd36d0 + 3466747 commit 20c3c95
Show file tree
Hide file tree
Showing 21 changed files with 1,421 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package io.hardingadonis.miu.controller.admin;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "AdminServlet", urlPatterns = {"/admin"})
public class AdminServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");

request.getRequestDispatcher("/view/admin/admin.jsp").forward(request, response);
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}


@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package io.hardingadonis.miu.controller.admin;

import io.hardingadonis.miu.dao.impl.mysql.CategoryDAOMySQLImpl;
import io.hardingadonis.miu.model.Category;
import io.hardingadonis.miu.services.Singleton;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;

@WebServlet(name = "ListCategoryServlet", urlPatterns = {"/listCategory"})
@MultipartConfig
public class ListCategoryServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");

request.getRequestDispatcher("/view/admin/list_category.jsp").forward(request, response);

}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");

}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@

package io.hardingadonis.miu.controller.admin;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "ListOrderServlet", urlPatterns = {"/listOrder"})
public class ListOrderServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");

request.getRequestDispatcher("/view/admin/list_order.jsp").forward(request, response);
}


@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}


@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package io.hardingadonis.miu.controller.admin;

import io.hardingadonis.miu.services.Singleton;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.simple.JSONObject;

@WebServlet(name = "ListUserServlet", urlPatterns = {"/listUser"})
public class ListUserServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");

request.getRequestDispatcher("/view/admin/list_user.jsp").forward(request, response);
}

@Override
protected void doDelete(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
int ID = Integer.parseInt(request.getParameter("id"));

Singleton.userDAO.delete(ID);

JSONObject jsonResponse = new JSONObject();
jsonResponse.put("status", "success");
jsonResponse.put("message", "User canceled successfully");

response.setContentType("application/json");
response.getWriter().write(jsonResponse.toString());

response.setStatus(HttpServletResponse.SC_OK);

} catch (NumberFormatException ex) {
System.err.println(ex.getMessage());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public DBContextMySQLImpl() {
Properties prop = new Properties();

if (input == null) {
this.dbURL = "jdbc:mysql://localhost:3306/r7";
this.dbURL = "jdbc:mysql://localhost:3306/miu";
this.user = "root";
this.password = "";
} else {
Expand Down
32 changes: 32 additions & 0 deletions src/main/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,38 @@
<filter-name>DefaultFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>ListUserServlet</servlet-name>
<servlet-class>io.hardingadonis.miu.controller.admin.ListUserServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ListOrderServlet</servlet-name>
<servlet-class>io.hardingadonis.miu.controller.admin.ListOrderServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ListCategoryServlet</servlet-name>
<servlet-class>io.hardingadonis.miu.controller.admin.ListCategoryServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminServlet</servlet-name>
<servlet-class>io.hardingadonis.miu.controller.admin.AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ListUserServlet</servlet-name>
<url-pattern>/listUser</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ListOrderServlet</servlet-name>
<url-pattern>/listOrder</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminServlet</servlet-name>
<url-pattern>/admin</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ListCategoryServlet</servlet-name>
<url-pattern>/listCategory</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
15
Expand Down
Empty file.
1 change: 1 addition & 0 deletions src/main/webapp/assets/css/admin/styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -11410,6 +11410,7 @@ body {
#deleteUserModal .modal-title,
#deleteUserModal .modal-header h5 {
opacity: 1;

}

#editCategoryModal .modal-header {
Expand Down
48 changes: 48 additions & 0 deletions src/main/webapp/assets/js/admin/delete-user-modal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
function deleteUser(id) {
Swal.fire({
title: "Delete user?",
text: "You really want to delete this user?",
icon: "warning",
showCancelButton: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
confirmButtonText: "Delete!",
cancelButtonText: "No!"
}).then((result) => {
if (result.isConfirmed) {
const url = "listUser?id=" + id;

$.ajax({
url: url,
type: "DELETE",
dataType: "json",
success: function (data) {
if (data.status === "success") {
Swal.fire({
title: "Success!",
text: "You delete user success!",
icon: "success"
}).then((result) => {
if (result.isConfirmed) {
window.location.reload();
}
});
} else {
Swal.fire({
title: "Oops...",
text: "Something was wrong!",
icon: "error"
});
}
},
error: function () {
Swal.fire({
title: "Oops...",
text: "Something was wrong when send the request!",
icon: "error"
});
}
});
}
});
}
54 changes: 54 additions & 0 deletions src/main/webapp/assets/js/admin/demo/chart-area-demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';

// Area Chart Example
var ctx = document.getElementById("myAreaChart");
var myLineChart = new Chart(ctx, {
type: 'line',
data: {
labels: ["Mar 1", "Mar 2", "Mar 3", "Mar 4", "Mar 5", "Mar 6", "Mar 7", "Mar 8", "Mar 9", "Mar 10", "Mar 11", "Mar 12", "Mar 13"],
datasets: [{
label: "Sessions",
lineTension: 0.3,
backgroundColor: "rgba(2,117,216,0.2)",
borderColor: "rgba(2,117,216,1)",
pointRadius: 5,
pointBackgroundColor: "rgba(2,117,216,1)",
pointBorderColor: "rgba(255,255,255,0.8)",
pointHoverRadius: 5,
pointHoverBackgroundColor: "rgba(2,117,216,1)",
pointHitRadius: 50,
pointBorderWidth: 2,
data: [10000, 30162, 26263, 18394, 18287, 28682, 31274, 33259, 25849, 24159, 32651, 31984, 38451],
}],
},
options: {
scales: {
xAxes: [{
time: {
unit: 'date'
},
gridLines: {
display: false
},
ticks: {
maxTicksLimit: 7
}
}],
yAxes: [{
ticks: {
min: 0,
max: 40000,
maxTicksLimit: 5
},
gridLines: {
color: "rgba(0, 0, 0, .125)",
}
}],
},
legend: {
display: false
}
}
});
46 changes: 46 additions & 0 deletions src/main/webapp/assets/js/admin/demo/chart-bar-demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';

// Bar Chart Example
var ctx = document.getElementById("myBarChart");
var myLineChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["January", "February", "March", "April", "May", "June"],
datasets: [{
label: "Revenue",
backgroundColor: "rgba(2,117,216,1)",
borderColor: "rgba(2,117,216,1)",
data: [4215, 5312, 6251, 7841, 9821, 14984],
}],
},
options: {
scales: {
xAxes: [{
time: {
unit: 'month'
},
gridLines: {
display: false
},
ticks: {
maxTicksLimit: 6
}
}],
yAxes: [{
ticks: {
min: 0,
max: 15000,
maxTicksLimit: 5
},
gridLines: {
display: true
}
}],
},
legend: {
display: false
}
}
});
16 changes: 16 additions & 0 deletions src/main/webapp/assets/js/admin/demo/chart-pie-demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';

// Pie Chart Example
var ctx = document.getElementById("myPieChart");
var myPieChart = new Chart(ctx, {
type: 'pie',
data: {
labels: ["Blue", "Red", "Yellow", "Green"],
datasets: [{
data: [12.21, 15.58, 11.25, 8.32],
backgroundColor: ['#007bff', '#dc3545', '#ffc107', '#28a745'],
}],
},
});
4 changes: 4 additions & 0 deletions src/main/webapp/assets/js/admin/demo/datatables-demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// Call the dataTables jQuery plugin
$(document).ready(function() {
$('#dataTable').DataTable();
});
10 changes: 10 additions & 0 deletions src/main/webapp/assets/js/admin/demo/datatables-simple-demo.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

window.addEventListener('DOMContentLoaded', event => {
// Simple-DataTables
// https://github.com/fiduswriter/Simple-DataTables/wiki

const datatablesSimple = document.getElementById('datatablesSimple');
if (datatablesSimple) {
new simpleDatatables.DataTable(datatablesSimple);
}
});
Loading

0 comments on commit 20c3c95

Please sign in to comment.