diff --git a/.gitignore b/.gitignore index 8aeedcc..98bb42d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ node_modules *.xls* -media + module-c/* !module-c/.gitkeep diff --git a/module-a/media/A1/source.png b/module-a/media/A1/source.png new file mode 100644 index 0000000..5adfd53 Binary files /dev/null and b/module-a/media/A1/source.png differ diff --git a/module-a/media/A2/base.jpg b/module-a/media/A2/base.jpg new file mode 100644 index 0000000..e8a4186 Binary files /dev/null and b/module-a/media/A2/base.jpg differ diff --git a/module-a/media/A3/mask.png b/module-a/media/A3/mask.png new file mode 100644 index 0000000..d8200f1 Binary files /dev/null and b/module-a/media/A3/mask.png differ diff --git a/module-a/media/A3/photo.jpg b/module-a/media/A3/photo.jpg new file mode 100644 index 0000000..90feba0 Binary files /dev/null and b/module-a/media/A3/photo.jpg differ diff --git a/module-a/media/C3/posts.json b/module-a/media/C3/posts.json new file mode 100644 index 0000000..1041d15 --- /dev/null +++ b/module-a/media/C3/posts.json @@ -0,0 +1,22 @@ +[ + { "id": 1, "title": "Getting Started with JavaScript", "body": "JavaScript is a versatile programming language that runs in the browser. It allows you to create dynamic and interactive web pages with ease.", "category": "tech" }, + { "id": 2, "title": "CSS Grid Layout Guide", "body": "CSS Grid is a powerful two-dimensional layout system. It lets you arrange elements into rows and columns with precise control over sizing and positioning.", "category": "design" }, + { "id": 3, "title": "Understanding REST APIs", "body": "A REST API is an interface that allows different applications to communicate over HTTP. It uses standard methods like GET, POST, PUT, and DELETE.", "category": "tech" }, + { "id": 4, "title": "Typography Basics for Web", "body": "Good typography improves readability and user experience. Choosing the right font size, line height, and letter spacing makes content easier to read.", "category": "design" }, + { "id": 5, "title": "Introduction to MySQL", "body": "MySQL is one of the most popular relational database systems. It stores data in tables and uses SQL queries to retrieve and manipulate records.", "category": "backend" }, + { "id": 6, "title": "Flexbox vs Grid", "body": "Flexbox is best for one-dimensional layouts, while Grid handles two-dimensional arrangements. Understanding when to use each will improve your CSS workflow.", "category": "design" }, + { "id": 7, "title": "PHP Session Management", "body": "Sessions in PHP allow you to store user data across multiple pages. They are commonly used for login systems and shopping carts.", "category": "backend" }, + { "id": 8, "title": "Event Handling in JavaScript", "body": "JavaScript events let you respond to user actions like clicks, key presses, and form submissions. The addEventListener method is the recommended approach.", "category": "tech" }, + { "id": 9, "title": "Color Theory for Designers", "body": "Understanding color relationships helps create harmonious designs. Concepts like complementary, analogous, and triadic colors guide effective color choices.", "category": "design" }, + { "id": 10, "title": "Working with localStorage", "body": "localStorage allows web applications to store key-value pairs in the browser persistently. Data remains available even after the browser is closed and reopened.", "category": "tech" }, + { "id": 11, "title": "SQL JOIN Types Explained", "body": "SQL JOINs combine rows from two or more tables. INNER JOIN returns matching rows, LEFT JOIN includes all rows from the left table, and RIGHT JOIN does the opposite.", "category": "backend" }, + { "id": 12, "title": "Responsive Design Principles", "body": "Responsive design ensures your website looks good on all screen sizes. Using flexible grids, images, and media queries are the core techniques.", "category": "design" }, + { "id": 13, "title": "Fetch API and Promises", "body": "The Fetch API provides a modern way to make HTTP requests in JavaScript. It returns Promises, making it easy to handle asynchronous operations with async/await.", "category": "tech" }, + { "id": 14, "title": "PDO and Prepared Statements", "body": "PDO is a PHP extension for database access. Prepared statements separate SQL code from data, effectively preventing SQL injection attacks.", "category": "backend" }, + { "id": 15, "title": "Web Accessibility Basics", "body": "Accessible websites can be used by everyone, including people with disabilities. Using semantic HTML, proper alt text, and keyboard navigation are good starting points.", "category": "design" }, + { "id": 16, "title": "DOM Manipulation Techniques", "body": "The Document Object Model represents the structure of a web page. JavaScript can add, remove, or modify elements and attributes dynamically using DOM methods.", "category": "tech" }, + { "id": 17, "title": "Database Indexing Strategies", "body": "Indexes speed up data retrieval in databases. Adding indexes to frequently searched columns can significantly improve query performance on large datasets.", "category": "backend" }, + { "id": 18, "title": "CSS Variables and Theming", "body": "CSS custom properties allow you to define reusable values in your stylesheets. They are particularly useful for implementing dark mode and consistent theming.", "category": "design" }, + { "id": 19, "title": "Form Validation Best Practices", "body": "Both client-side and server-side validation are necessary for secure forms. Client-side validation improves user experience, while server-side validation ensures data integrity.", "category": "tech" }, + { "id": 20, "title": "File Upload Handling in PHP", "body": "PHP handles file uploads through the $_FILES superglobal. Always validate file type and size on the server side before saving to prevent security vulnerabilities.", "category": "backend" } +] diff --git a/module-a/media/D4/posts_dump.sql b/module-a/media/D4/posts_dump.sql new file mode 100644 index 0000000..2b4614d --- /dev/null +++ b/module-a/media/D4/posts_dump.sql @@ -0,0 +1,52 @@ +-- D4: posts_dump.sql +-- Import AFTER creating the posts table yourself. +-- posts table structure: id, title, content, created_at + +INSERT INTO `posts` (`title`, `content`, `created_at`) VALUES +('Getting Started with HTML', 'HTML is the foundation of every web page. It provides the structure and meaning of content through a system of elements and tags. Learning HTML is the first step toward becoming a web developer.', '2026-01-03 09:00:00'), +('CSS Box Model Explained', 'The CSS box model describes the rectangular boxes generated for elements. Every element has margin, border, padding, and content areas that affect its size and spacing on the page.', '2026-01-05 10:15:00'), +('JavaScript Variables', 'Variables in JavaScript can be declared with var, let, or const. Understanding the differences in scope and mutability between these keywords is essential for writing clean code.', '2026-01-07 11:30:00'), +('Introduction to PHP', 'PHP is a widely-used server-side scripting language. It is especially suited for web development and can be embedded directly into HTML to generate dynamic content.', '2026-01-09 13:00:00'), +('MySQL Basics', 'MySQL is a relational database management system. Data is organized into tables with rows and columns, and SQL is used to query and manipulate this data efficiently.', '2026-01-11 14:20:00'), +('Understanding Flexbox', 'CSS Flexbox is a layout model that distributes space along a single axis. It makes it easy to align and distribute items within a container, even when their sizes are unknown.', '2026-01-13 09:45:00'), +('Git Version Control', 'Git is a distributed version control system that tracks changes in source code. It enables collaboration between developers and provides a complete history of every modification.', '2026-01-15 10:00:00'), +('Responsive Web Design', 'Responsive design adapts your website layout to different screen sizes. Media queries, flexible grids, and fluid images are the main techniques used to achieve responsiveness.', '2026-01-17 11:00:00'), +('HTTP Methods Overview', 'HTTP defines methods to indicate the desired action for a resource. GET retrieves data, POST submits data, PUT updates a resource, and DELETE removes it.', '2026-01-19 14:00:00'), +('Form Elements in HTML', 'HTML forms collect user input through elements like input, textarea, select, and button. Proper use of labels, placeholders, and validation attributes improves usability.', '2026-01-21 15:30:00'), +('CSS Selectors Guide', 'CSS selectors target HTML elements to apply styles. You can select by element type, class, ID, attribute, or relationship to other elements using various selector patterns.', '2026-01-23 09:00:00'), +('JavaScript Functions', 'Functions are reusable blocks of code in JavaScript. They can accept parameters and return values, helping you organize logic and avoid code repetition throughout your application.', '2026-01-25 10:30:00'), +('PDO Database Connection', 'PHP Data Objects provide a consistent interface for accessing databases. Using PDO with prepared statements protects against SQL injection and makes your database code more portable.', '2026-01-27 11:45:00'), +('CSS Grid System', 'CSS Grid is a two-dimensional layout system. Unlike Flexbox, it allows you to control both rows and columns simultaneously, making it ideal for complex page layouts.', '2026-01-29 13:15:00'), +('JavaScript Arrays', 'Arrays in JavaScript store multiple values in a single variable. Built-in methods like map, filter, reduce, and forEach make it easy to transform and iterate over array data.', '2026-01-31 14:30:00'), +('PHP Sessions', 'Sessions in PHP preserve data across multiple page requests. The session_start function initializes a session, and data is stored in the $_SESSION superglobal array.', '2026-02-02 09:30:00'), +('Web Accessibility', 'Accessible websites can be used by people with various disabilities. Semantic HTML, proper heading structure, alt text for images, and keyboard navigation support are key practices.', '2026-02-04 10:45:00'), +('JavaScript Events', 'Events allow JavaScript to respond to user interactions such as clicks, key presses, and mouse movements. Event listeners can be attached to any DOM element using addEventListener.', '2026-02-06 12:00:00'), +('SQL SELECT Queries', 'The SELECT statement retrieves data from one or more database tables. You can filter results with WHERE, sort them with ORDER BY, and limit the count with LIMIT.', '2026-02-08 13:30:00'), +('CSS Animations', 'CSS animations use keyframes to define transitions between styles over time. The animation property controls duration, timing function, delay, and iteration count.', '2026-02-10 15:00:00'), +('HTML Semantic Elements', 'Semantic HTML elements clearly describe their meaning to both browsers and developers. Elements like header, nav, main, article, section, and footer improve document structure.', '2026-02-12 09:15:00'), +('JavaScript Promises', 'Promises represent the eventual result of an asynchronous operation. They provide then and catch methods for handling success and failure, and async/await simplifies their usage.', '2026-02-14 10:30:00'), +('MySQL JOIN Operations', 'JOIN operations combine rows from multiple tables based on a related column. INNER, LEFT, RIGHT, and FULL JOIN types determine which rows are included in the result set.', '2026-02-16 11:45:00'), +('CSS Transitions', 'CSS transitions smoothly animate changes between property values. You specify which property to animate, how long it takes, and the timing function that controls acceleration.', '2026-02-18 13:00:00'), +('PHP File Uploads', 'File uploads in PHP are handled through the $_FILES superglobal. Always validate file type, size, and name on the server side before storing files to ensure security.', '2026-02-20 14:15:00'), +('JavaScript Objects', 'Objects in JavaScript store collections of key-value pairs. They can contain properties and methods, and are fundamental to understanding how JavaScript data structures work.', '2026-02-22 09:00:00'), +('MySQL Aggregate Functions', 'Aggregate functions perform calculations on groups of rows. COUNT, SUM, AVG, MIN, and MAX are commonly used with GROUP BY to generate summary statistics from your data.', '2026-02-24 10:15:00'), +('CSS Pseudo-classes', 'Pseudo-classes select elements based on their state or position. Hover, focus, first-child, nth-child, and checked are common examples that enable dynamic styling without JavaScript.', '2026-02-26 11:30:00'), +('JavaScript Fetch API', 'The Fetch API provides a modern interface for making HTTP requests. It returns Promises and supports async/await syntax, replacing the older XMLHttpRequest approach.', '2026-02-28 13:00:00'), +('PHP Password Hashing', 'Storing plain text passwords is a serious security risk. PHP provides password_hash and password_verify functions that use bcrypt to securely hash and verify passwords.', '2026-03-02 14:30:00'), +('HTML Canvas Basics', 'The HTML canvas element provides a drawing surface for JavaScript. You can render shapes, images, text, and animations programmatically using the 2D rendering context.', '2026-03-04 09:45:00'), +('CSS Custom Properties', 'CSS custom properties, also known as CSS variables, store reusable values defined with double dashes. They can be overridden in child elements, enabling powerful theming systems.', '2026-03-06 11:00:00'), +('JavaScript localStorage', 'The localStorage API stores key-value string data persistently in the browser. Unlike cookies, it is not sent with HTTP requests and has a larger storage limit of around 5MB.', '2026-03-08 12:15:00'), +('MySQL Indexes', 'Indexes improve database query performance by allowing the engine to find rows faster. However, they add overhead during write operations, so they should be added thoughtfully.', '2026-03-10 13:30:00'), +('PHP Error Handling', 'PHP provides try-catch blocks for handling exceptions. Proper error handling prevents application crashes, logs issues for debugging, and shows appropriate messages to users.', '2026-03-12 15:00:00'), +('CSS Media Queries', 'Media queries apply styles based on screen size, resolution, or orientation. They are the backbone of responsive design, allowing layouts to adapt across different devices.', '2026-03-14 09:00:00'), +('JavaScript Closures', 'A closure is a function that retains access to its outer scope even after the outer function has returned. They are widely used for data privacy and function factories.', '2026-03-16 10:15:00'), +('MySQL Transactions', 'Transactions group multiple SQL operations into a single atomic unit. If any operation fails, the entire transaction can be rolled back to maintain data consistency.', '2026-03-18 11:30:00'), +('HTML Meta Tags', 'Meta tags provide metadata about an HTML document to browsers and search engines. The charset, viewport, description, and Open Graph tags are among the most important ones.', '2026-03-20 13:00:00'), +('CSS Position Property', 'The CSS position property controls how elements are placed in the document flow. Static, relative, absolute, fixed, and sticky each behave differently regarding layout and scrolling.', '2026-03-22 14:15:00'), +('JavaScript Modules', 'ES6 modules allow you to split JavaScript code into reusable files. Using import and export statements, you can share functions and variables between different script files.', '2026-03-24 09:30:00'), +('PHP RESTful APIs', 'Building REST APIs in PHP involves routing requests by HTTP method and URL pattern. Returning JSON responses with appropriate status codes follows REST conventions effectively.', '2026-03-26 10:45:00'), +('MySQL Subqueries', 'A subquery is a query nested inside another query. It can appear in the SELECT, FROM, or WHERE clause and is used to build complex queries that depend on intermediate results.', '2026-03-28 12:00:00'), +('CSS Overflow Property', 'The overflow property controls how content that exceeds an element is handled. Values include visible, hidden, scroll, and auto, each affecting both display and scrollability.', '2026-03-30 13:15:00'), +('JavaScript Regular Expressions', 'Regular expressions in JavaScript are patterns used to match character combinations in strings. They are used for validation, searching, and replacing text using the RegExp object.', '2026-04-01 14:30:00'), +('PHP cURL Requests', 'cURL in PHP allows you to make HTTP requests to external URLs. It is commonly used to consume third-party APIs, send data to webhooks, or download remote resources.', '2026-04-03 09:00:00'), +('MySQL Views', 'A database view is a saved SELECT query that acts like a virtual table. Views simplify complex queries, provide an abstraction layer, and can restrict access to specific columns.', '2026-04-05 10:15:00'); diff --git a/module-a/media/D5/data_dump.sql b/module-a/media/D5/data_dump.sql new file mode 100644 index 0000000..c8d05c6 --- /dev/null +++ b/module-a/media/D5/data_dump.sql @@ -0,0 +1,187 @@ +-- D5: data_dump.sql +-- Import AFTER creating the users, posts, and comments tables yourself. +-- users table structure: id, name, created_at +-- posts table structure: id, user_id, title, category, view_count, created_at +-- comments table structure: id, post_id, created_at + +INSERT INTO `users` (`name`, `created_at`) VALUES +('Alice Johnson', '2026-01-10 09:00:00'), +('Bob Martinez', '2026-01-15 10:30:00'), +('Carol White', '2026-01-20 11:00:00'), +('David Kim', '2026-01-25 14:00:00'), +('Emma Davis', '2026-02-01 09:30:00'), +('Frank Wilson', '2026-02-05 10:00:00'), +('Grace Lee', '2026-02-10 13:00:00'), +('Henry Brown', '2026-02-15 15:00:00'), +('Irene Clark', '2026-02-20 09:00:00'), +('James Taylor', '2026-02-25 11:30:00'); + +INSERT INTO `posts` (`user_id`, `title`, `category`, `view_count`, `created_at`) VALUES +(1, 'Understanding JavaScript Closures', 'tech', 1240, '2026-01-12 09:00:00'), +(2, 'CSS Grid Layout in Practice', 'design', 870, '2026-01-14 10:00:00'), +(3, 'PHP PDO Connection Guide', 'backend', 530, '2026-01-16 11:00:00'), +(4, 'A Day in the Life of a Developer', 'life', 420, '2026-01-18 12:00:00'), +(5, 'REST API Design Principles', 'tech', 980, '2026-01-20 09:30:00'), +(6, 'Mastering Flexbox Layouts', 'design', 760, '2026-01-22 10:30:00'), +(7, 'MySQL Index Optimization', 'backend', 610, '2026-01-24 11:30:00'), +(8, 'Overcoming Developer Burnout', 'life', 310, '2026-01-26 13:00:00'), +(9, 'Mastering Async JavaScript', 'tech', 1450, '2026-01-28 09:00:00'), +(10, 'Color Theory for Web Designers', 'design', 540, '2026-01-30 10:00:00'), +(1, 'PHP Session Management', 'backend', 480, '2026-02-01 11:00:00'), +(2, 'How to Study Programming Effectively', 'life', 390, '2026-02-03 12:00:00'), +(3, 'Using the Fetch API', 'tech', 820, '2026-02-05 09:00:00'), +(4, 'Typography Fundamentals for the Web', 'design', 650, '2026-02-07 10:00:00'), +(5, 'SQL JOINs Explained', 'backend', 910, '2026-02-09 11:00:00'), +(6, 'Productivity Tips for Remote Work', 'life', 280, '2026-02-11 13:00:00'), +(7, 'How the JavaScript Event Loop Works', 'tech', 1120, '2026-02-13 09:00:00'), +(8, 'CSS Animation Techniques', 'design', 730, '2026-02-15 10:00:00'), +(9, 'Handling File Uploads in PHP', 'backend', 560, '2026-02-17 11:00:00'), +(10, 'Starting Your Side Project', 'life', 450, '2026-02-19 12:00:00'), +(1, 'Getting Started with TypeScript', 'tech', 990, '2026-02-21 09:00:00'), +(2, 'Designing Reusable UI Components', 'design', 680, '2026-02-23 10:00:00'), +(3, 'MySQL Transactions Explained', 'backend', 770, '2026-02-25 11:00:00'), +(4, 'Staying Healthy as a Developer', 'tech', 360, '2026-02-27 13:00:00'), +(5, 'Web Storage API Overview', 'tech', 840, '2026-03-01 09:00:00'), +(6, 'Responsive Design Patterns', 'design', 590, '2026-03-03 10:00:00'), +(7, 'Secure Coding Practices in PHP', 'backend', 820, '2026-03-05 11:00:00'), +(8, 'Building Your Developer Portfolio', 'tech', 510, '2026-03-07 12:00:00'), +(9, 'IntersectionObserver API in Depth', 'tech', 760, '2026-03-09 09:00:00'), +(10, 'SVG Animation from Scratch', 'design', 630, '2026-03-11 10:00:00'), +(1, 'MySQL Aggregate Functions', 'backend', 690, '2026-03-13 11:00:00'), +(2, 'How to Run Effective Code Reviews', 'backend', 340, '2026-03-15 13:00:00'), +(3, 'Promises and async/await in Depth', 'tech', 1080, '2026-03-17 09:00:00'), +(4, 'Practical CSS Variables', 'design', 560, '2026-03-19 10:00:00'), +(5, 'Building a RESTful API with PHP', 'backend', 940, '2026-03-21 11:00:00'), +(6, 'Contributing to Open Source', 'design', 290, '2026-03-23 12:00:00'), +(7, 'Optimizing DOM Manipulation', 'tech', 870, '2026-03-25 09:00:00'), +(8, 'Implementing Dark Mode', 'design', 720, '2026-03-27 10:00:00'), +(9, 'MySQL Subqueries Explained', 'backend', 640, '2026-03-29 11:00:00'), +(10, 'Developer Career Roadmap', 'life', 480, '2026-03-31 12:00:00'), +(1, 'Introduction to Web Workers', 'tech', 710, '2026-04-02 09:00:00'), +(2, 'Figma Plugins for Developers', 'design', 490, '2026-04-04 10:00:00'), +(3, 'PHP Caching Strategies', 'backend', 580, '2026-04-06 11:00:00'), +(4, 'Running a Tech Blog', 'life', 410, '2026-04-06 12:00:00'), +(5, 'Service Worker Fundamentals', 'tech', 930, '2026-04-07 09:00:00'), +(6, 'Advanced CSS Grid Techniques', 'design', 660, '2026-04-07 10:00:00'), +(7, 'Using MySQL Views', 'backend', 520, '2026-04-08 11:00:00'), +(8, 'Preparing for Developer Interviews', 'life', 870, '2026-04-08 13:00:00'), +(9, 'JavaScript Design Patterns', 'tech', 1190, '2026-04-09 09:00:00'), +(10, 'Building Accessible UI', 'design', 580, '2026-04-09 10:00:00'), +(1, 'Dependency Management in PHP', 'backend', 470, '2026-04-10 11:00:00'); + +INSERT INTO `comments` (`post_id`, `created_at`) VALUES +-- post 1 (18 comments) +(1,'2026-01-12 10:00:00'),(1,'2026-01-12 11:00:00'),(1,'2026-01-13 09:00:00'), +(1,'2026-01-13 14:00:00'),(1,'2026-01-14 10:00:00'),(1,'2026-01-15 09:00:00'), +(1,'2026-01-16 11:00:00'),(1,'2026-01-17 13:00:00'),(1,'2026-01-18 10:00:00'), +(1,'2026-01-19 09:00:00'),(1,'2026-01-20 14:00:00'),(1,'2026-01-21 10:00:00'), +(1,'2026-01-22 09:00:00'),(1,'2026-01-23 11:00:00'),(1,'2026-01-24 13:00:00'), +(1,'2026-01-25 10:00:00'),(1,'2026-01-26 09:00:00'),(1,'2026-01-27 11:00:00'), +-- post 9 (15 comments) +(9,'2026-01-28 10:00:00'),(9,'2026-01-29 11:00:00'),(9,'2026-01-30 09:00:00'), +(9,'2026-01-31 14:00:00'),(9,'2026-02-01 10:00:00'),(9,'2026-02-02 09:00:00'), +(9,'2026-02-03 11:00:00'),(9,'2026-02-04 13:00:00'),(9,'2026-02-05 10:00:00'), +(9,'2026-02-06 09:00:00'),(9,'2026-02-07 14:00:00'),(9,'2026-02-08 10:00:00'), +(9,'2026-02-09 09:00:00'),(9,'2026-02-10 11:00:00'),(9,'2026-02-11 13:00:00'), +-- post 17 (13 comments) +(17,'2026-02-13 10:00:00'),(17,'2026-02-14 11:00:00'),(17,'2026-02-15 09:00:00'), +(17,'2026-02-16 14:00:00'),(17,'2026-02-17 10:00:00'),(17,'2026-02-18 09:00:00'), +(17,'2026-02-19 11:00:00'),(17,'2026-02-20 13:00:00'),(17,'2026-02-21 10:00:00'), +(17,'2026-02-22 09:00:00'),(17,'2026-02-23 14:00:00'),(17,'2026-02-24 10:00:00'), +(17,'2026-02-25 09:00:00'), +-- post 33 (12 comments) +(33,'2026-03-17 10:00:00'),(33,'2026-03-18 11:00:00'),(33,'2026-03-19 09:00:00'), +(33,'2026-03-20 14:00:00'),(33,'2026-03-21 10:00:00'),(33,'2026-03-22 09:00:00'), +(33,'2026-03-23 11:00:00'),(33,'2026-03-24 13:00:00'),(33,'2026-03-25 10:00:00'), +(33,'2026-03-26 09:00:00'),(33,'2026-03-27 14:00:00'),(33,'2026-03-28 10:00:00'), +-- post 49 (11 comments) +(49,'2026-04-07 10:00:00'),(49,'2026-04-07 14:00:00'),(49,'2026-04-08 09:00:00'), +(49,'2026-04-08 11:00:00'),(49,'2026-04-08 14:00:00'),(49,'2026-04-09 09:00:00'), +(49,'2026-04-09 11:00:00'),(49,'2026-04-09 14:00:00'),(49,'2026-04-10 09:00:00'), +(49,'2026-04-10 11:00:00'),(49,'2026-04-10 14:00:00'), +-- post 5 (10 comments) +(5,'2026-01-20 11:00:00'),(5,'2026-01-21 09:00:00'),(5,'2026-01-22 13:00:00'), +(5,'2026-01-23 10:00:00'),(5,'2026-01-24 09:00:00'),(5,'2026-01-25 11:00:00'), +(5,'2026-01-26 14:00:00'),(5,'2026-01-27 10:00:00'),(5,'2026-01-28 09:00:00'), +(5,'2026-01-29 11:00:00'), +-- post 15 (9 comments) +(15,'2026-02-09 12:00:00'),(15,'2026-02-10 09:00:00'),(15,'2026-02-11 11:00:00'), +(15,'2026-02-12 14:00:00'),(15,'2026-02-13 10:00:00'),(15,'2026-02-14 09:00:00'), +(15,'2026-02-15 11:00:00'),(15,'2026-02-16 13:00:00'),(15,'2026-02-17 10:00:00'), +-- post 21 (8 comments) +(21,'2026-02-21 10:00:00'),(21,'2026-02-22 11:00:00'),(21,'2026-02-23 09:00:00'), +(21,'2026-02-24 14:00:00'),(21,'2026-02-25 10:00:00'),(21,'2026-02-26 09:00:00'), +(21,'2026-02-27 11:00:00'),(21,'2026-02-28 13:00:00'), +-- post 35 (7 comments) +(35,'2026-03-21 12:00:00'),(35,'2026-03-22 09:00:00'),(35,'2026-03-23 11:00:00'), +(35,'2026-03-24 14:00:00'),(35,'2026-03-25 10:00:00'),(35,'2026-03-26 09:00:00'), +(35,'2026-03-27 11:00:00'), +-- post 45 (7 comments) +(45,'2026-04-07 11:00:00'),(45,'2026-04-07 15:00:00'),(45,'2026-04-08 10:00:00'), +(45,'2026-04-08 13:00:00'),(45,'2026-04-09 09:00:00'),(45,'2026-04-09 12:00:00'), +(45,'2026-04-10 10:00:00'), +-- post 2 (6 comments) +(2,'2026-01-14 11:00:00'),(2,'2026-01-15 13:00:00'),(2,'2026-01-16 10:00:00'), +(2,'2026-01-17 09:00:00'),(2,'2026-01-18 11:00:00'),(2,'2026-01-19 14:00:00'), +-- post 7 (6 comments) +(7,'2026-01-24 12:00:00'),(7,'2026-01-25 09:00:00'),(7,'2026-01-26 11:00:00'), +(7,'2026-01-27 14:00:00'),(7,'2026-01-28 10:00:00'),(7,'2026-01-29 09:00:00'), +-- post 13 (5 comments) +(13,'2026-02-05 10:00:00'),(13,'2026-02-06 11:00:00'),(13,'2026-02-07 09:00:00'), +(13,'2026-02-08 14:00:00'),(13,'2026-02-09 10:00:00'), +-- post 27 (5 comments) +(27,'2026-03-05 12:00:00'),(27,'2026-03-06 09:00:00'),(27,'2026-03-07 11:00:00'), +(27,'2026-03-08 14:00:00'),(27,'2026-03-09 10:00:00'), +-- post 37 (5 comments) +(37,'2026-03-25 10:00:00'),(37,'2026-03-26 11:00:00'),(37,'2026-03-27 09:00:00'), +(37,'2026-03-28 14:00:00'),(37,'2026-03-29 10:00:00'), +-- post 3 (4 comments) +(3,'2026-01-16 12:00:00'),(3,'2026-01-17 10:00:00'),(3,'2026-01-18 09:00:00'),(3,'2026-01-19 11:00:00'), +-- post 11 (4 comments) +(11,'2026-02-01 12:00:00'),(11,'2026-02-02 09:00:00'),(11,'2026-02-03 11:00:00'),(11,'2026-02-04 14:00:00'), +-- post 23 (4 comments) +(23,'2026-02-25 12:00:00'),(23,'2026-02-26 09:00:00'),(23,'2026-02-27 11:00:00'),(23,'2026-02-28 14:00:00'), +-- post 29 (4 comments) +(29,'2026-03-09 10:00:00'),(29,'2026-03-10 11:00:00'),(29,'2026-03-11 09:00:00'),(29,'2026-03-12 14:00:00'), +-- post 48 (4 comments) +(48,'2026-04-08 14:00:00'),(48,'2026-04-09 10:00:00'),(48,'2026-04-09 15:00:00'),(48,'2026-04-10 09:00:00'), +-- post 6 (3 comments) +(6,'2026-01-22 11:00:00'),(6,'2026-01-23 09:00:00'),(6,'2026-01-24 14:00:00'), +-- post 10 (3 comments) +(10,'2026-01-30 11:00:00'),(10,'2026-01-31 09:00:00'),(10,'2026-02-01 14:00:00'), +-- post 18 (3 comments) +(18,'2026-02-15 11:00:00'),(18,'2026-02-16 09:00:00'),(18,'2026-02-17 14:00:00'), +-- post 25 (3 comments) +(25,'2026-03-01 10:00:00'),(25,'2026-03-02 11:00:00'),(25,'2026-03-03 09:00:00'), +-- post 41 (3 comments) +(41,'2026-04-02 10:00:00'),(41,'2026-04-03 11:00:00'),(41,'2026-04-04 09:00:00'), +-- post 46 (3 comments) +(46,'2026-04-07 12:00:00'),(46,'2026-04-08 10:00:00'),(46,'2026-04-09 11:00:00'), +-- post 4 (2 comments) +(4,'2026-01-18 13:00:00'),(4,'2026-01-19 10:00:00'), +-- post 8 (2 comments) +(8,'2026-01-26 14:00:00'),(8,'2026-01-27 10:00:00'), +-- post 14 (2 comments) +(14,'2026-02-07 11:00:00'),(14,'2026-02-08 09:00:00'), +-- post 20 (2 comments) +(20,'2026-02-19 13:00:00'),(20,'2026-02-20 10:00:00'), +-- post 30 (2 comments) +(30,'2026-03-11 10:00:00'),(30,'2026-03-12 11:00:00'), +-- post 43 (2 comments) +(43,'2026-04-06 12:00:00'),(43,'2026-04-07 09:00:00'), +-- post 12 (1 comment) +(12,'2026-02-03 13:00:00'), +-- post 16 (1 comment) +(16,'2026-02-11 14:00:00'), +-- post 22 (1 comment) +(22,'2026-02-23 11:00:00'), +-- post 26 (1 comment) +(26,'2026-03-03 11:00:00'), +-- post 32 (1 comment) +(32,'2026-03-15 14:00:00'), +-- post 36 (1 comment) +(36,'2026-03-23 13:00:00'), +-- post 44 (1 comment) +(44,'2026-04-06 13:00:00'), +-- post 47 (1 comment) +(47,'2026-04-08 12:00:00');