Modern Forum
Introduction
Complete Joomla 5/6 forum component with hierarchical forum structure, user management, file attachment system, thanks/like functionality, search, profile management, and comprehensive administration tools.
Modern Forum - Feature Description (Version 1.1.5)
Author: Mertsch-Web.de
License: GNU General Public License v2 or later
System Requirements: PHP 8.1+, Joomla 5.0.0+
1. Forum Structure
1.1 Categories
- Creation and management of categories for thematic organization of the forum
- Individual color assignment per category (colored border on the left side of the category card)
- Sorting via an ordering field
- Publication status (active/inactive)
- Custom description per category
- URL alias (slug) for search-engine-friendly URLs, auto-generated or manually configurable
1.2 Subforums
- Unlimited subforums per category
- Custom description per subforum
- Automatically maintained statistics:
- Number of topics
- Number of posts
- Last post (date, user)
- Sorting via ordering field
- Publication status (active/inactive)
- URL alias (slug) for search-engine-friendly URLs
1.3 Topics
- Creation of new topics within subforums
- WYSIWYG editor integration (Joomla editor) for content creation
- Pinning important topics (sticky) -- always displayed at the top
- Locking topics -- no new replies allowed, with visual indicator
- Editing own topics (title and content)
- Deleting own topics (with confirmation dialog)
- Administrators can edit and delete all topics
- Automatic view counting on each page load
- Display of modification date for edited topics
- Automatic URL alias generation from the title
- Pagination for topic listings
1.4 Replies (Posts)
- Replying to topics with WYSIWYG editor (new replies) or textarea (editing)
- Editing own replies
- Deleting own replies (with confirmation dialog)
- Administrators and moderators can edit and delete all replies
- Display of modification date for edited replies ("edited" indicator)
- Sequential reply numbering (#1, #2, #3, ...)
- Topic starter badge for the original author
- Display of total post count per author
- Pagination for reply listings
- Automatic reply counter maintenance (increment on creation, safe decrement on deletion)
2. Thanks/Like System (New in Version 1.1.4)
- Thanks functionality for individual topics and individual replies
- Toggle behavior: clicking "Thanks" adds a thank, clicking again removes it
- AJAX-based execution without page reload (JSON response)
- Display of current thanks count next to the button
- List of all users who have thanked (usernames visible)
- One user can only thank once per content item (duplicate protection via database constraint)
- Only available to authenticated users
- Visual feedback: thumbs-up icon with active/inactive state
3. File Attachment System
3.1 Topic Attachments
- Upload one or multiple files when creating a topic
- Upload additional files when editing a topic
- Delete existing attachments (checkbox selection with strikethrough preview)
- Display of attachments with filename, file size, and file type icon
3.2 Reply Attachments
- Upload one or multiple files when creating a reply
- Upload additional files when editing
- Delete existing attachments
3.3 Supported File Formats
- Documents: PDF, DOC, DOCX, XLS, XLSX, TXT
- Archives: ZIP
- Images: JPG, JPEG, PNG, GIF
- Maximum file size: 10 MB per file
3.4 Security
- Server-side file type validation against whitelist
- Secure filename generation (MD5 hash of filename + timestamp)
- Dedicated download endpoint with proper HTTP headers (Content-Type, Content-Disposition)
- Preview of selected files (name and size) before upload (JavaScript)
4. Search Functionality
- Search for topics by title (LIKE-based with wildcard matching)
- Search field on the forum homepage and on the "All Topics" page
- Dedicated search results page with:
- Display of result count ("X results for 'search term'")
- Result list with topic title, author, creation date, subforum, reply count, view count
- Pinned and locked topics marked with badges
- Pagination of search results (Previous/Next with page indicator)
- Search term preserved across pagination navigation
- Secure search string handling (database escaping)
5. All Topics View
- Overview of all topics across all subforums in chronological order
- Pinned topics displayed first
- Per-topic display: title, pinned/locked badges, author, creation date, subforum name, reply count, view count
- Pagination (20 topics per page)
- Search field with redirect to search page
- "New Topic" button (only for authenticated users)
6. User Management
6.1 Authentication
- Integration with the native Joomla user system (com_users)
- Login redirect to Joomla login form with automatic return to the forum
- Registration redirect to Joomla registration form
- Custom logout function with success message
- Welcome message with username for authenticated users
- Session management via Joomla session system
6.2 User Profiles
- Public profile page for each user with:
- Profile picture (avatar) or initial letter fallback (colored circle with first letter)
- Username and display name
- Member since date (with calendar icon)
- Number of topics created
- Number of replies written
- Location (with map pin icon)
- Website (with globe icon, as clickable link)
- Signature
- Recent topics by the user (as activity list with links)
- Recent replies by the user (with anchor links to the specific post)
6.3 Profile Editing (own profile only)
- Change location
- Change website URL
- Change signature (maximum 500 characters)
- Upload profile picture (avatar):
- Supported formats: JPG, JPEG, PNG, GIF, WebP
- Maximum size: 2 MB
- Automatic center-cropping to square format
- Automatic resizing to 200x200 pixels
- Transparency support for PNG, GIF, and WebP
- Image processing via GD library (fallback to raw upload)
- Delete profile picture
- Avatar preview dialog with file selection and preview (FileReader API)
- Old avatar image is automatically deleted when uploading a new one
6.4 User Roles
- User: Default role, can create, edit, and delete own content
- Moderator: Can edit and delete all posts
- Administrator (admin/super_admin): Full access to all content and administration areas
7. Spam Protection
7.1 Math CAPTCHA
- Security question on:
- Registration
- Topic creation
- Topic editing
- Reply creation
- Three problem types: addition, subtraction, multiplication
- Random number ranges (no negative results)
- Visual feedback: green/red border for correct/incorrect input
- Refresh button for a new problem
- Server-side validation against session-stored value (single use)
7.2 CSRF Protection
- Joomla form token on all POST forms and delete actions
- Server-side token verification in all controllers (Session::checkToken())
8. Administration (Backend)
8.1 Dashboard
- Statistics overview with cards for:
- Number of categories
- Number of subforums
- Number of topics
- Number of posts
- Number of users
- Recent topics (last 5 with author, subforum badge, and date)
- Recent posts (last 5 with author, topic title, and date)
- Quick access links to all management areas
- Premium section (collapsible):
- Premium code activation
- Settings: hide info page, hide powered-by branding, enable EasyDiscuss import
8.2 Category Management
- Create new categories
- Edit existing categories (title, description, alias, color, ordering)
- Delete categories
- Publish/unpublish
- List view with search and filter functionality
8.3 Subforum Management
- Create new subforums with category assignment
- Edit title, description, alias, ordering
- Delete subforums
- Display of parent category
- Display of topic count and publication status
8.4 Topic Management
- Overview of all topics with pagination
- Display of: title, subforum, author, post count, creation date, sticky status, lock status
- Edit topics (including attachment management)
- Delete topics
- Pin/unpin (sticky)
- Lock/unlock
- Highlighting of pinned topics in the list
- Link to posts view per topic
8.5 Post Management
- Overview of all posts with pagination
- Display of: content preview (first 100 characters), topic title, author, creation date, status
- Edit posts
- Delete posts
8.6 User Management
- Overview of all Joomla users with forum activity
- Display of: username, display name, email, topic count, post count, status (active/blocked), registration date
- Direct link to Joomla user management per user
- Pagination
8.7 Info Page
- Developer contact information (phone, email, website)
- PayPal donation link
- Can be hidden via premium setting
8.8 Data Import
8.8.1 EasyDiscuss Import (Premium Feature)
Two-step migration wizard:
- Step 1: Table prefix configuration and validation
- Check for existence of EasyDiscuss tables
- Display of source data statistics (categories, subcategories, topics, replies)
- Display of existing ModernForum data
- Step 2a: Category import
- Import of EasyDiscuss categories as ModernForum categories
- Import of EasyDiscuss subcategories as subforums
- Creation of default subforums for main categories
- Overwrite mode (update existing entries by alias)
- German umlaut handling in alias generation (ae, oe, ue, ss)
- Step 2b: Topic/post import
- Year-based selection (checkboxes)
- AJAX preview of the number of topics and replies to import
- Import of topics with content, views, sticky status, lock status
- Import of replies with topic assignment
- Automatic creation of an "Imported" fallback category
- Recalculation of all counters after import
8.8.2 phpBB3 Import
- Import of categories/forums, topics, posts, and user associations
9. Configuration Options
9.1 Display Settings
| Setting | Default | Range |
|---|---|---|
| Posts per page | 20 | 5-100 |
| Topics per page | 25 | 5-100 |
| Show statistics | Yes | Yes/No |
9.2 Color Customization (8 Color Fields)
| Setting | Default |
|---|---|
| Primary color | #2563eb |
| Secondary color | #1e40af |
| Accent color | #0ea5e9 |
| Background color | #f8fafc |
| Card color | #ffffff |
| Text color | #1e293b |
| Muted text color | #64748b |
| Border color | #e2e8f0 |
Colors are injected as CSS custom properties (variables) inline and affect the entire forum design.
9.3 Premium Settings
| Setting | Default |
|---|---|
| Premium activated | No |
| Hide info page | No |
| Hide powered-by | No |
| Enable EasyDiscuss import | No |
9.4 Permissions
- Standard Joomla ACL rules for component-wide access rights
10. Security
10.1 Access Rights and Permissions
- Only authenticated users can:
- Create topics
- Write replies
- Edit profiles
- Give thanks
- Only own content can be edited and deleted (ownership check)
- Moderators can edit and delete all posts
- Administrators have full access to all content and administration areas
- Admin area only accessible to users with admin or super admin role
10.2 Data Security
- CSRF token protection on all forms and actions
- XSS protection through consistent use of htmlspecialchars() on all user output
- Secure password storage (via Joomla system)
- SQL injection protection through parameterized queries and database escaping
- Secure file upload validation (whitelist of allowed file types and size restriction)
- Secure filename generation for uploads (MD5 hash)
- Index.html security files in upload directories
11. Multi-Language Support
11.1 Supported Languages
- German (de-DE) -- complete
- English (en-GB) -- complete
11.2 Translation Scope
- Backend/Administration: 163 language strings (dashboard, CRUD operations, import wizard, premium section, configuration labels, error messages)
- Frontend/Website: 174 language strings (forum navigation, authentication, topic/post management, file attachments, user profiles, search, CAPTCHA, thanks system)
- All interface texts, error messages, success messages, and form labels are translatable
12. Technical Features
12.1 Joomla Integration
- Fully MVC-based architecture (Model-View-Controller)
- Namespace support (JoomlaComponentModernForum)
- Compatible with Joomla 5 and 6
- Native Joomla user management and authentication
- Joomla menu integration for all views
- Joomla editor integration (WYSIWYG) for content
- Joomla ACL permission system
- Joomla update server integration for automatic updates
- Installation script with system requirements check (PHP 8.1+, Joomla 5.0+)
12.2 Responsive Design
- Optimized for all screen sizes (desktop, tablet, mobile)
- CSS breakpoint at 768px for mobile adjustments:
- Vertical post layout (author above content instead of side by side)
- Stacked form actions
- Centered profile layout
- Adjusted search field widths
- Mobile-friendly navigation with hamburger menu
12.3 Design and Presentation
- CSS custom properties for consistent theming
- System font stack (-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, etc.)
- Max-width container (1200px) with centered layout
- Category cards with colored left border and gradient header
- Hover effects on interactive elements
- Color-coded badges for roles (admin=red, moderator=blue, user=gray)
- Color-coded status badges (active=green, blocked=red, pinned=yellow, locked=gray)
- File-type-specific icon colors (PDF=red, DOC=blue, image=green)
12.4 Performance
- Efficient database queries with JOINs instead of individual queries
- Cached counters on subforums (topic/post count, last post) and topics (reply count, last reply)
- Pagination on all list views
- Parallel database queries where possible
- View count tracking without additional page load
12.5 Database
7 tables:
1. #__modernforum_categories -- Categories with title, description, color, alias, ordering, status
2. #__modernforum_subforums -- Subforums with category assignment, cached counter values
3. #__modernforum_topics -- Topics with subforum assignment, sticky/lock status, view counter, reply counter
4. #__modernforum_posts -- Posts/replies with topic assignment, modification tracking
5. #__modernforumuserprofiles -- Extended user profiles (avatar, signature, location, website, counters)
6. #__modernforum_attachments -- File attachments for topics or posts
7. #__modernforum_thanks -- Thanks/like entries with content type, content ID, and user ID (unique constraint)
13. Menu Items
Available Views for Joomla Menu Items
| View | Description |
|---|---|
| Forum Overview | Shows all categories with their subforums and forum statistics |
| All Topics | Lists all topics across all subforums sorted by date with pagination |
| Single Subforum | Shows all topics of a specific subforum |
| Single Topic | Shows a specific topic with all replies |
| User Profile | Shows the profile page of a user |
| Search | Shows the search page with results |
14. Administration Menu
| Menu Item | Description |
|---|---|
| Dashboard | Statistics, recent activity, quick access, premium section |
| Categories | Management of all forum categories |
| Subforums | Management of all subforums |
| Topics | Management of all topics |
| Users | Overview of users with forum activity |
| Info | Developer contact and donation option |
15. Version History
| Version | Changes |
|---|---|
| 1.0.0 | Initial release: categories, subforums, topics, posts, user management, multi-language support (DE/EN) |
| 1.0.1 | Easy Discuss import functionality |
| 1.0.2 | Topic editing for topic starters, Joomla update server integration |
| 1.0.3 | File attachment system (upload, download, management) |
| 1.0.4 | Attachment folder creation during installation |
| 1.0.5 | Improved file upload processing |
| 1.0.6 | Improved post/reply styling |
| 1.0.7 | Attachment management in backend topic editor |
| 1.0.8 | User profile page with avatar upload, profile picture display in topics and posts, clickable usernames |
| 1.0.9 | Math CAPTCHA for topic creation and replies, refresh button for new problems |
| 1.1.0 | Math CAPTCHA for registration |
| 1.1.1 | Performance and stability improvements, code optimization |
| 1.1.2 | Info page in admin backend with developer contact information and donation link |
| 1.1.3 | Premium section with code activation (hide branding, enable import, hide info page) |
| 1.1.4 | Thanks/like system for topics and posts (toggle, AJAX, counter, user list) |
Modern Forum - Funktionsbeschreibung (Version 1.1.4)
Vollstaendige Joomla 5/6 Forum-Komponente mit hierarchischer Forenstruktur, Benutzerverwaltung, Dateianhang-System, Danke-/Like-Funktion, Suchfunktion, Profilverwaltung und umfangreichen Administrationswerkzeugen.
Autor: Mertsch-Web.de
Lizenz: GNU General Public License v2 oder hoeher
Systemvoraussetzungen: PHP 8.1+, Joomla 5.0.0+
1. Forum-Struktur
1.1 Kategorien
- Erstellung und Verwaltung von Kategorien zur thematischen Gliederung des Forums
- Individuelle Farbgebung pro Kategorie (Farbbalken am linken Rand der Kategorie-Karte)
- Sortierung ueber ein Reihenfolge-Feld (ordering)
- Veroeffentlichungsstatus (aktiv/inaktiv)
- Eigene Beschreibung pro Kategorie
- URL-Alias (Slug) fuer suchmaschinenfreundliche Adressen, automatisch generiert oder manuell festlegbar
1.2 Unterforen
- Beliebig viele Unterforen pro Kategorie
- Eigene Beschreibung pro Unterforum
- Automatisch gepflegte Statistiken:
- Anzahl der Themen
- Anzahl der Beitraege
- Letzter Beitrag (Datum, Benutzer)
- Sortierung ueber Reihenfolge-Feld
- Veroeffentlichungsstatus (aktiv/inaktiv)
- URL-Alias (Slug) fuer suchmaschinenfreundliche Adressen
1.3 Themen (Topics)
- Erstellung neuer Themen innerhalb von Unterforen
- WYSIWYG-Editor-Integration (Joomla-Editor) fuer die Inhaltserstellung
- Anpinnen wichtiger Themen (Sticky) -- werden immer oben angezeigt
- Sperren von Themen (Locked) -- keine neuen Antworten moeglich, mit visueller Kennzeichnung
- Bearbeiten eigener Themen (Titel und Inhalt)
- Loeschen eigener Themen (mit Bestaetigung)
- Administratoren koennen alle Themen bearbeiten und loeschen
- Automatische Ansichtszaehlung (Views) bei jedem Seitenaufruf
- Anzeige von Bearbeitungsdatum bei geaenderten Themen
- Automatische URL-Alias-Generierung aus dem Titel
- Seitenweise Navigation bei vielen Themen (Pagination)
1.4 Antworten (Posts/Replies)
- Antworten auf Themen mit WYSIWYG-Editor (Neuerstellung) oder Textfeld (Bearbeitung)
- Bearbeiten eigener Antworten
- Loeschen eigener Antworten (mit Bestaetigung)
- Administratoren und Moderatoren koennen alle Antworten bearbeiten und loeschen
- Anzeige von Bearbeitungsdatum bei geaenderten Antworten ("bearbeitet"-Kennzeichnung)
- Fortlaufende Nummerierung der Antworten (#1, #2, #3, ...)
- Kennzeichnung des Themenerstellers ("Themenstarter"/"Topic Starter"-Badge)
- Anzeige der Gesamtbeitragsanzahl des jeweiligen Autors
- Seitenweise Navigation bei vielen Antworten (Pagination)
- Automatische Pflege der Antwortenzaehler (Inkrementierung bei Erstellung, sichere Dekrementierung bei Loeschung)
2. Danke-/Like-System (Neu in Version 1.1.4)
- Danke-Funktion fuer einzelne Themen und einzelne Antworten
- Toggle-Verhalten: Klick auf "Danke" gibt ein Danke, erneuter Klick entfernt es
- AJAX-basierte Ausfuehrung ohne Seitenneuladung (JSON-Antwort)
- Anzeige der aktuellen Danke-Anzahl neben dem Button
- Auflistung aller Benutzer, die gedankt haben (Benutzernamen sichtbar)
- Ein Benutzer kann pro Inhalt nur einmal danken (Duplikat-Schutz durch Datenbank-Constraint)
- Nur fuer angemeldete Benutzer verfuegbar
- Visuelles Feedback: Daumen-hoch-Icon mit aktivem/inaktivem Zustand
3. Dateianhang-System
3.1 Anhaenge an Themen
- Hochladen einer oder mehrerer Dateien beim Erstellen eines Themas
- Hochladen zusaetzlicher Dateien beim Bearbeiten eines Themas
- Loeschen bestehender Anhaenge (Checkbox-Auswahl mit Durchstreich-Vorschau)
- Anzeige der Anhaenge mit Dateiname, Dateigroesse und Dateityp-Icon
3.2 Anhaenge an Antworten
- Hochladen einer oder mehrerer Dateien beim Erstellen einer Antwort
- Hochladen zusaetzlicher Dateien beim Bearbeiten
- Loeschen bestehender Anhaenge
3.3 Unterstuetzte Dateiformate
- Dokumente: PDF, DOC, DOCX, XLS, XLSX, TXT
- Archive: ZIP
- Bilder: JPG, JPEG, PNG, GIF
- Maximale Dateigroesse: 10 MB pro Datei
3.4 Sicherheit
- Serverseitige Dateitypvalidierung gegen Whitelist
- Sichere Dateinamen-Generierung (MD5-Hash aus Dateiname + Zeitstempel)
- Dedizierter Download-Endpunkt mit korrekten HTTP-Headern (Content-Type, Content-Disposition)
- Vorschau der ausgewaehlten Dateien (Name und Groesse) vor dem Hochladen (JavaScript)
4. Suchfunktion
- Suche nach Themen anhand des Titels (LIKE-basiert mit Wildcard-Matching)
- Suchfeld auf der Forum-Startseite und auf der "Alle Themen"-Seite
- Eigene Suchergebnis-Seite mit:
- Anzeige der Trefferanzahl ("X Ergebnisse fuer 'Suchbegriff'")
- Ergebnisliste mit Thementitel, Autor, Erstellungsdatum, Unterforum, Antwortenzahl, Ansichtenanzahl
- Angeheftete und gesperrte Themen werden mit Badges gekennzeichnet
- Seitenweise Navigation der Suchergebnisse (Pagination mit Vor/Zurueck und Seitenangabe)
- Suchbegriff wird durch Seitennavigation hindurch beibehalten
- Sichere Suchstring-Behandlung (Datenbankescaping)
5. Alle-Themen-Ansicht
- Uebersicht aller Themen aller Unterforen in chronologischer Reihenfolge
- Angeheftete Themen werden zuerst angezeigt
- Anzeige pro Thema: Titel, Pinned/Locked-Badges, Autor, Erstellungsdatum, Unterforum-Name, Antwortenzahl, Ansichtenzahl
- Seitenweise Navigation (20 Themen pro Seite)
- Suchfeld mit Weiterleitung zur Suchseite
- "Neues Thema"-Button (nur fuer angemeldete Benutzer)
6. Benutzerverwaltung
6.1 Authentifizierung
- Integration mit dem nativen Joomla-Benutzersystem (com_users)
- Login-Weiterleitung zum Joomla-Anmeldeformular mit automatischer Rueckleitung zum Forum
- Registrierungs-Weiterleitung zum Joomla-Registrierungsformular
- Eigene Abmelde-Funktion mit Erfolgsmeldung
- Willkommensnachricht mit Benutzernamen fuer angemeldete Benutzer
- Session-Verwaltung ueber Joomla-Session-System
6.2 Benutzerprofile
- Oeffentliche Profilseite fuer jeden Benutzer mit:
- Profilbild (Avatar) oder Initialen-Fallback (farbiger Kreis mit Anfangsbuchstabe)
- Benutzername und Anzeigename
- Mitglied-seit-Datum (mit Kalender-Icon)
- Anzahl erstellter Themen
- Anzahl geschriebener Antworten
- Standort (mit Karten-Pin-Icon)
- Website (mit Globus-Icon, als klickbarer Link)
- Signatur
- Letzte Themen des Benutzers (als Aktivitaetsliste mit Links)
- Letzte Antworten des Benutzers (mit Ankerlinks zum jeweiligen Beitrag)
6.3 Profilbearbeitung (nur eigenes Profil)
- Aendern des Standorts
- Aendern der Website-URL
- Aendern der Signatur (maximal 500 Zeichen)
- Hochladen eines Profilbilds (Avatar):
- Unterstuetzte Formate: JPG, JPEG, PNG, GIF, WebP
- Maximale Groesse: 2 MB
- Automatisches Zuschneiden auf quadratisches Format (Mitte)
- Automatische Skalierung auf 200x200 Pixel
- Transparenz-Unterstuetzung fuer PNG, GIF und WebP
- Bildverarbeitung ueber GD-Bibliothek (Fallback auf Rohupload)
- Loeschen des Profilbilds
- Avatar-Vorschau-Dialog mit Dateiauswahl und Vorschau (FileReader API)
- Altes Avatar-Bild wird beim Hochladen eines neuen automatisch geloescht
6.4 Benutzerrollen
- Benutzer (user): Standard-Rolle, kann eigene Inhalte erstellen, bearbeiten und loeschen
- Moderator (moderator): Kann alle Beitraege bearbeiten und loeschen
- Administrator (admin/super_admin): Vollzugriff auf alle Inhalte und Verwaltungsbereiche
7. Spam-Schutz
7.1 Mathe-Captcha
- Sicherheitsfrage bei:
- Registrierung
- Themen-Erstellung
- Themen-Bearbeitung
- Antwort-Erstellung
- Drei Aufgabentypen: Addition, Subtraktion, Multiplikation
- Zufaellige Zahlenbereiche (keine negativen Ergebnisse)
- Visuelle Rueckmeldung: gruener/roter Rahmen bei korrekter/falscher Eingabe
- Aktualisierungsbutton fuer neue Aufgabe
- Serverseitige Validierung gegen Session-gespeicherten Wert (Einmalverwendung)
7.2 CSRF-Schutz
- Joomla-Form-Token auf allen POST-Formularen und Loeschaktionen
- Serverseitige Token-Pruefung in allen Controllern (Session::checkToken())
8. Administration (Backend)
8.1 Dashboard
- Statistik-Uebersicht mit Karten fuer:
- Anzahl Kategorien
- Anzahl Unterforen
- Anzahl Themen
- Anzahl Beitraege
- Anzahl Benutzer
- Neueste Themen (letzte 5 mit Autor, Unterforum-Badge und Datum)
- Neueste Beitraege (letzte 5 mit Autor, Thementitel und Datum)
- Schnellzugriff-Links zu allen Verwaltungsbereichen
- Premium-Bereich (aufklappbar):
- Premium-Code-Aktivierung
- Einstellungen: Info-Seite ausblenden, Powered-By-Branding ausblenden, EasyDiscuss-Import aktivieren
8.2 Kategorie-Verwaltung
- Erstellen neuer Kategorien
- Bearbeiten bestehender Kategorien (Titel, Beschreibung, Alias, Farbe, Reihenfolge)
- Loeschen von Kategorien
- Veroeffentlichen/Zurueckziehen
- Listenansicht mit Such- und Filterfunktion
8.3 Unterforum-Verwaltung
- Erstellen neuer Unterforen mit Zuordnung zu Kategorien
- Bearbeiten von Titel, Beschreibung, Alias, Reihenfolge
- Loeschen von Unterforen
- Anzeige der uebergeordneten Kategorie
- Anzeige der Themenanzahl und des Veroeffentlichungsstatus
8.4 Themen-Verwaltung
- Uebersicht aller Themen mit Pagination
- Anzeige von: Titel, Unterforum, Autor, Beitragsanzahl, Erstellungsdatum, Sticky-Status, Lock-Status
- Bearbeiten von Themen (inkl. Anhangsverwaltung)
- Loeschen von Themen
- Anpinnen/Entspinnen (Sticky)
- Sperren/Entsperren (Lock)
- Hervorhebung angepinnter Themen in der Liste
- Link zur Beitragsansicht pro Thema
8.5 Beitrags-Verwaltung
- Uebersicht aller Beitraege mit Pagination
- Anzeige von: Inhaltsvorschau (erste 100 Zeichen), Thementitel, Autor, Erstellungsdatum, Status
- Bearbeiten von Beitraegen
- Loeschen von Beitraegen
8.6 Benutzer-Verwaltung
- Uebersicht aller Joomla-Benutzer mit Forum-Aktivitaet
- Anzeige von: Benutzername, Anzeigename, E-Mail, Themenanzahl, Beitragsanzahl, Status (Aktiv/Gesperrt), Registrierungsdatum
- Direkter Link zur Joomla-Benutzerverwaltung pro Benutzer
- Pagination
8.7 Info-Seite
- Entwickler-Kontaktinformationen (Telefon, E-Mail, Website)
- PayPal-Spenden-Link
- Kann ueber Premium-Einstellung ausgeblendet werden
8.8 Datenimport
8.8.1 EasyDiscuss-Import (Premium-Funktion)
Zweistufiger Migrationsassistent:
- Schritt 1: Tabellen-Praefix-Konfiguration und Validierung
- Pruefung auf Existenz der EasyDiscuss-Tabellen
- Anzeige der Quelldaten-Statistik (Kategorien, Unterkategorien, Themen, Antworten)
- Anzeige der bestehenden ModernForum-Daten
- Schritt 2a: Kategorie-Import
- Import von EasyDiscuss-Kategorien als ModernForum-Kategorien
- Import von EasyDiscuss-Unterkategorien als Unterforen
- Erstellung von Standard-Unterforen fuer Hauptkategorien
- Ueberschreib-Modus (Aktualisierung bestehender Eintraege anhand Alias)
- Deutsche Umlaut-Behandlung bei Alias-Generierung (ae, oe, ue, ss)
- Schritt 2b: Themen-/Beitrags-Import
- Jahresbasierte Auswahl (Checkboxen)
- AJAX-Vorschau der Anzahl zu importierender Themen und Antworten
- Import von Themen mit Inhalt, Ansichten, Sticky-Status, Lock-Status
- Import von Antworten mit Zuordnung zu Themen
- Automatische Erstellung einer "Importiert"-Fallback-Kategorie
- Neuberechnung aller Zaehler nach Import
8.8.2 phpBB3-Import
- Import von Kategorien/Foren, Themen, Beitraegen und Benutzerverknuepfungen
9. Konfigurationsoptionen
9.1 Anzeige-Einstellungen
| Einstellung | Standard | Bereich |
|---|---|---|
| Beitraege pro Seite | 20 | 5-100 |
| Themen pro Seite | 25 | 5-100 |
| Statistiken anzeigen | Ja | Ja/Nein |
9.2 Farb-Anpassung (8 Farbfelder)
| Einstellung | Standard |
|---|---|
| Primaerfarbe | #2563eb |
| Sekundaerfarbe | #1e40af |
| Akzentfarbe | #0ea5e9 |
| Hintergrundfarbe | #f8fafc |
| Kartenfarbe | #ffffff |
| Textfarbe | #1e293b |
| Gedaempfte Textfarbe | #64748b |
| Rahmenfarbe | #e2e8f0 |
Die Farben werden als CSS Custom Properties (Variablen) inline eingefuegt und wirken sich auf das gesamte Forum-Design aus.
9.3 Premium-Einstellungen
| Einstellung | Standard |
|---|---|
| Premium aktiviert | Nein |
| Info-Seite ausblenden | Nein |
| Powered-By ausblenden | Nein |
| EasyDiscuss-Import aktivieren | Nein |
9.4 Berechtigungen
- Standard-Joomla-ACL-Regeln fuer komponentenweite Zugriffsrechte
10. Sicherheit
10.1 Zugriffsrechte und Berechtigungen
- Nur angemeldete Benutzer koennen:
- Themen erstellen
- Antworten schreiben
- Profile bearbeiten
- Danke vergeben
- Nur eigene Inhalte koennen bearbeitet und geloescht werden (Eigentuemercheck)
- Moderatoren koennen alle Beitraege bearbeiten und loeschen
- Administratoren haben Vollzugriff auf alle Inhalte und Verwaltungsbereiche
- Admin-Bereich nur fuer Benutzer mit Admin- oder Super-Admin-Rolle zugaenglich
10.2 Datensicherheit
- CSRF-Token-Schutz auf allen Formularen und Aktionen
- XSS-Schutz durch konsequente Verwendung von htmlspecialchars() auf allen Benutzerausgaben
- Sichere Passwort-Speicherung (ueber Joomla-System)
- SQL-Injection-Schutz durch parametrisierte Abfragen und Datenbankescaping
- Sichere Datei-Upload-Pruefung (Whitelist der erlaubten Dateitypen und Groessenbeschraenkung)
- Sichere Dateinamen-Generierung bei Uploads (MD5-Hash)
- Index.html-Sicherheitsdateien in Upload-Verzeichnissen
11. Mehrsprachigkeit
11.1 Unterstuetzte Sprachen
- Deutsch (de-DE) -- vollstaendig
- Englisch (en-GB) -- vollstaendig
11.2 Umfang der Uebersetzungen
- Backend/Administration: 163 Sprachstrings (Dashboard, CRUD-Operationen, Import-Assistent, Premium-Bereich, Konfigurationslabels, Fehlermeldungen)
- Frontend/Website: 174 Sprachstrings (Forum-Navigation, Authentifizierung, Themen-/Beitrags-Verwaltung, Dateianhang, Benutzerprofile, Suche, Captcha, Danke-System)
- Alle Oberflaechen-Texte, Fehlermeldungen, Erfolgsmeldungen und Formular-Labels sind uebersetzbar
12. Technische Merkmale
12.1 Joomla-Integration
- Vollstaendig MVC-basierte Architektur (Model-View-Controller)
- Namespace-Unterstuetzung (Joomla\Component\ModernForum)
- Kompatibel mit Joomla 5 und 6
- Native Joomla-Benutzerverwaltung und -Authentifizierung
- Joomla-Menue-Integration fuer alle Ansichten
- Joomla-Editor-Integration (WYSIWYG) fuer Inhalte
- Joomla-ACL-Berechtigungssystem
- Joomla-Update-Server-Integration fuer automatische Aktualisierungen
- Installations-Skript mit Systemvoraussetzungspruefung (PHP 8.1+, Joomla 5.0+)
12.2 Responsive Design
- Optimiert fuer alle Bildschirmgroessen (Desktop, Tablet, Mobil)
- CSS-Breakpoint bei 768px fuer mobile Anpassungen:
- Vertikales Beitragslayout (Autor ueber Inhalt statt nebeneinander)
- Gestapelte Formular-Aktionen
- Zentriertes Profillayout
- Angepasste Suchfeld-Breiten
- Mobile-freundliche Navigation mit Hamburger-Menue
12.3 Design und Darstellung
- CSS Custom Properties fuer durchgaengiges Theming
- System-Schriftart-Stack (-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, etc.)
- Max-Breite-Container (1200px) mit zentriertem Layout
- Kategorie-Karten mit farbigem linken Rand und Gradient-Kopfzeile
- Hover-Effekte auf interaktiven Elementen
- Farbkodierte Badges fuer Rollen (Admin=rot, Moderator=blau, Benutzer=grau)
- Farbkodierte Status-Badges (Aktiv=gruen, Gesperrt=rot, Angeheftet=gelb, Gesperrt=grau)
- Dateityp-spezifische Icon-Farben (PDF=rot, DOC=blau, Bild=gruen)
12.4 Performance
- Effiziente Datenbankabfragen mit JOINs statt Einzelabfragen
- Gecachte Zaehler auf Unterforen (Themen-/Beitrags-Anzahl, letzter Beitrag) und Themen (Antwortenzahl, letzte Antwort)
- Seitenweise Ausgabe (Pagination) auf allen Listenansichten
- Parallele Datenbankabfragen wo moeglich (Promise.all)
- View-Count-Tracking ohne zusaetzliche Seitenladung
12.5 Datenbank
7 Tabellen:
1. #__modernforum_categories -- Kategorien mit Titel, Beschreibung, Farbe, Alias, Reihenfolge, Status
2. #__modernforum_subforums -- Unterforen mit Kategorie-Zuordnung, gecachten Zaehlerstaenden
3. #__modernforum_topics -- Themen mit Unterforum-Zuordnung, Sticky/Lock-Status, View-Counter, Antwortenzaehler
4. #__modernforum_posts -- Beitraege/Antworten mit Themen-Zuordnung, Bearbeitungsverfolgung
5. #__modernforumuserprofiles -- Erweiterte Benutzerprofile (Avatar, Signatur, Standort, Website, Zaehler)
6. #__modernforum_attachments -- Dateianhang zu Themen oder Beitraegen
7. #__modernforum_thanks -- Danke-/Like-Eintraege mit Inhaltstyp, Inhalts-ID und Benutzer-ID (Unique Constraint)
13. Menue-Eintraege
Verfuegbare Ansichten fuer Joomla-Menue-Eintraege
| Ansicht | Beschreibung |
|---|---|
| Forum-Uebersicht | Zeigt alle Kategorien mit ihren Unterforen und Forum-Statistiken |
| Alle Themen | Listet alle Themen aller Unterforen sortiert nach Datum mit Pagination |
| Einzelnes Unterforum | Zeigt alle Themen eines bestimmten Unterforums |
| Einzelnes Thema | Zeigt ein bestimmtes Thema mit allen Antworten |
| Benutzerprofil | Zeigt die Profilseite eines Benutzers |
| Suche | Zeigt die Suchseite mit Ergebnissen |
14. Administrations-Menue
| Menue-Eintrag | Beschreibung |
|---|---|
| Dashboard | Statistiken, neueste Aktivitaeten, Schnellzugriff, Premium-Bereich |
| Kategorien | Verwaltung aller Forum-Kategorien |
| Unterforen | Verwaltung aller Unterforen |
| Themen | Verwaltung aller Themen |
| Benutzer | Uebersicht der Benutzer mit Forum-Aktivitaet |
| Info | Entwickler-Kontakt und Spendenmoeglichkeit |
15. Versionshistorie
| Version | Aenderungen |
|---|---|
| 1.0.0 | Erstveroeffentlichung: Kategorien, Unterforen, Themen, Beitraege, Benutzerverwaltung, Mehrsprachigkeit (DE/EN) |
| 1.0.1 | Kunena-Import-Funktion |
| 1.0.2 | Themenbearbeitung fuer Themenersteller, Joomla Update-Server-Integration |
| 1.0.3 | Dateianhang-System (Upload, Download, Verwaltung) |
| 1.0.4 | Anhang-Ordner-Erstellung bei Installation |
| 1.0.5 | Verbesserung der Datei-Upload-Verarbeitung |
| 1.0.6 | Verbessertes Beitrags-/Antwort-Styling |
| 1.0.7 | Anhangsverwaltung im Backend-Themeneditor |
| 1.0.8 | Benutzerprofilseite mit Avatar-Upload, Profilbild-Anzeige in Themen und Beitraegen, klickbare Benutzernamen |
| 1.0.9 | Mathe-Captcha fuer Themenerstellung und Antworten, Aktualisierungsbutton fuer neue Aufgaben |
| 1.1.0 | Mathe-Captcha fuer Registrierung |
| 1.1.1 | Performance- und Stabilitaetsverbesserungen, Code-Optimierung |
| 1.1.2 | Info-Seite im Admin-Backend mit Entwickler-Kontaktinformationen und Spenden-Link |
| 1.1.3 | Premium-Bereich mit Code-Aktivierung (Branding ausblenden, Import aktivieren, Info-Seite ausblenden) |
| 1.1.4 | Danke-/Like-System fuer Themen und Beitraege (Toggle, AJAX, Zaehler, Benutzerliste) |
Modern Forum
- Version:
- 1.1.5
- Developer:
- Mertsch-Web
- Last updated:
-
Feb 21 2026
2 hours ago - Date added:
- Feb 19 2026
- License:
- GPLv2 or later
- Type:
- Free download
- Includes:
- c
- Compatibility:
- J5 J6
Share