5.5 KiB
5.5 KiB
Changelog
All notable changes to the Helpdesk Rating Five Stars module will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.0.0] - 2024-11-25
Added
Core Features
- 5-star rating system (1-5 stars) replacing standard 0-3 emoticon system
- Interactive star rating widget with hover effects for web forms
- Clickable star links in email rating requests for one-click feedback
- Automatic migration of existing ratings from 0-3 to 0-5 scale
- Enhanced rating reports and analytics with 0-5 scale calculations
User Interface
- Beautiful star display in backend ticket views (form, tree, kanban)
- Responsive design optimized for mobile and desktop devices
- Accessible UI with keyboard navigation (arrow keys, Enter)
- ARIA labels for screen reader compatibility
- Touch-friendly star sizing for mobile devices
Backend Features
- Extended rating.rating model with 0-5 scale support
- Extended helpdesk.ticket model with star display fields
- Extended helpdesk.ticket.report model for analytics
- Custom rating submission controller
- Duplicate rating prevention with automatic update logic
Email Integration
- Custom email template with 5 clickable star links
- Token-based authentication for secure rating submissions
- Automatic redirect to confirmation page after rating
- Error handling for invalid or expired tokens
Views and Templates
- Enhanced rating views with star display
- Updated helpdesk ticket views with star ratings
- Updated report views with 0-5 scale
- Web rating form template with interactive widget
- Email rating request template
JavaScript Components
- OWL-based star rating widget
- Hover effects showing potential rating
- Click handlers for star selection
- Keyboard navigation support
- Mobile touch event handling
Styling
- SCSS styles for star icons
- Responsive breakpoints for mobile/desktop
- Hover and focus states
- Filled and empty star styles
- High contrast colors for accessibility
Security
- Token-based authentication for rating submissions
- Server-side validation of rating values (1-5 range)
- SQL injection prevention through ORM usage
- Access control for rating modifications
- Audit logging for rating changes
Testing
- Unit tests for rating model
- Unit tests for rating controller
- Unit tests for helpdesk ticket model
- Unit tests for rating migration
- Unit tests for rating views
- Unit tests for rating reports
- Unit tests for security features
- Property-based tests for validation
Documentation
- Comprehensive module documentation (index.html)
- README with installation and usage instructions
- CHANGELOG for version tracking
- Inline code documentation
- Widget demo page
Migration
- Post-install hook for automatic rating migration
- Mapping: 0→0, 1→3, 2→4, 3→5
- Data integrity preservation
- Error handling and rollback mechanism
- Migration logging
Changed
- Rating field range from 0-3 to 0-5
- Rating display from emoticons to stars
- Average rating calculations to use 0-5 scale
- Rating filtering and grouping to use 0-5 scale
- Rating export to include 0-5 scale values
Technical Details
Dependencies
- helpdesk (required)
- rating (required)
- mail (required)
- web (required)
Database Changes
- Modified constraints on rating_rating.rating field
- Added computed fields for star display
- No new tables created
API Compatibility
- Maintains full compatibility with Odoo's rating API
- No breaking changes to rating model interface
- Other modules using rating system continue to function
Performance Optimizations
- Indexed rating field for fast queries
- Computed fields with storage for frequent access
- Batch migration updates (1000 records at a time)
- CSS-based star rendering (no images)
- Lazy loading of JavaScript widget
Fixed
- N/A (initial release)
Deprecated
- N/A (initial release)
Removed
- N/A (initial release)
Security
- Implemented token-based authentication
- Added server-side validation
- Prevented SQL injection through ORM
- Added access control for modifications
- Implemented audit logging
[Unreleased]
Planned Features
- Half-star ratings (0.5 increments)
- Custom star icon upload
- Rating categories (multiple dimensions)
- Advanced analytics and trend analysis
- Rating reminders for unrated tickets
- Rating incentives and gamification
Version History
- 1.0.0 (2024-11-25): Initial release with 5-star rating system
Migration Guide
From Standard Odoo Rating (0-3) to Five Stars (0-5)
The module automatically migrates existing ratings during installation:
- Backup your database before installation
- Install the module from Apps menu
- Migration runs automatically on installation
- Verify migration completed successfully in logs
- Test rating functionality in a few tickets
Migration Mapping:
- 0 (No rating) → 0 (No rating)
- 1 (Unhappy 😞) → 3 (Average ⭐⭐⭐)
- 2 (Okay 😐) → 4 (Good ⭐⭐⭐⭐)
- 3 (Happy 😊) → 5 (Excellent ⭐⭐⭐⭐⭐)
Rollback: If you need to rollback, uninstall the module. Note that ratings will remain in the 0-5 scale and will need manual conversion back to 0-3 if required.
Support
For issues, questions, or feature requests:
- Contact your Odoo administrator
- Review the module documentation
- Check the Odoo server logs
- Consult the source code
Maintained by: Odoo Administrator
License: LGPL-3