ComusThumbz Dokumentation
Admin-Anmeldung

Creator Media

Creator Media Administration (creatormediaadmin.php)

Overview

The Creator Media Administration page (creatormediaadmin.php) is the central management interface for all media files uploaded by creators in the ComusThumbz platform. This page allows administrators to browse, filter, and monitor creator media including images, videos, and audio files. It displays processing status, CDN URLs, storage information, and provides direct access to view media files. Features include Card View and List View display modes, processing status tracking, lightbox image preview, and integration with the storage server system.

Location: Navigate to Admin Panel → Creators → Creator Media

[Screenshot: creator-media-admin-main-view]


System Requirements

PHP Extensions Required

Extension Purpose Required
mysqli Database operations Yes
session Session management Yes
json JSON encoding for JavaScript data Yes
mbstring Multi-byte string handling Yes

PHP Functions Required

Function Purpose Notes
numberformat() Statistics formatting Required
jsonencode() Data serialization for JS Required
date() Date formatting Required

PHP Version

  • Minimum: PHP 8.0+
  • Recommended: PHP 8.2+

php.ini Settings

# For large media collections
memorylimit = 256M
maxexecutiontime = 120

 

Configuration Required:
Note: This page is read-only and does not perform media processing. It displays media that was processed by ct/admin/cron/creator
mediaprocessor.php.

 


Installation Requirements

Database Tables Used

Table Purpose Created By
tblCreatorPostMedia Main media table (files, dimensions, status) Phase 11
tblCreatorPosts Post information for media context Phase 11
tblCreatorProfiles Creator profile data Phase 11
tblCreatorProducts Merchandise linked to posts Phase 11
tblCMSUsers User accounts Core install
tblCMSUserProfiles Extended user profiles Core install
tblStorageServerGroups Storage group names Phase 10
tblStorageFileLocations CDN URL tracking Phase 10

Config Variables Required

From ct/dat/config.inc.php:

// Database connection
$dbhost = 'localhost';
$db = 'admincomus';
$dbuser = 'youruser';
$dbpasswd = 'yourpassword';

// Site paths (for avatar URLs)
$domain = 'yourdomain.com';
$sitepath = '/ct';

 

File Dependencies

PHP Includes:

  • ct/admin/adminauth.php - Authentication
  • ct/dat/config.inc.php - Database configuration
  • ct/includes/header.php - Page header

 

External CSS:

  • Font Awesome 6.5.1 (CDN) - Icons

 


Features & UI Elements

Stats Dashboard

[Screenshot: creator-media-stats-dashboard]

Five statistic cards display real-time media counts:

Card Color Description
Total Media Green Complete media count in database
Images Orange Total image files
Videos Blue Total video files
Audio Purple Total audio files
Total Size Teal Cumulative storage size

Filter Controls

[Screenshot: creator-media-filter-controls]

Filter Options
Creator Search Search by creator username or display name
Media Type All Media Types, Images, Videos, Audio
Processing Status All Status, Completed, Pending, Processing, Failed
Sort By Newest First, Oldest First, Largest First, Smallest First
Post ID Filter by specific post ID
Per Page 30, 60, 100 records per page

View Toggle

Button Description
Card View Visual cards with media preview and full details
List View Compact table format with sortable columns

Column Customization (List View)

[Screenshot: creator-media-column-customizer]

Click to expand the column customizer accordion:

Feature Description
Drag to Reorder Drag column items to change order
Check/Uncheck Show/hide columns
Yellow Items Mandatory columns (cannot hide)
Apply Button Save column configuration
Reset to Default Restore default column layout

Available Columns:

  • Thumbnail (mandatory), Media ID, Type (mandatory), Status (mandatory)
  • Creator (mandatory), Post ID, Dimensions, File Size, Duration
  • Lock Type, Storage, Created Date, Actions (mandatory)

Media Card View

[Screenshot: creator-media-card-detail]

Each media card displays:

Preview Section

  • Image Preview - Actual thumbnail from CDN (images only)
  • Video Icon - Blue video icon placeholder
  • Audio Icon - Green music icon placeholder
  • Type Badge - IMAGE (orange), VIDEO (blue), AUDIO (green)
  • Processing Badge - COMPLETED (green), PENDING (yellow), PROCESSING (blue), FAILED (red)

Creator Information

  • Avatar - Creator profile image
  • Creator Name - Display name
  • Username - @username format

Media Metadata

Field Description
Media ID Unique media identifier
Post ID Parent post identifier
Size File size (bytes, KB, MB, GB)
Lock Type FREE, PAID, SUBSCRIBERS badge
Merchandise Product name and token price (if linked)
Dimensions Width × Height (images only)
Created Creation date

CDN URLs Section

  • Primary CDN - Direct CDN URL from tblCreatorPostMedia.cdnurl
  • Storage CDN - URL from tblStorageFileLocations (if synced)

 

Note:
CDN URLs are truncated to 50 characters in the display. Click to open full URL in new tab.

 

Card Actions

Button Description
View Post Opens Creator Posts Admin filtered by post ID
View Creator Opens creator's user details page
Open File Opens media file (lightbox for images, new tab for video/audio)

Processing Status Meanings

Status Badge Color Description
Completed Green Media fully processed and available on CDN
Pending Yellow Media queued for processing
Processing Blue Media currently being processed
Failed Red Processing failed - check logs
Warning: Failed Status: Media with "failed" status may need manual intervention. Check ct/logs/creatormediaprocessor/ for error details.

List View

[Screenshot: creator-media-list-view]

Compact table format with:

Default Columns

  • Thumbnail, Type, Status, Creator, Post ID, Dimensions, File Size, Created, Actions

Table Features

  • Sortable columns (client-side)
  • Thumbnail previews (60x40 pixels)
  • Placeholder icons for non-image media
  • Color-coded status and type badges
  • Truncated URLs with ellipsis

Lightbox Feature

[Screenshot: creator-media-lightbox]

For image files, clicking "Open File" displays a full-screen lightbox:

Element Description
Image Full-size image with max 90% viewport
Close Button × button in top-right corner
Creator Info @username displayed below image
Dimensions Width × Height displayed below image
Escape Key Press Escape to close
Click Outside Click dark overlay to close

Step-by-Step Usage

Finding Media by Creator

  1. Navigate to Admin Panel → Creators → Creator Media
  2. Enter creator username or name in "Creator Search" field
  3. Click Filter
  4. View all media from that creator

Filtering by Processing Status

  1. Open the page
  2. Select status from "Processing Status" dropdown:
  • Completed - Successfully processed
  • Pending - Awaiting processing
  • Processing - Currently being processed
  • Failed - Processing errors
  1. Click Filter

Viewing Media for a Specific Post

  1. From Creator Posts Admin, note the Post ID
  2. Navigate to Creator Media Admin
  3. Enter Post ID in the "Post ID..." field
  4. Click Filter
  5. All media for that post displayed

Shortcut: Click "View Media" button on any post card in Creator Posts Admin.

Checking CDN Status

  1. Filter by Processing Status = "Completed"
  2. Verify CDN URL is displayed in card
  3. Click URL to test accessibility
  4. If "Storage CDN" shows, media is synced to storage servers

Identifying Failed Media

  1. Select Processing Status = "Failed"
  2. Click Filter
  3. Note the Media IDs and Post IDs
  4. Check processor logs: ct/logs/creatormediaprocessor/
  5. Reprocess if needed via cron job

Customizing List View Columns

  1. Switch to List View
  2. Click accordion header "Customize List Columns"
  3. Check/uncheck columns to show/hide
  4. Drag columns to reorder
  5. Click Apply
  6. Settings saved to localStorage

Below the media grid/list, a summary shows:

Showing [X] of [Y] media items
Completed: [N] • Pending: [N] • Processing: [N] • Failed: [N]

This provides at-a-glance status breakdown without filtering.


Troubleshooting

Common Errors

 

Error:
"Connection failed"


Cause: Database connection error
Solution: Verify database credentials in ct/dat/config.inc.php

 

 

Error:
Media thumbnails not displaying


Cause: CDN URL empty or invalid, media not yet processed
Solution:

  1. Check processingstatus - if "pending", wait for cron
  2. If "failed", check processor logs
  3. Verify CDN configuration in storage settings

 

 

Error:
"No media found" when filtering by Post ID


Cause: Post has no media attachments, or Post ID doesn't exist
Solution: Verify Post ID in Creator Posts Admin first

 

 

Error:
Lightbox not opening for images


Cause: JavaScript error or CDN URL empty
Solution: Check browser console for errors; verify cdn
url has value

 

Performance Issues

 

Warning:
Page loads slowly with many media items


Solutions:

  1. Use List View instead of Card View
  2. Reduce records per page (30 instead of 100)
  3. Add specific filters (creator, postid, status)
  4. Ensure database indexes exist on tblCreatorPostMedia

 

Media Processing Issues

 

Warning:
Media stuck in "Processing" status


Cause: Processor cron job not running or crashed
Solution:

  1. Verify cron is configured: php /path/to/ct/admin/cron/sitecron.php
  2. Check processor logs for errors
  3. Manually run: php ct/admin/cron/creatormediaprocessor.php

 


JavaScript Features

LocalStorage Keys

Key Purpose
creatormediaview Stores view preference (card/list)
creatormediacolumns Stores column configuration for list view

Client-Side Functions

Function Purpose
setView(mode) Toggle between card and list views
toggleAccordion() Expand/collapse column customizer
applyColumnSettings() Save and apply column configuration
resetColumnSettings() Reset to default columns
renderDynamicTable() Render list view table based on settings
openLightbox(url, creator, dimensions) Open image in lightbox
closeLightbox() Close lightbox modal

Cron Script Purpose
ct/admin/cron/sitecron.php Master cron (runs every minute)
ct/admin/cron/creatormediaprocessor.php Processes uploaded media
Configuration Required: Cron Setup:
     php /path/to/ct/admin/cron/sitecron.php
The sitecron.php automatically calls creatormediaprocessor.php when needed.

Translatable Strings

The following strings should be added to backendtranslations.md:

creatormediaadmintitle = "Creator Media Management"
creatormediaadminbreadcrumb = "Media Management"
creatormediatotal = "Total Media"
creatormediaimages = "Images"
creatormediavideos = "Videos"
creatormediaaudio = "Audio"
creatormediatotalsize = "Total Size"
creatormediafilter = "Filter"
creatormediareset = "Reset"
creatormediasearchcreator = "Search by creator username or name..."
creatormediaalltypes = "All Media Types"
creatormediaallstatus = "All Status"
creatormediacompleted = "Completed"
creatormediapending = "Pending"
creatormediaprocessing = "Processing"
creatormediafailed = "Failed"
creatormedianewest = "Newest First"
creatormediaoldest = "Oldest First"
creatormedialargest = "Largest First"
creatormediasmallest = "Smallest First"
creatormediapostid = "Post ID..."
creatormediacardview = "Card View"
creatormedialistview = "List View"
creatormediacustomizecolumns = "Customize List Columns"
creatormediaviewpost = "View Post"
creatormediaviewcreator = "View Creator"
creatormediaopenfile = "Open File"
creatormedianomedia = "No media found"
creatormediaadjustfilters = "Try adjusting your filters or check back later."
creatormediashowing = "Showing"
creatormediaof = "of"
creatormediaitems = "media items"
creatormediaprimarycdn = "Primary CDN:"
creatormediastoragecdn = "Storage CDN:"

Version History

Version Date Changes
1.0 2024-11 Initial release with Task 11.3.2
1.1 2024-12 Added Card/List view toggle, column customization
1.2 2025-01 Added merchandise display, storage CDN tracking