Changelog
Need guidance on updating the script? Refer to our upgrade instructions.
Version 2.2.0 - 2024-08-01
- Add rounding of points to loyalty card rules
- Make textarea rows attribute configurable via Blade attributes
- Add info box for alternative QR scanning instructions
Version 2.1.0 - 2024-06-20
- Refactor RouteServiceProvider and bootstrap files for Laravel 11 best practices
- Add RouteServiceProvider to ensure API routes are registered
Version 2.0.0 - 2024-06-12
Due to the drastic restructuring of Laravel 11 files and the nature of upgrading this script, it is not possible to do this backwards compatible.
Follow the steps here to upgrade to Reward Loyalty v2.
We are pleased to announce the release of Reward Loyalty version 2.0. This major update brings numerous enhancements, improvements, and new features to provide a better experience. Below is a comprehensive list of the changes and updates:
Core updates:
- Updated to Laravel 11: Upgraded to Laravel version 11 for enhanced security and performance.
- Library updates: All NPM and Composer libraries updated to latest versions.
- Refactored libraries: Non-Laravel 11 compatible libraries rewritten and integrated.
New features:
- OpenAI integration: Implemented OpenAI and compatible APIs (LM Studio, Ollama) for advanced partner features.
- RTL support: Added Right-to-Left (RTL) support.
- Arabic language support: Included Arabic language for demonstration purposes.
- Wallet for members: Introduced a Wallet feature for an overview of all saved cards.
User interface improvements:
- Enhanced member UI: Improved member user interface for better usability.
- Expired loyalty cards: Improved logic flow for handling expired loyalty cards.
- Improved translations: Comprehensive review and enhancement of all translations, including English.
Technical enhancements:
- Issue resolution: Fixed multiple minor issues for better stability.
- Code refactoring: Refactored codebase for maintainability and readability.
- HTML reformatting: Reformatted HTML for better structure.
- Performance improvements: Optimized performance and speed.
Miscellaneous:
- Other improvements: Numerous other enhancements and updates to improve overall functionality and user experience.
We hope you enjoy the new features and improvements in Reward Loyalty 2.0. Thank you for your continued support! 🚀
Version 1.33.1 - 2024-05-04
- Handle possible null values in card meta retrieval
Version 1.33.0 - 2024-05-03
- Make rounding of points optional in loyalty card rules, enabling new earning strategies
Version 1.32.0 - 2024-03-13
- Increase loyalty card currency digits to 7 for better currency compatibility
- Add info box advising use of phone's camera for QR scanning issues
- Update check icon to enhanced version
- Update README for PHP version requirement to 8.2.0
Version 1.31.1 - 2024-02-12
- Remove initial element handling in relation syncing
- Add .gitignore for ezyang/htmlpurifier library
Version 1.31.0 - 2024-02-01
PHP 8.2 is required as of this update
- Updated PHP dependencies to their latest versions
- Updated JavaScript and CSS libraries to their latest versions
- Added UUID-based IDs trait for testing latency issues
- Update .htaccess to redirect /public/ URLs and clean up access paths
Version 1.30.0 - 2023-12-12
- Add expiration date filter to active rewards queries
- Integrate member transactions overview into admin dashboard
Version 1.29.0 - 2023-10-23
- Updated JavaScript and CSS libraries to their latest versions
- Add I18nMiddleware to API middleware for i18n support
- API scheme reference update
- Update 401 response refs for admin, member, and partner to UnauthenticatedResponse
- Update getMemberBalance response format and corresponding OpenAPI doc
Version 1.28.0 - 2023-09-21
- Major API documentation improvements
- Refactor API docblocks and documentation for clarity and consistency
Version 1.27.0 - 2023-09-20
- Update API documentation
- Add API endpoints for admin to list, get, and update partners
- Implement admin authentication functionalities in API
- API add feature to update authorized partner details
- Update API
User is not active
response message - Modify auth middleware to return
Unauthorized
message instead of redirect - Add
hiddenForPublic
attribute to Admin model - Extend check for available languages to prevent 500 error
- Remove logout method from API middleware to prevent error
- Set name for
Identifier
column in member export - Enhance Snowflake ID generation with concurrency handling and retry mechanism
Version 1.26.1 - 2023-09-13 (2)
- Display expired/used transactions at member card
- Fix backend reward balance check
Version 1.26.0 - 2023-09-13 (1)
- Fixed reward claim issue when balance matches cost
- Add bottom margin to mobile side navigation
- Update admin, partner and staff auth controller to validate intended URL segment
- Move form element tooltips outside labels for mobile compatibility
- Refine rewards list styling
- Add existence check for reward before processing transaction reversal
- Built project assets using
npm run build
- Update readme
Version 1.25.0 - 2023-09-07
- Refactor analytics and implement points reversal logic
- Remove 'src' attribute from image to prevent ERR_UNKNOWN_URL_SCHEME when claiming reward
Version 1.24.0 - 2023-09-06
- Add feature for partners to delete last transaction added by staff for a member
- Add
rel="nofollow"
andtarget="_blank"
to card contact buttons
Version 1.23.1 - 2023-09-05
- Remove dot (.) from registration email to avoid password confusion
- Remove
console.log
debug statements
Version 1.23.0 - 2023-09-04
- Set
Active
orDeactivated
for cards in analytics overview - Update translation files
- Style tweaks for analytics and hide
View on website
link for inactive cards - Add
Club
label to analytics overview and make design tweaks - Update default loyalty card design colors and background image
- Add default value option to DataService for new images
Version 1.22.3 - 2023-09-02 (2)
- Improve analytics overview and details UI clarity
- Fix missing
Edit Card
link in card analytics and tweak UI - Add icons to Icon Component
Version 1.22.2 - 2023-09-02 (1)
- Analytics UI update
Version 1.22.1 - 2023-09-01 (4)
- Ensure analytic dates are always interpreted in local time zone
Version 1.22.0 - 2023-09-01 (3)
- Revamped Analytics: Enhanced charting, UI and data
- Fix correct day of week mapping for SQLite in analytics functions
- Added arrow icons to Icon Component
- Handle non-existent file path in Reward getAspectRatio function
Version 1.21.1 - 2023-09-01 (2)
- Fix correct day of week in analytics queries and remove array index remapping
- Prevent modification of created_at when setting expires_at for adding points
Version 1.21.0 - 2023-09-01 (1)
- Fix 500 errors caused by updated multi-select element
- Update share button from Twitter to X
- Make
updated_by
column optional in DataService and implement in user profiles
Version 1.20.0 - 2023-08-29 (2)
- Updated NPM packages to the latest versions
- Updated composer packages to the latest versions
Version 1.19.0 - 2023-08-29 (1)
- Refactor database migrations
- Add config option to toggle Snowflake IDs for a particular installation
- Replace kra8/laravel-snowflake with custom snowflake trait
Version 1.18.2 - 2023-08-27 (3)
- Optimized migrations and models to use small Snowflake IDs, preventing larger ID casting issues
Version 1.18.1 - 2023-08-27 (2)
- Convert email to lowercase in ResetPasswordRequest
Version 1.18.0 - 2023-08-27 (1)
- Convert email to lowercase in RegistrationRequest and LoginRequest
- Convert email formatted columns to lowercase in DataDefinition
- Implement
HasShortflakePrimary
for shorter URLs, optimized compatibility, and enhanced QR performance - Add
SNOWFLAKE_EPOCH
env variable during installation for fresher IDs - Fix incorrect staff dashboard link redirecting to partner dashboard
Version 1.17.0 - 2023-08-24
- Compile and bundle assets with NPM
- Add cookie consent feature for user preferences
- Refactor analytics tracking with cookie consent integration
- Add setting for auto-login link in registration email
- Cast Snowflake ID to BIGINT for specific MariaDB builds compatibility
- Refine required PHP extension names in installation steps
- Fix typo in configuration file
- Update demo dialog
Version 1.16.1 - 2023-08-21
- Fix member and card filtering by correcting staff transaction queries
- Fix member and transaction filtering by correcting partner and date range queries
Version 1.16.0 - 2023-08-18
- Add API route, functionality and docs for adding points only
- Update
add purchase
API function for compatibility with updated transaction service - Redirect undefined routes to the
redir.locale
route - Add Haitian gourde (HTG) entry to
currencies
table in iso-countries database
Version 1.15.0 - 2023-08-12
- Updated composer packages to the latest versions
- Updated NPM packages to the latest versions
- Demo update
Version 1.14.2 - 2023-08-11
- Optimize camera selection for QR scanner across devices
- Fix duplicated mime type in validation message
- Layout margin correction
Version 1.14.1 - 2023-08-03
- Fix null value for points when staff adds a purchase
Version 1.14.0 - 2023-08-03
- Implement feature to add points without associating a purchase amount
- Add right top QR button in staff dashboard for mobile devices
- Add initial bonus points to analytics
- Fix timezone issue affecting visibility of new cards with default
issue date
- Fix broken image in image upload selector on form validation error
- Implement CSS focus ring for language dropdown across all layouts
- Add margin for account dropdown in member layout
- Update readme
Version 1.13.0 - 2023-08-01
- Implement JavaScript QR code scanner in staff dashboard
- Automatically add
General
club on new partner creation for better flow - Add post-insert callback feature to Data Definition
Version 1.12.0 - 2023-07-19
- Implement one-time consumable signed URLs for reward claim links
- Enhanced user authentication logic in I18nMiddleware so time zone is retrieved from appropriate user
- Removed redundant I18nMiddleware from middleware to optimize performance
Version 1.11.0 - 2023-07-15
- Update API documentation
- Implement card logo functionality
- Implement member logout functionality in API
- Implement partner logout functionality in API
- Add API endpoint for retrieving partner data
- Unified formatting in TailwindCSS configuration
- Reorganized environment variables and added group comments
Version 1.10.0 - 2023-07-14
- Updated money formatting functions to support multiple currencies
- Update API documentation
- Add hiddenForPublic attribute to Staff model
- Update OpenAPI schema for validation responses
- Add balance field to card-related responses
- Implement API endpoint for retrieving logged-in member data
- Implement API logic for processing purchase transactions
- Implement API endpoint to get member balance for a card
Version 1.9.0 - 2023-07-12
- Extend queries to only return API responses with active items
- Extend Partner API with Staff-related endpoints
- Remove unused code block
- Add hiddenForPublic attribute to Staff model
- Define OpenAPI schema for StaffMember model
- Create API routes for Staff functionalities
- Add demo server to OpenAPI Server definitions
- Add API routes and controller for partner clubs
- Add new and fix existing OpenAPI schemas
- Add hiddenForPublic attribute to Club model
- Improve readability and maintainability of API Card controllers
- Implement member registration feature in API
- Refactor locale assignment in request handling for API routes
Version 1.8.0 - 2023-07-10
- Updated NPM packages to the latest versions
- Updated composer packages to the latest versions
- Add check for PHP intl extension in redirectToLocale function
- Add member controllers for authentication and card functions
- Add option to hide columns to CardService
- Add OpenAPI API documentation
- Implement API authentication middleware for members
- Implement API authentication and card routes for members
- Implement API routes for retrieving partner's cards
- Implement API authentication routes for partners
- Implement and configure OpenAPI specifications
- Implement API authentication middleware
- Introduce columns hidden for public property
- Cast ids as strings to circumvent JS max integer issue in API json responses
- Resolve card ownership verification issue
- Add missing column to
personal_access_tokens
table for Sanctum - Exclude API routes from CSRF verification
- Add API guards to auth config
Version 1.7.0 - 2023-07-05
- Implemented UI-based database migrations for admins
- Add hreflang attribute to language selection for SEO enhancement
- Update table used for unique email validation
- Add 'Points redeemed' feature to analytics
- Update readme with database update instructions
Version 1.6.2 - 2023-07-04
- Remove lengthy URL subcopy from email to improve compatibility
- Remove redundant space
- Fix typo in member dashboard route
Version 1.6.1 - 2023-06-23 (2)
- Updated SQL query for MariaDB to handle JSON column extraction correctly
- Redirect users to active language if requested language is inactive
- Update readme
Version 1.6.0 - 2023-06-23 (1)
- Add contact data (website, route, phone) to loyalty cards management and UI
- Fixed auth guard for staff impersonation in partner dashboard
Version 1.5.0 - 2023-06-22
- Implemented option (for admins) to disable the feature for partners to show cards on the homepage
- Fixed issue where related items that required ownership were not queried correctly, causing items to show for wrong users
- Added DataDefinition feature to save to json columns casted as array
- Fixed timezone function where wrong key led to validation issues
- Remove redundant locale config, switch to app.locale
Version 1.4.0 - 2023-06-21
- Add French translation
- Optimize card query: Remove manual expiration filter, enhance performance
- Implement custom not-found messages for cards and rewards instead of generic 404 response
- Set default language to first found language when no current language is available
Version 1.3.0 - 2023-06-20
- Updated CSS for improved handling of long card titles and QR code placement
- Refactored language activation configuration to a separate file (link)
- Removed language name in parentheses for single active language setup
- Added country code fields to forms
- Set English US as the default active language post-installation
Version 1.2.1 - 2023-06-19 (2)
- Implement default timezone fallback for browsers
- Remove IANA-only timezone validation rule
Version 1.2.0 - 2023-06-19 (1)
- Updated NPM packages to the latest versions
- Updated composer packages to the latest versions
- Added German language
- Fixed incorrect default value causing improper locale redirect
- Improved redirect mechanism in LocaleController
Version 1.1.2 - 2023-06-18
- Move local date time formatter to view to avoid errors
- Handle case of user not found in DataDefinition view mode
Version 1.1.1 - 2023-06-17
- Resolve missing
from
input error in member registration
Version 1.1.0 - 2023-06-16
- Introduce
query
type to DataDefinitions and add Loyalty card count to admin partners list - Extend input sanitizer to handle array-based input
- Fix issue with handling empty many-to-many relationships
Version 1.0.7 - 2023-06-14
- Add fix for 'Specified key was too long' error
- Update installation requirements check
Version 1.0.6 - 2023-06-13
- Removed optional PHP extension requirements
Version 1.0.5 - 2023-06-12
- Included Inter font locally, removing CDN dependency
- Allowed null values in
timestamp
columns for optimal compatibility
Version 1.0.4 - 2023-06-11
- Added HTMLPurifier for user input sanitization
- Removed unused files
Version 1.0.3 - 2023-06-10
- Implement white label logo/text functionality
- Enhanced installation process with optimized default values and added configuration option for dark theme logo
- Remove unused database tables
Version 1.0.2 - 2023-06-09
- Composer update
- NPM update packages
- Database structure preparations
- Updated readme
- Added missing installation translation
Version 1.0.1 - 2023-06-08
- Improved reward images visibility on small screens
- Improved Partner seeder
- Added FAQ translations
- NPM update
- Implemented Markdown translations for content pages
- Open terms and privacy links on registration page in new window
- Removed redundant viewport meta tag
- Remove unused Blade component
- Remove unused images
- Enable autofill for Partner and Staff login form upon registration email
- Update blade Form Input component to display value for password fields
- Update RedirectIfAuthenticated for guard-specific dashboard redirection
- Improve member registration with redirect functionality
- Corrected 'reviews' table foreign key reference from 'club' to 'clubs'
- Removed wrong help text
- Added management for all registered members
- After logging in for the first time, redirect to dashboard instead of homepage
- Replaced 'member' with user name on dashboard
- Fixed use of wrong guard when verifying authentication
- Prevent ERR_UNKNOWN_URL_SCHEME error by replacing
about:blank
with empty data URI - Remove unused includes causing error
- Added missing translations
- Improved demo login message UI and content
- Improved error pages layout and content
- Improve redirection after login with intended URLs
- Add session migration
- Enhance visibility of QR view button for loyalty cards
- Minor updates and tweaks for improved user experience
- Correct capitalization error
Version 1.0.0 - 2023-06-02
- Init commit