Changelog

ประวัติการอัปเดตและการเปลี่ยนแปลงทั้งหมด

Changed

  • Wallet Topup: Expired → Rejected — เปลี่ยนจากสถานะ `expired` เป็น `rejected` เมื่อบิลเติมเงินหมดอายุ - `SmsPaymentService::cleanup()` ตอนนี้ set `STATUS_REJECTED` + `reject_reason` = "หมดเวลาโอนเงิน - ระบบปฏิเสธอัตโนมัติ" แทน `STATUS_EXPIRED` - User เห็นเหตุผลการปฏิเสธชัดเจนบนหน้า topup-status - AJAX polling (`checkTopupStatus`) คืนค่า `reject_reason` ให้ frontend แสดงผลแบบ real-time - Grace period recovery รองรับทั้ง `expired` (เดิม) และ `rejected` ที่มี `reject_reason` ตรงกัน (ใหม่)

Fixed

  • ป้องกันยอดทศนิยมในฟอร์มเติมเงิน — User ไม่สามารถกรอกยอดเงินที่มีจุดทศนิยมได้อีกต่อไป - Frontend: บล็อกปุ่ม `.` และ `,` ด้วย `keydown` listener, ตัดทศนิยมเมื่อ paste, เพิ่ม `inputmode="numeric"` สำหรับมือถือ - Backend: เปลี่ยน validation จาก `numeric` เป็น `integer` ใน `WalletController::submitTopup()`
  • Foreign key constraint — แก้ `created_by=0` และ `approved_by=0` ที่ละเมิด foreign key ใน wallet_transactions และ wallet_topups

Added

  • Initial release of XMAN Studio
  • E-commerce system with shopping cart and order management
  • License key management system with activation tracking
  • Custom software ordering with category separation
  • Line OA integration for automatic order notifications
  • Support ticket system with priority management
  • Admin backend for complete management
  • Comprehensive deployment system with auto-repair capabilities
  • Laravel 11 with Symfony 7.x for PHP 8.3 compatibility
  • Tailwind CSS v4 for modern UI design
  • GitHub Actions workflows for CI/CD, versioning, and deployment

Changed

  • Migrated from Laravel 12 to Laravel 11 for better PHP 8.3 compatibility
  • Updated Symfony packages to v7.x

Fixed

  • Migration execution order to resolve foreign key constraints
  • Tailwind CSS v4 PostCSS configuration
  • Deploy script to accept 'y' for production confirmation
  • Auto-repair capability for migration errors
  • NPM dependencies installation for vite

Security

  • PHP 8.2+ requirement with all security patches
  • Proper input validation and sanitization
  • CSRF protection on all forms
  • SQL injection prevention through Eloquent ORM
AI Assistant
ออนไลน์