=== Thenine Logistic === Contributors: thenine Tags: woocommerce, order-management, logistics, oms, inventory Requires at least: 5.0 Tested up to: 6.9 Requires PHP: 7.4 Stable tag: 1.0.0 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Requires Plugins: woocommerce Professional WordPress Order Management System (OMS) integrated with WooCommerce. Features custom login page, modern dashboard. == Description == Thenine Logistic is a professional WordPress plugin that provides a complete Order Management System (OMS) integrated with WooCommerce. It features a modern admin dashboard, custom login page, and full WordPress authentication integration. = Key Features = * Order Management System (OMS) - Complete order management interface * WooCommerce Integration - Seamlessly syncs with WooCommerce orders * Modern Admin Dashboard - Clean and intuitive interface * Custom Login Page - Professional login interface * Package Management - Track and manage order packages * Order Tracking - Built-in tracking shortcode for customers * Client Management - Manage clients and their orders * AJAX-powered - Fast, responsive interface without page reloads * Translation Ready - Full i18n support * Security First - Nonces, sanitization, and capability checks = Requirements = * WordPress 5.0 or higher * PHP 7.4 or higher * WooCommerce plugin (required) == Installation == = Automatic Installation = 1. Go to Plugins > Add New in your WordPress admin 2. Search for "Thenine Logistic" 3. Click "Install Now" 4. Click "Activate" 5. Ensure WooCommerce is installed and activated = Manual Installation = 1. Upload the `logistic` folder to the `/wp-content/plugins/` directory 2. Activate the plugin through the 'Plugins' menu in WordPress 3. Ensure WooCommerce is installed and activated = After Installation = 1. The plugin will automatically create required database tables 2. Access the OMS dashboard from the WordPress admin menu 3. Configure settings from Logistic > Settings == Frequently Asked Questions == = Does this plugin require WooCommerce? = Yes, this plugin requires WooCommerce to be installed and activated. The plugin will not activate if WooCommerce is not present. = What is the minimum WordPress version? = WordPress 5.0 or higher is required. = What is the minimum PHP version? = PHP 7.4 or higher is required. = Can I customize the login page? = The login page is handled by the plugin's template system. Customization options are available through the Logistic Pro version. = Is this plugin translation ready? = Yes, the plugin is fully translation ready with text domain 'logistic'. Translation files can be placed in the `languages/` directory. = Does the plugin create database tables? = Yes, the plugin creates several database tables for orders, packages, clients, and audit logs. All tables use the `wp_logistic_` prefix. = Can I uninstall the plugin and remove all data? = Yes, when you uninstall the plugin, it will remove all database tables and options. Make sure to backup your data before uninstalling. == Screenshots == 1. OMS Dashboard - Main order management interface 2. Order Detail Screen - Detailed order information 3. Packages Management - Track and manage packages 4. Custom Login Page - Professional login interface == Changelog == = 1.0.0 = * Initial release * Order Management System (OMS) * WooCommerce integration * Package management * Order tracking shortcode * Client management * Modern admin dashboard * Custom login page * Full translation support == Upgrade Notice == = 1.0.0 = Initial release of Logistic plugin. == Development == = Hooks & Filters = The plugin provides many hooks for extensibility: *Action Hooks:* * `logistic_loaded` - Fired when plugin is loaded * `logistic_activated` - Fired when plugin is activated * `logistic_deactivated` - Fired when plugin is deactivated * `logistic_uninstall` - Fired when plugin is uninstalled *Filters:* * `logistic_login_url` - Filter login URL * `logistic_login_redirect` - Filter redirect URL after login * `logistic_login_error` - Filter error messages * `logistic_sanitize_settings` - Filter settings when saving == Support == For support, please visit the [WordPress.org support forums](https://wordpress.org/support/plugin/logistic/). == Additional Information == = Database Structure = The plugin creates the following database tables (all prefixed with `wp_logistic_`): * `orders` - Stores order information synced from WooCommerce * `order_items` - Stores individual items within orders * `packages` - Tracks packages associated with orders * `clients` - Manages client/customer information * `fulfillment_orders` - Handles fulfillment workflow * `pack_tasks` - Package packing tasks * `pick_tasks` - Inventory picking tasks * `pick_task_items` - Items in picking tasks * `shipments` - Shipping and tracking information * `inventory` - Inventory management * `locations` - Warehouse and storage locations * `warehouses` - Warehouse information * `reservations` - Inventory reservations * `audit_logs` - Complete audit trail of all changes All tables are automatically created during plugin activation and removed during uninstallation. = API & Integration = The plugin integrates seamlessly with WooCommerce: * Automatic order synchronization from WooCommerce * Real-time order status updates * Package tracking integration * Client management linked to WooCommerce customers = Shortcodes = * `[thenlo_oms_tracking]` - Displays order tracking form for customers. Supports manual entry and QR code scanning (when QR library is available). = User Capabilities = The plugin uses WordPress capabilities system: * `manage_logistic` - Main capability to access Logistic features * `manage_logistic_orders` - Manage orders * `manage_logistic_packages` - Manage packages * `manage_logistic_clients` - Manage clients These capabilities are automatically assigned to administrators on plugin activation. = Performance Considerations = * Database queries are optimized with proper indexing * AJAX-powered interface reduces page reloads * Audit logs are stored efficiently with JSON metadata * Caching-friendly architecture = Security Features = * All user inputs are sanitized and validated * SQL queries use prepared statements * Nonce verification for all form submissions * Capability checks for all admin functions * Output escaping for all displayed data = Compatibility = * WordPress: 5.0+ * PHP: 7.4+ * WooCommerce: Latest stable version * MySQL: 5.6+ / MariaDB: 10.0+ = Migration System = The plugin includes a robust migration system that automatically handles database schema updates. Migrations run automatically on plugin activation and updates. = Extensibility = The plugin is built with extensibility in mind: * Action hooks for plugin lifecycle events * Filters for customizing URLs, redirects, and error messages * Repository pattern for easy data access * Service layer for business logic * Provider interface for shipping integrations = Development = For developers, the plugin follows WordPress coding standards: * PSR-4 compatible autoloading structure * Object-oriented architecture * Comprehensive error handling * Full WordPress Coding Standards compliance == External Services == This plugin optionally uses third-party shipping API services for shipping label generation and tracking. === Shippo API === * **Service:** Shippo (https://goshippo.com) * **Purpose:** Generate shipping labels and track packages (optional feature) * **When used:** Only when Shippo provider is configured and API key is provided in plugin settings * **Data sent:** Shipping address, package dimensions, weight, carrier information * **Privacy Policy:** https://goshippo.com/privacy/ * **Terms of Service:** https://goshippo.com/terms/ * **Note:** This is an optional integration. The plugin works fully without Shippo. Shippo integration requires a Shippo account and API key. === ShipStation API === * **Service:** ShipStation (https://www.shipstation.com) * **Purpose:** Generate shipping labels and track packages (optional feature) * **When used:** Only when ShipStation provider is configured and API credentials (API key and API secret) are provided in plugin settings * **Data sent:** Shipping address, package dimensions, weight, carrier information, order details * **Privacy Policy:** https://www.shipstation.com/privacy-policy/ * **Terms of Service:** https://www.shipstation.com/terms-of-service/ * **Note:** This is an optional integration. The plugin works fully without ShipStation. ShipStation integration requires a ShipStation account and API credentials. == Source Code for Minified Libraries == This plugin includes minified JavaScript libraries. The source code for these libraries is publicly available: === jQuery Vector Map (jvectormap) === * **Library:** jvectormap (jQuery Vector Map) * **Minified file:** `assets/libs/jvectormap/jquery-jvectormap.min.js` * **Source code:** Available at https://github.com/bjornd/jvectormap * **License:** MIT License * **Note:** This library is used for displaying interactive maps in the admin dashboard. === SimpleBar === * **Library:** SimpleBar (Custom scrollbar) * **Minified file:** `assets/libs/simplebar/dist/simplebar.min.js` * **Source code:** Available at https://github.com/grsmto/simplebar * **License:** MIT License * **Note:** This library is used for custom scrollbar styling in the admin interface. == Credits ==