import React, { useState } from “react”; const ContentTracker = () => { const [entries, setEntries] = useState([]); const [newEntry, setNewEntry] = useState({ title: “”, platform: “Telegram”, date: “”, status: “Pending”, engagement: “” }); const addEntry = () => { if (!newEntry.title || !newEntry.date || !newEntry.engagement) { alert(“Please fill in all fields.”); return; } setEntries([…entries, newEntry]); setNewEntry({ title: “”, platform: “Telegram”, date: “”, status: “Pending”, engagement: “” }); }; return (

Content Distribution Tracker

setNewEntry({ …newEntry, title: e.target.value })} /> setNewEntry({ …newEntry, date: e.target.value })} /> setNewEntry({ …newEntry, engagement: e.target.value })} />
{entries.map((entry, index) => ( ))}
Title Platform Date Status Engagement
{entry.title} {entry.platform} {entry.date} {entry.status} {entry.engagement}
); }; export default ContentTracker;
npm install @shadcn/ui
function autoSortAndNotify(e) { var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // Auto-sort by Date Posted (Column D) sheet.getRange(“A2:H”).sort({column: 4, ascending: false}); // Get last row data var lastRow = sheet.getLastRow(); var rowData = sheet.getRange(lastRow, 1, 1, sheet.getLastColumn()).getValues()[0]; // Extract details var contentTitle = rowData[0]; // Column A var platform = rowData[2]; // Column C var datePosted = rowData[3]; // Column D var status = rowData[4]; // Column E // Email notification setup var emailRecipient = “your-email@example.com”; // Change to your email var subject = “New Content Added: ” + contentTitle; var body = “A new content has been added to the tracker.\n\n” + “📌 *Title:* ” + contentTitle + “\n” + “📍 *Platform:* ” + platform + “\n” + “📅 *Date Posted:* ” + datePosted + “\n” + “📊 *Status:* ” + status + “\n\n” + “Check the tracker for more details.”; MailApp.sendEmail(emailRecipient, subject, body); } Content Distribution Tracker

Content Distribution Tracker

Content Title Content Type Platform Start Date End Date Status Engagement Author Notes

rrgeger


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *