Skip to content

Instantly share code, notes, and snippets.

@dipto-008
Created July 9, 2025 19:59
Show Gist options
  • Save dipto-008/3002179b476576e84f9b005719b1f996 to your computer and use it in GitHub Desktop.
Save dipto-008/3002179b476576e84f9b005719b1f996 to your computer and use it in GitHub Desktop.
Hey noob πŸ‘‹πŸ‘‹
const axios = require("axios");
module.exports = {
config: {
name: "album",
version: "1.0",
role: 0,
author: "Bokkor",
category: "media",
guide: { en: "" }
},
onStart: async function ({ api, event, args }) {
const base = "https://album-x69.onrender.com/api/album";
const fuck = async () => {
try {
let fileUrl = event.messageReply.attachments[0]?.url;
const x = "https://noobs-api.top/dipto";
const res = await axios.get(`${x}/drive?url=${encodeURIComponent(fileUrl)}`);
out(fileUrl);
return res.data.downloadLink;
} catch (err) {
console.log(err);
}
};
if (args[0] === "add") {
const category = args[1];
let videoUrl = event.messageReply?.attachments?.[0]?.url || args[2];
if (!category || !videoUrl)
return api.sendMessage(
"❌ Provide category and video URL or reply with a video",
event.threadID,
event.messageID
);
if (event.messageReply?.attachments[0]?.url) {
try {
api.sendMessage("⏳ Uploading please wait...", event.threadID);
videoUrl = await fuck();
} catch (err) {
return api.sendMessage("❌ Failed to upload video to Drive", event.threadID, event.messageID);
}
}
const res = await axios.get(`${base}/add/${category}?url=${encodeURIComponent(videoUrl)}`);
if (res.data?.error)
return api.sendMessage(res.data.error, event.threadID, event.messageID);
return api.sendMessage(
`βœ… Video successfully added to category: ${category}`,
event.threadID,
event.messageID
);
}
if (!args[0] || args[0] === "list") {
try {
const res = await axios.get(`${base}/list`);
const data = res.data?.data || {};
if (Object.keys(data).length === 0)
return api.sendMessage("❌ No categories found", event.threadID, event.messageID);
let msg = "πŸ–€ x69's Album Categories πŸ–€\n\n";
let index = 1;
function capitalize(str) {
return str.charAt(0).toUpperCase() + str.slice(1);
}
for (const [cat, count] of Object.entries(data)) {
msg += `${index}. ${capitalize(cat)}\n πŸ₯ Videos: ${count}\n\n`;
index++;
}
const time = new Date().toLocaleString("en-US", {
timeZone: "Asia/Dhaka",
hour12: true,
year: "numeric",
month: "2-digit",
day: "2-digit",
hour: "2-digit",
minute: "2-digit",
});
msg += `⏰ Updated: ${time}`;
return api.sendMessage(msg.trim(), event.threadID, event.messageID);
} catch {
return api.sendMessage("❌ Error fetching list", event.threadID, event.messageID);
}
}
// Get video from category
try {
const res = await axios.get(`${base}/${args[0]}`);
if (!res?.data?.video)
return api.sendMessage("❌ Not found", event.threadID, event.messageID);
const msg = `𝘏𝘦𝘳𝘦 𝘠𝘰𝘢𝘳 ${res.data.category} 𝘝π˜ͺπ˜₯𝘦𝘰 𝘣𝘣𝘺 😘`;
const videoStream = await global.utils.getStreamFromURL(res.data.video);
return api.sendMessage(
{ body: msg, attachment: videoStream },
event.threadID,
event.messageID
);
} catch {
return api.sendMessage("❌ Error fetching video", event.threadID, event.messageID);
}
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment