Skip to content

Conversation

@brokep
Copy link

@brokep brokep commented Jan 10, 2024

mysql is no longer included in the repos so I have added mariadb & mariadb-server in the installation requirements.

@brokep
Copy link
Author

brokep commented Jan 10, 2024

mysql is no in the repo so i have added the proper replacement, mariadb & mariadb-server

Copy link
Author

@brokep brokep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the packages needed to compile/run magm.

@brokep brokep changed the title adding mariadb mariadb-server adding mariadb mariadb-server, upodated magmad install script Feb 12, 2025

# The DKIM key file. Leave commented out to generate a new key and print the associated DNS record.
# DKIMKEY="/root/dkim.example.com.pem"
# DKIMKEY="/root/dkim.example.co m.pem"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change is not reflected in the commit message.

brokep and others added 14 commits January 7, 2026 14:26
…t bugs.

Frontend changes:
- Add send() method to compose model calling messages.send API
- Add draft auto-save to localStorage every 60 seconds
- Add form data collection and validation in compose view
- Add loading spinner CSS for send button state

Installation script fixes:
- Fix MySQL and logrotate config heredoc syntax
- Fix invalid iptables -P command (split into separate commands)
- Fix undefined DIMEFILE variable in DIME key generation
- Fix config file redirect overwrite bug in magmad.config

Schema dump fix:
- Remove duplicate --user flag in mysqldump command

Add Docker testing infrastructure for installation script validation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Implement file attachment upload with progress tracking in compose view
- Add multiple file selection support with XHR-based upload
- Include attachment delete functionality with API integration
- Fix portalUrl to use real endpoint (/portal/camel) by default
- Allow mock interface override via window.MAGMA_USE_MOCK flag
- Update TODO.md to reflect completed composing features

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Build improvements:
- Add package.json with terser, eslint, glob dependencies
- Add Node.js build script with minification and source maps
- Support development and production build modes
- Generate manifest.json with content hashes for cache busting

Security fixes:
- Fix XSS in dialog messages using jQuery .text() method
- Add DOMPurify sanitization for help pages and email body
- Validate ad URLs to block javascript: protocol attacks
- Replace eval() with JSON.parse() in static.html.js
- Fix template XSS using safe encoding in contactInfo and dictionary
- Add CSRF token support with X-CSRF-Token header on all AJAX calls
- Add X-Requested-With header for additional CSRF protection
- Add Content Security Policy meta tag to index.html
- Add X-Frame-Options, X-Content-Type-Options headers

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Build system:
- npm install works with terser, eslint, glob
- Development build: concatenates JS (346 KB)
- Production build: minifies JS (126 KB, 64% reduction)
- Source maps generated for debugging
- manifest.json with content hashes for cache busting

Library management:
- Documented current versions in package.json
- jQuery 1.6.2pre, jQuery UI 1.8.10, DataTables 1.7.6
- Created update-libs.js script for safe library updates
- Added .gitignore for node_modules

Test coverage:
- Updated test.html with proper structure
- Added compose model tests (init, send, attachments, drafts)
- Added folders model tests (load, add, rename)
- Added security tests (XSS escaping, CSRF headers, session)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implement new button system with consistent API supporting:
- Multiple layouts: icon-text, icon, text, shortcut
- Button types: standard, toggle, dropdown
- States: default, hover, active, disabled, pending
- Button groups with collective operations

Includes CSS styles with primary/danger variants and comprehensive
QUnit tests for all button functionality.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implement folder manager with:
- jQuery UI sortable integration for drag-to-reorder folders
- Folder order tracking and persistence API
- Delete confirmation dialogs
- Improved edit mode with visual feedback and instructions
- Comprehensive CSS for folder list, edit mode, and sortable states

Also adds:
- dialog.confirm() method for confirmation dialogs
- session.clear() method for session management
- Folder manager tests for all new functionality

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implement comprehensive tag management system with:
- Tag creation UI with input field and autocomplete
- Tag color assignment with 18-color palette
- Color persistence via localStorage
- Tag removal functionality with X button
- Common tags extraction for multi-message selection
- Contrast color calculation for text readability
- Tag list component with click/remove callbacks

Includes complete CSS styling for:
- Tag elements with color support
- Tag input with suggestions dropdown
- Color picker with swatch grid
- Tag lists in message view and toolbar
- Tag filter bar for narrowing results
- Responsive layout adjustments

Adds comprehensive QUnit tests for all tag functionality.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implement comprehensive compose utilities:
- Email validation with RFC 5322 regex
- Multiple email parsing (comma/semicolon separated)
- Typo detection with domain suggestions (gmail, yahoo, etc.)
- Levenshtein distance for fuzzy matching

Form validation features:
- Required field validation
- Max recipients limit
- Subject length validation
- Visual error feedback with suggestions
- Blur-triggered validation

UI enhancements:
- Draft status indicator (saving/saved/error states)
- Character counters with warning/danger states
- Recipient chip input with add/remove
- Keyboard shortcuts support (Ctrl+Enter, Ctrl+S)

Includes comprehensive CSS styling and 30+ QUnit tests.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…se 6).

Implements a full-featured settings panel system including:
- Multiple input types: toggle, checkbox, dropdown, text, number, textarea, email, password, radio, color
- Info tooltips with click-to-show behavior
- Default value handling and change tracking
- Form validation (required fields, custom validators)
- Save/Cancel/Reset functionality
- Section grouping for organizing settings
- Responsive design for mobile support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…e 7).

Implements comprehensive contact management including:
- CRUD operations: New, Edit, Copy, Delete contacts
- Contact edit form with field validation (name, email, phone, etc.)
- Read-only contact view display
- Move/Copy dialog for organizing contacts across folders
- Selection manager for multi-select operations
- Sort controls (by name, email, company)
- Toolbar integration for enabling/disabling actions based on selection
- Collapsible form sections (Chat/IM fields)
- XSS protection via HTML escaping
- Responsive design for mobile support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implements comprehensive alert/notification system including:
- Multiple alert types: system, warning, error, info, success
- Notification badge with unread count and pulse animation
- Toast notifications with auto-dismiss and progress bar
- Alerts panel with acknowledge/dismiss functionality
- Inline alerts for embedding in pages
- Time formatting (just now, X minutes ago, etc.)
- Alert history and management
- Pause-on-hover for toasts
- XSS protection via HTML escaping
- Responsive design with mobile-optimized panel

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implements comprehensive log viewing system including:
- Multiple log types: statistics, security, contacts, mail
- Log type tabs with icons for navigation
- Expandable log entries with detailed view
- Filters: search, severity level, date range
- Toolbar with refresh, auto-refresh, and export
- Pagination with page size controls
- Statistics dashboard with grid layout
- Severity badges with color coding
- Outcome badges for mail delivery status
- CSV export functionality
- Auto-refresh with configurable intervals
- XSS protection via HTML escaping
- Responsive design for mobile

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…e 10).

- Create search-manager.js with quick search, advanced search, filter rows
- Add search history and saved searches with localStorage persistence
- Implement search results display with pagination and selection
- Add search suggestions dropdown
- Support multiple filter types: text, date, size
- Create search.css with responsive styling
- Add comprehensive test suite for search functionality

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…e 11).

- Create help-system.js with navigation, topic list, and content viewer
- Add keyboard shortcuts panel with default mail shortcuts
- Implement FAQ panel with expandable question/answer items
- Add quick tips widget with auto-rotation
- Create getting started guide with step-by-step onboarding
- Implement contextual help tooltips
- Add help search functionality
- Create help.css with responsive styling
- Add comprehensive test suite for help components

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants