fecshop/yii2_fecshop
23.7
Critical · 19 September 2026
217.5k
lines of production code
PHP
with JavaScript
1
measurement over time
What this system is
Fecmall is a multi-platform e-commerce system providing a backend administration interface, a public storefront, and a REST API for third-party integration. The platform enables administrators to manage product catalogs, orders, customers, and CMS content while configuring complex store settings such as payment gateways, caching, and multi-language support. It supports bulk data operations via Excel imports and offers a modular architecture for extensions and custom themes across web and mobile interfaces.
How it got here
2016 — Initial framework and core module development
81 changes.
This period established the foundational architecture of the Fecmall ecommerce platform, introducing the core Yii2 extension structure, database models, and service layer. It implemented the initial configurations and modules for the frontend storefront, admin panel, and API, while adding essential features such as product catalog management, customer authentication, and a one-page checkout system.
2017 — HTML5 storefront and API expansion
78 changes.
This period focused on building a comprehensive HTML5 mobile storefront, including catalog, checkout, and customer modules, alongside a parallel REST API server for headless clients. The work also expanded payment gateway support to include Alipay and WeChat Pay, while significantly overhauling the admin interface with new themes, RBAC refinements, and system management tools.
2018–2019 — Admin configuration and extension management
99 changes.
This period focused on building a comprehensive administrative interface for managing system configurations, including granular control over caching, payment gateways, and multi-store settings. It also introduced features for managing extensions via a dedicated market and generator, alongside bulk data import capabilities for products and categories.
2020–2021 — Admin panel feature expansion
8 changes.
This period focused on expanding the admin panel with dedicated management interfaces for product brands, brand categories, and customer contact messages. It also introduced configuration options for FecShop Analytics and the Farsi locale, while bundling Font Awesome assets locally to resolve HTTPS display issues.
Features
Add Alipay payment configuration UI
A new configuration manager view for Alipay payments has been added to the admin theme. This introduces a dedicated form interface in the admin panel, allowing administrators to manage Alipay-specific settings through a styled dialog with save and cancel actions.
app/appadmin/theme/base/default/config/paymentalipay · high confidence
Add Alipay payment configuration block
Introduces a new admin configuration interface for Alipay payments, allowing administrators to set environment mode (sandbox/product), App ID, Seller ID, RSA keys, and SDK-specific settings like work directory and development mode.
app/appadmin/modules/Config/block/paymentalipay · high confidence
Add Alipay payment controller for standard checkout flow
Introduces the Alipay Standard Controller (\StandardController\) in the appfront Payment module, enabling users to initiate Alipay payments, handle post-payment redirects, and process Instant Payment Notifications (IPN) from Alipay. The controller exposes three actions: \actionStart\ to prepare the payment redirect, \actionReview\ to handle the return from Alipay and redirect to the success page, and \actionIpn\ to receive and log asynchronous payment notifications.
app/appfront/modules/Payment/controllers/alipay · high confidence
Add AppHTML5 Account configuration form
A new configuration manager file has been added for the AppHTML5 Account settings within the admin theme. This change introduces a form interface that allows administrators to edit and save account configuration details, including support for language attributes and textarea inputs, along with the necessary styling for the dialog layout.
app/appadmin/theme/base/default/config/apphtml5account · high confidence
Add Appfront Home configuration manager view
A new configuration manager view for the Appfront Home settings has been added. This file provides the user interface for managing appfront home configurations, including a form for saving changes and specific CSS styling for the configuration dialog and form elements.
app/appadmin/theme/base/default/config/appfronthome · high confidence
Add Appserver Base Configuration UI
A new configuration interface for Appserver Base settings has been added to the admin theme. This change introduces a form-based UI that allows administrators to view and modify base appserver parameters, including fields for ID, language attributes, and text areas, with standard save and cancel actions.
app/appadmin/theme/base/default/config/appserverbase · high confidence
Add Appserver Catalog configuration UI
The admin interface now includes a dedicated configuration page for Appserver Catalog settings. This change introduces a new form view that allows administrators to edit and save catalog-related parameters through a styled dialog interface with validation and save/cancel actions.
app/appadmin/theme/base/default/config/appservercatalog · high confidence
Add Appserver Store configuration UI
A new configuration interface for Appserver Store settings has been added to the admin theme. This change introduces a form-based UI that allows administrators to view and save Appserver Store configuration data, including fields for store identification and editable attributes, accessible via the admin panel.
app/appadmin/theme/base/default/config/appserverstore · high confidence
Add Customer console module
A new Customer module has been added to the console application. This module extends the base ConsoleModule and configures its controller and block namespaces to reside within the Customer module's directory structure, enabling console-based customer management operations.
app/console/modules/Customer · high confidence
Add Customer module structure for admin panel
The admin panel now includes a new Customer module, providing the foundational controller and module configuration files necessary to manage customer data. This change introduces the \CustomerController\ and \Module\ classes, establishing the routing and layout structure (using \main\_ajax.php\) for this specific section of the admin interface.
app/appadmin/modules/Customer · high confidence
Add Google OAuth 2.0 social login support
The application now supports logging in via Google accounts. This change introduces a new \lib/google\ directory containing the Google API PHP Client library (including OAuth 2.0 authentication, caching, and IO components) and a \Social\ wrapper class that handles the Google sign-in flow, including redirect URI management and user profile retrieval.
lib/google · high confidence
Add HTML5 404 error page template
The apphtml5 theme now includes a dedicated 404 error page view. When a page is not found, users will see a branded error screen with a 404 image, a message stating the page could not be found, and a link to return to the homepage.
app/apphtml5/theme/base/html5/site · high confidence
Add HTML5 app widgets with store-aware caching
New widget classes (Footer, Head, Headers, Menu, Page) are introduced in the apphtml5 module to support the HTML5 storefront. These widgets implement the BlockCache interface, ensuring that cached content is correctly scoped by the current store, language, currency, and application context to prevent data leakage between stores or locales.
app/apphtml5/widgets · high confidence
Add HTML5 article page template
A new view template for the CMS article page has been added to the HTML5 theme. This file defines the layout structure, including the article title, content area, and integration of the flash message widget, establishing the visual presentation for article pages on mobile devices.
app/apphtml5/theme/base/html5/cms/article · high confidence
Add HTML5 catalog search module
Introduces a new Catalogsearch module for the apphtml5 frontend, providing the controller, block logic, and module initialization required to render product search results, handle pagination, and support AJAX-driven product loading and attribute filtering.
app/apphtml5/modules/Catalogsearch · high confidence
Add HTML5 customer address management views
The HTML5 theme now includes dedicated views for managing customer addresses. Users can view their saved addresses on the address book page, which lists name, full address details, and default status, and perform actions to edit or delete entries. A new edit form allows users to update contact information including email, name, phone, country, state, city, street lines, and zip code, with CSRF protection and dynamic country-based state selection.
app/apphtml5/theme/base/html5/customer/address · high confidence
Add HTML5 mobile search results page with infinite scroll and filtering
The HTML5 mobile theme now includes a dedicated search results view (catalogsearch/index/index.php) that supports infinite scrolling for paginated product lists, a popup-based filter interface for refining by attributes and price, and lazy-loaded images. A corresponding toolbar component (toolbar.php) allows users to adjust the number of products displayed per page. This change introduces the mobile-specific search UI structure and client-side behavior for browsing search results on HTML5 devices.
app/apphtml5/theme/base/html5/catalogsearch · high confidence
Add HTML5 payment module with PayPal, Alipay, and WeChat support
Introduces a new Payment module for the apphtml5 (HTML5/WAP) storefront, providing controllers and block logic for PayPal Express and Standard, Alipay Standard, and WeChat JSAPI/H5 payments. This enables users on mobile browsers to complete checkout via these specific gateways, including handling payment initiation, IPN callbacks, and post-payment order confirmation.
app/apphtml5/modules/Payment · high confidence
Add PayPal Express and Standard checkout UI templates for HTML5
This change introduces the HTML5 view templates for PayPal payment processing. It adds the PayPal Express checkout review page, which allows users to confirm billing and shipping addresses, select a shipping method, apply or cancel coupon codes, and add order remarks before placing the order. It also includes the PayPal Standard checkout start page, which displays a redirect form to send customers to the PayPal website to complete the transaction.
app/apphtml5/theme/base/html5/payment/paypal · high confidence
Add PayPal Express and Standard payment controllers
Introduces new \ExpressController\ and \StandardController\ classes in the PayPal payment module to handle Express Checkout and Standard payment flows. These controllers manage the payment initiation (\actionStart\), post-payment review (\actionReview\), cancellation (\actionCancel\), and crucially, the handling of PayPal Instant Payment Notifications (\actionIpn\) to update order statuses. The implementation includes basic XSS mitigation by HTML-encoding POST data received from PayPal before processing.
app/appfront/modules/Payment/controllers/paypal · high confidence
Add PayPal Standard payment integration
Introduces the PayPal Standard payment method for the storefront, adding the \Placeorder\ and \Start\ block classes to handle the checkout flow. The \Start\ class initiates the payment by redirecting users to PayPal (supporting both personal and business account modes), while the \Placeorder\ class processes the return callback, updates the order status upon successful payment, clears the cart, and redirects to the success page or cancels the order if the payment fails.
app/appfront/modules/Payment/block/paypal/standard · high confidence
Add PayPal payment success page template
A new view template for the PayPal payment success flow has been added at app/apphtml5/theme/base/html5/payment/success/index.php. This page displays a confirmation message including the order number, informs the user that a confirmation email will be sent, and provides a 'Continue Shopping' button. It also includes the necessary JavaScript code to track the purchase event.
app/apphtml5/theme/base/html5/payment/success · high confidence
Add WeChat Mini Program API module
Introduces a new \Wx\ module in the appserver to support WeChat Mini Program clients. This includes a module configuration class and controllers for handling the home page (\HomeController\), startup screen (\StartController\), account login (\AccountController\), and helper utilities (\HelperController\). The home controller exposes API endpoints that return configured banners, featured products, hot items, and currency information, while the start controller serves the app's splash screen image and title.
app/appserver/modules/Wx · high confidence
Add WeChat Pay SDK integration
Introduces the WeChat Pay SDK library (lib/wxpay) to enable JSAPI, native, and micro-payments. This includes API wrappers, configuration classes, SSL certificates for secure transactions, and example scripts for payment flows, order queries, and refunds.
lib/wxpay · high confidence
Add WeChat Pay Standard Controller for PC QR Code Scanning
Introduces a new StandardController for WeChat Pay in the appfront module, enabling PC users to complete payments by scanning a QR code. The controller provides endpoints to initiate the payment flow (actionStart), generate the QR code image (actionQrcode), and verify transaction success via polling (actionTradesuccess). It also includes a legacy actionIpn method, now marked as deprecated, as the new PC scanning flow relies on client-side polling rather than asynchronous IPN callbacks.
app/appfront/modules/Payment/controllers/wxpay · high confidence
Add WeChat Pay configuration block in admin panel
The admin interface now includes a dedicated configuration block for WeChat Pay (paymentwxpay). Administrators can manage credentials for both WeChat Service accounts (App ID, App Secret) and WeChat Mini Programs (App ID, App Secret), as well as merchant platform details (MCH ID, Merchant Key). This allows users to enable and configure WeChat Pay integration directly through the admin settings.
app/appadmin/modules/Config/block/paymentwxpay · high confidence
Add admin UI for managing front-end store configurations
The admin interface now includes a dedicated block for managing front-end store settings. Administrators can view a list of store configurations with columns for ID, key, language, currency, status, and HTTPS enablement, and can filter by status. The edit form allows updating store key, status, language, currency, theme directories, mobile settings (enablement, condition, redirect domain, HTTPS, type), and social login credentials (Facebook and Google).
app/appadmin/modules/Config/block/appfrontstore · high confidence
Add admin configuration block for HTML5 app store settings
Introduces the Manager and Manageredit PHP blocks for the apphtml5store configuration section in the admin panel. This enables administrators to manage HTML5 app store settings through a list view and edit form, supporting fields for store key, status, language, currency, theme directories, Facebook and Google login credentials, HTTPS enablement, and sitemap directory.
app/appadmin/modules/Config/block/apphtml5store · high confidence
Add admin configuration block for customer access token settings
A new Manager block has been added to the appserverbase configuration area, enabling administrators to configure customer access token parameters via the admin interface. This change introduces UI controls for setting the 'Customer AccessToken Timeout' and the 'AccessToken Update Time Limit', allowing users to manage how long tokens remain valid and when they are refreshed during active sessions.
app/appadmin/modules/Config/block/appserverbase · high confidence
Add admin configuration for appserver store languages
Administrators can now configure which languages are associated with the appserver store via a new interface in the admin panel. This change introduces a Manager block and a corresponding view template that allow users to add, edit, or remove language entries (specifying language code and name) and save these settings, which are then stored in the system configuration.
app/appadmin/modules/Config/block/appserverstorelang, app/appadmin/theme/base/default/config/appserverstorelang · high confidence
Add admin configuration for granular front-end page and block caching
The admin interface now includes a new configuration block for managing front-end caching strategies. Administrators can individually enable or disable caching for specific page types (All, Home, Category, Product, Article) and UI components (Head, Header, Menu, Footer blocks) via the appfrontcache settings, allowing for more fine-grained control over performance and content freshness.
app/appadmin/modules/Config/block/appfrontcache · high confidence
Add admin configuration for service storage backends
Introduces a new Config module in the admin panel that allows administrators to configure the storage backend (MongoDB or MySQL) for various system services, including category and product data, product favorites, reviews, articles, static blocks, URL rewrites, newsletters, and error handling logs.
app/appadmin/modules/Config · high confidence
Add admin interface for viewing and managing error logs
The admin panel now includes a dedicated section to display and query system error information. Administrators can view a table of errors containing the ID, category (appfront, apphtml5, appapi, appserver), status code, error message, and creation time. The interface supports filtering by error ID, category, and creation date range, and allows for bulk deletion of selected error records.
app/appadmin/modules/System/block/error · high confidence
Add admin theme templates for customer account, contacts, and newsletter management
New PHP view templates have been added to the admin theme for managing customer data. Specifically, index and edit forms are now available for the customer account list, customer contacts, and newsletter subscriptions. These templates provide the UI structure for listing records, searching, and editing customer information within the admin panel.
app/appadmin/theme/base/default/customer · high confidence
Add app server store configuration block
Introduces a new configuration block for managing app server store settings within the admin interface. This change adds a Manager class that provides a form for editing store-specific attributes, including default language, currency, HTTPS enablement, and social login credentials (Facebook and Google).
app/appadmin/modules/Config/block/appserverstore · high confidence
Add backend configuration interface for Appfront Base settings
A new manager view has been added to the Appfront Base Config section, providing an administrative interface for managing base theme settings. This change introduces a form-based UI that allows administrators to edit and save configuration data via the backend, supporting the management of appfront base parameters.
app/appadmin/theme/base/default/config/appfrontbase · high confidence
Add configuration block for FA (FecShop Analytics) integration
The admin interface now includes a new configuration section for the FA (FecShop Analytics) system, allowing administrators to enable or disable data collection and configure connection details such as the FA domain, website ID, access token, and API timeout settings.
app/appadmin/modules/Config/block/fa · high confidence
Add customer order list, view, and reorder blocks
The Customer module now includes PHP blocks for listing, viewing, and reordering orders. The Index block displays a paginated list of the logged-in user's orders, while the View block shows detailed information for a specific order, both supporting optional breadcrumb navigation. The Reorder block allows users to repurchase items from a previous order by adding them to the cart, with validation to ensure the order belongs to the current user.
app/appfront/modules/Customer/block/order · high confidence
Add customer product favorite list page
The HTML5 theme now includes a dedicated page for viewing a customer's favorite products. This new view renders a table of favorited items, displaying the product image, name, price, and the date the item was added to the favorites list. It also provides a mechanism for customers to remove items from their favorites list directly from this page.
app/apphtml5/theme/base/html5/customer/productfavorite · high confidence
Add default admin theme templates for coupon management
The admin interface for managing coupons now includes dedicated view templates (manager.php and manageredit.php) within the base default theme. These files provide the standard layout for the coupon list view, including search bars and pagination, as well as the form structure for editing coupon details, ensuring consistent styling and functionality for this sales feature.
app/appadmin/theme/base/default/sales/coupon · high confidence
Add frontend widget components with localized caching
New widget classes (Footer, Head, Headers, Menu, Page) are introduced in the appfront area to handle frontend rendering logic. These widgets implement the BlockCache interface, ensuring that cached content is correctly scoped by store, language, currency, and application context to prevent cross-store data leakage. The Headers widget specifically provides navigation data including logout URLs, store information, and logo image URLs, while the Page widget manages pagination logic for product listings.
app/appfront/widgets · high confidence
Add newsletter subscription block with email validation and confirmation
Introduces a new newsletter subscription block (Index.php) that processes email inputs, validates them via HTML encoding, and handles the subscription logic. Users receive a success message and a confirmation email upon successful subscription, or a concatenated error message if the subscription fails (e.g., duplicate email).
app/appfront/modules/Customer/block/newsletter · high confidence
Add product attribute group management interface
The admin panel now includes a new interface for managing product attribute groups. This change introduces a list view for browsing and searching attribute groups, along with an edit dialog that allows administrators to select specific attributes, assign them to the group, and define their sort order within the product configuration.
app/appadmin/theme/base/default/catalog/productattrgroup · high confidence
Add product favorite list block with pagination and breadcrumbs
The product favorite list page now uses a dedicated block class to fetch and display the user's favorited products. This implementation includes pagination support, allowing users to browse their favorites across multiple pages, and adds breadcrumb navigation to the page header. The block also handles retrieving product details and managing the removal of individual favorites from the list.
app/appfront/modules/Customer/block/productfavorite · high confidence
Add product review listing page with pagination
A new template for the customer-facing product review list has been added, allowing users to view their submitted reviews with product images, ratings, summaries, and moderation status (awaiting, refused, or accepted). The page includes a pagination toolbar to navigate through multiple pages of reviews.
app/apphtml5/theme/base/html5/customer/productreview · high confidence
Added Alipay payment integration library
The \lib/alipay\ directory now contains the Alipay AOP SDK (PHP), providing the necessary classes and request models to integrate Alipay payment services. This includes the core \AopSdk.php\ entry point, the \AopClient\ for handling API requests and RSA/RSA2 signatures, and specific request classes for acquiring payments, refunds, and querying trade status.
lib/alipay · high confidence
Added Amqp console module with RabbitMQ queue example
A new Amqp module has been added to the console application, providing a working example for integrating RabbitMQ via the zhuravljov/yii2-queue-amqp library. This includes a custom Queue class for handling AMQP messages, a test job block, and a TestController that demonstrates how to push data to the queue and listen for messages via console commands.
app/console/modules/Amqp · high confidence
Added AppHTML5 Base Configuration Manager
A new configuration manager interface has been added for the AppHTML5 base theme, allowing administrators to manage base settings through the backend. This includes a form for saving configuration data and specific styling for the configuration fields.
app/appadmin/theme/base/default/config/apphtml5base · high confidence
Added AppHTML5 Catalog configuration interface
A new configuration manager file has been added for the AppHTML5 Catalog settings within the default admin theme. This change introduces a web-based form interface that allows administrators to view and save AppHTML5 Catalog configuration attributes via the admin panel.
app/appadmin/theme/base/default/config/apphtml5catalog · high confidence
Added AppHTML5 Payment configuration UI
A new configuration interface for AppHTML5 Payment settings has been added to the admin theme. This change introduces a manager view that renders a form for editing payment configuration fields, including save and cancel actions, along with specific CSS styling for the layout and form elements.
app/appadmin/theme/base/default/config/apphtml5payment · high confidence
Added Appfront Account configuration UI
The admin interface now includes a dedicated configuration page for Appfront Account settings. This change introduces a new form view that allows administrators to edit and save account-related attributes through a styled dialog interface, integrating with the existing translation and request handling services.
app/appadmin/theme/base/default/config/appfrontaccount · high confidence
Added Appfront Payment configuration UI
A new configuration interface for Appfront Payment settings has been added to the admin theme. This change introduces a form-based UI that allows administrators to edit and save payment configuration data, including fields for ID, language attributes, and text areas, with standard save and cancel actions.
app/appadmin/theme/base/default/config/appfrontpayment · high confidence
Added Appserver Account configuration UI
The admin interface now includes a dedicated form for managing Appserver Account settings. This new view allows administrators to edit and save account configuration details through a styled dialog with validation and standard save/cancel actions.
app/appadmin/theme/base/default/config/appserveraccount · high confidence
Added Appserver Cache configuration UI
A new configuration page for Appserver Cache settings has been added to the admin theme. This change introduces a form interface that allows administrators to view and save cache configuration parameters via the admin panel.
app/appadmin/theme/base/default/config/appservercache · high confidence
Added Appserver Home configuration UI
A new configuration page for 'Appserver Home' settings has been added to the admin theme. This change introduces a manager view that renders a form for editing appserver home configuration fields, including save and cancel actions, within the system configuration interface.
app/appadmin/theme/base/default/config/appserverhome · high confidence
Added Appserver Payment configuration UI
A new configuration page for 'Appserver Payment' has been added to the admin theme. This change introduces a form interface that allows administrators to view and save payment-related settings via the 'Appserver Payment Config' fieldset, including save and cancel actions.
app/appadmin/theme/base/default/config/appserverpayment · high confidence
Added BlockCache interface definition
Introduced the \BlockCache\ interface within the \fecshop\\interfaces\\block\ namespace, defining a contract for block caching mechanisms. This interface specifies a constant prefix for cache keys and requires implementing classes to provide a \getCacheKey\ method, enabling consistent cache key generation for block components.
interfaces · high confidence
Added CMS block widget implementations for footer, head, headers, and menu
New widget classes (Footer, Head, Headers, Menu) have been added to the Cms block module, implementing the BlockCache interface to manage caching for these UI components. The Headers widget now provides essential context data such as home URL, current store and language, available stores, and currency information, while the Menu widget retrieves category data. The Head and Footer widgets provide basic caching keys based on language or store/controller/action context, establishing the backend data layer for these frontend sections.
app/appfront/modules/Cms/block/widgets · high confidence
Added ExtensionGii Manager block for system extension configuration
A new Manager block class has been introduced in the System module to handle data preparation for the ExtensionGii interface. This component extracts developer and package information from the provided context and supplies the necessary save URL, enabling the frontend to display the appropriate editing form for system extensions.
app/appadmin/modules/System/block/extensiongii · high confidence
Added Farsi (fa) admin theme configuration view
A new configuration view file for the Farsi (fa) admin theme has been added at app/appadmin/theme/base/default/config/fa/manager.php. This file provides the user interface for managing base configuration settings in the Farsi locale, including form layout, validation, and save/cancel actions.
app/appadmin/theme/base/default/config/fa · high confidence
Added HTML5 cache configuration UI in admin panel
A new configuration interface for AppHTML5 Cache settings has been added to the admin theme. This change introduces a form-based UI that allows administrators to view and save cache configuration parameters via the backend, featuring standard save and cancel actions along with localized labels.
app/appadmin/theme/base/default/config/apphtml5cache · high confidence
Added HTML5 cache configuration block in admin settings
The admin interface now includes a new configuration block for managing HTML5 cache settings. Administrators can enable or disable caching for specific areas including all pages, home, category, product, and article pages, as well as specific HTML blocks like the head, header, menu, and footer. This allows for granular control over which parts of the site are cached to improve performance.
app/appadmin/modules/Config/block/apphtml5cache · high confidence
Added HTML5 one-page checkout view templates
This change introduces the view layer for the HTML5 one-page checkout flow. New template files have been added to render the billing address form (including account creation options), shipping method selection, payment method selection, and the final order review summary with item details and totals.
app/apphtml5/theme/base/html5/checkout/onepage/index · high confidence
Added PayPal configuration interface in admin panel
The admin theme now includes a dedicated configuration page for PayPal payment settings, allowing administrators to input and save PayPal account details and API credentials directly from the backend interface.
app/appadmin/theme/base/default/config/paymentpaypal · high confidence
Added WeChat JSAPI payment support for HTML5 clients
The HTML5 payment flow now supports WeChat JSAPI payments. A new start script has been added to handle the WeChat JSBridge integration, enabling users to initiate payments directly within the WeChat browser environment and redirect to a success URL upon completion.
app/apphtml5/theme/base/html5/payment/wxpayjsapi · high confidence
Added WeChat Pay configuration UI
A new configuration page for WeChat Pay (Wxpay) settings has been added to the admin interface. This change introduces a form that allows administrators to view and save WeChat Pay configuration details, including fields for the payment method's unique identifier and other relevant parameters, accessible via the payment configuration section.
app/appadmin/theme/base/default/config/paymentwxpay · high confidence
Added admin UI templates for Appfront Cache and Service Database configuration
New view templates have been added to the admin theme to support configuration interfaces for Appfront Cache and Service Database settings. These files provide the HTML forms and styling required for administrators to manage these specific system configurations through the backend interface.
app/appadmin/theme/base/default/config/appfrontcache · high confidence
Added admin UI templates for installed extension management
New PHP view templates (manager.php, manageredit.php, managerview.php) have been added to the admin theme's extensioninstalled system section. These files provide the frontend structure for listing installed extensions and editing their configuration details, including search bars, pagination forms, and edit/view dialogs with save and cancel actions.
app/appadmin/theme/base/default/system/extensioninstalled · high confidence
Added admin interface translations for multiple languages
The admin interface now supports localization for German, English, Spanish, French, Italian, Dutch, Portuguese, Russian, and Chinese (Simplified). This change introduces new language files in the app/appadmin/languages directory, providing translated labels for navigation menus, dashboard metrics, product and order management actions, and system configuration options, allowing administrators to interact with the backend in their preferred language.
app/appadmin/languages · high confidence
Added admin resource management views
Introduced new PHP template files for the admin resource manager interface. The 'manager.php' view provides a standardized layout for listing resources, including search bars, pagination, and action toolbars. The 'manageredit.php' view enables editing resource details via a form with save and cancel actions, supporting product-specific edits and multi-language attributes.
app/appadmin/theme/base/default/fecadmin/resource · high confidence
Added admin theme templates for CMS article and static block management
The admin interface now includes dedicated view templates for managing CMS articles and static blocks. New files for the article section (index and edit forms) and the static block section (index and edit forms) have been added to the default admin theme. These templates provide the UI structure for listing, searching, and editing content, with the static block editor specifically including help text for URL placeholders.
app/appadmin/theme/base/default/cms · high confidence
Added appfront language packs for Arabic, German, Spanish, French, Italian, Japanese, and English
New translation files have been added to the appfront language directory for Arabic (ar-AE), German (de-DE), Spanish (es-ES), French (fr-FR), Italian (it-IT), Japanese (ja-JP), and English (en-US). These files provide localized strings for the storefront interface, covering user account management, order history, product browsing, and checkout processes, enabling the application to display content in these specific regional languages.
app/appfront/languages · high confidence
Added category bulk upload interface
The admin interface now includes a new page for uploading category data via Excel files. This feature allows administrators to batch import or update categories by selecting an Excel file, with instructions provided to download a template and place associated images in the correct directory. The system processes the file to add new categories or update existing ones based on the category ID.
app/appadmin/theme/base/default/catalog/categoryupload · high confidence
Added category sort configuration manager
The app admin now includes a new configuration block for managing category sorting settings. This change introduces a Manager class that handles the retrieval, display, and saving of category sort parameters (such as sort key, label, database column, and direction) via the admin interface, allowing users to customize how categories are ordered.
app/appadmin/modules/Config/block/categorysort · high confidence
Added configuration block for HTML5 home page settings
Administrators can now configure specific settings for the HTML5 home page via a new management interface. This change introduces a new configuration block that allows editing of meta title, meta keywords, meta description, and a best feature SKU identifier, enabling better control over the mobile web home page's SEO and featured content.
app/appadmin/modules/Config/block/apphtml5home · high confidence
Added configuration block for best feature SKU
A new admin configuration block has been introduced to manage the 'Best Feature SKU' setting. This change adds a Manager class that provides a user interface for editing this specific attribute, allowing administrators to store and retrieve the value via the store base configuration service.
app/appadmin/modules/Config/block/appserverhome · high confidence
Added console commands for category data synchronization between MySQL and MongoDB
New console controllers have been added to the Category module to facilitate data migration and synchronization between MySQL and MongoDB storage backends. The \MongodatatomysqlController\ provides actions to sync category data from MongoDB to MySQL and initialize parent-child relationships based on original MongoDB IDs. Conversely, the \MysqldatatomongoController\ allows syncing data from MySQL to MongoDB and initializing relationships based on original MySQL IDs. These tools support administrators in managing data consistency when switching or maintaining dual-storage architectures for category information.
app/console/modules/Category · high confidence
Added console module for generating XML sitemaps
A new console module has been introduced to handle the generation of XML sitemaps. This includes a \Module\ class that configures controller and block namespaces, and an \XmlController\ that exposes commands to initiate the sitemap process, retrieve page counts for categories, products, and CMS pages, generate those specific pages, and finalize the sitemap creation.
app/console/modules/Sitemap · high confidence
Added console module for managing URL rewrites
Introduced a new Helper console module containing a UrlrewriteController that provides commands to regenerate URL rewrites for products and categories, retrieve their counts and page numbers, and clear outdated rewrite entries based on a timestamp.
app/console/modules/Helper · high confidence
Added customer account left menu and logout link
A new left menu template for the customer account section has been introduced, rendering a list of navigation items from the provided array and including a logout button at the bottom.
app/apphtml5/theme/base/html5/customer · high confidence
Added customer account left menu and loyalty point block components
New block classes have been introduced to support the customer frontend interface: LeftMenu.php handles the rendering of the customer account sidebar by fetching menu configuration from module parameters and highlighting the current page, while point/Index.php provides a placeholder block for the loyalty points section. Both classes extend Yii's BaseObject and implement a getLastData method to supply view data.
app/appfront/modules/Customer/block, app/appfront/modules/Customer/block/point · high confidence
Added email configuration UI template
The admin interface now includes a dedicated view template for managing email settings. This new file provides the HTML structure and styling for the email configuration form, allowing administrators to edit and save email parameters through the system configuration page.
app/appadmin/theme/base/default/config/email · high confidence
Added localized language packs for the HTML5 app
The HTML5 application now includes dedicated translation files for multiple languages, including Arabic (ar-AE), German (de-DE), Spanish (es-ES), French (fr-FR), Italian (it-IT), and Japanese (ja-JP). These new files provide localized strings for core user interface elements such as account management, shopping cart, checkout, and product browsing, enabling the app to display content in the user's preferred language.
app/apphtml5/languages · high confidence
Added log and logtj admin view templates
New PHP view templates for the log and logtj sections of the fecadmin module have been added to the default theme. These files provide the standard admin interface structure, including pagination forms, search bars, toolbars, and data tables, enabling the rendering of log-related data in the admin panel.
app/appadmin/theme/base/default/fecadmin/log, app/appadmin/theme/base/default/fecadmin/logtj · high confidence
Added product manager configuration view
A new configuration view for the product manager has been added, providing an admin interface to edit appfront base configuration settings. This view includes a form for saving changes, displays translated labels for fields, and applies specific CSS styling to the layout and form elements.
app/appadmin/theme/base/default/config/product · high confidence
Added search engine configuration UI in admin theme
The default admin theme now includes a dedicated configuration interface for search engine settings. This new view file provides a form for administrators to manage search-related parameters, featuring localized labels for 'Search Engine Config', 'Save', and 'Cancel', along with specific CSS styling for the layout and form elements.
app/appadmin/theme/base/default/config/search · high confidence
Adds attribute, price, and sorting filters to the HTML5 category page
The HTML5 theme for category listing pages now includes a sidebar filter interface. Users can refine product results by selecting specific attributes (e.g., brand, size), applying custom price ranges via input fields, and sorting the product list. The view also displays active filter tags for easy removal and shows subcategory navigation.
app/apphtml5/theme/base/html5/catalog/category/index · high confidence
Admin CMS article management interface added
The admin panel now includes a dedicated interface for managing CMS articles, featuring a list view with search and filtering capabilities (by status, title, and creation date) and an edit form. The edit form allows administrators to update the article title, URL key, meta keywords, meta description, and content, as well as toggle the article's enable/disable status. The list view displays article details including ID, title, status, creator, and timestamps, supporting bulk selection and deletion operations.
app/appadmin/modules/Cms/block/article, app/appadmin/modules/Fecadmin/block/role, app/appadmin/theme/base/default/fecadmin/role · high confidence
Admin UI for configuring search engine backends
Administrators can now enable or disable specific search engine integrations (MySQL, MongoDB, and Xunsearch) directly from the admin configuration interface. This new block allows users to toggle these engines on or off, with instructions to run the \fullSearchSync.sh\ shell script to synchronize data after enabling a backend.
app/appadmin/modules/Config/block/search · high confidence
Admin UI templates for managing appfront store configurations
Added new PHP view templates for the admin interface to manage appfront store settings. The list view (manager.php) provides a standard data table with search and pagination controls, while the edit view (manageredit.php) presents a form for modifying store attributes. The edit form includes inline documentation explaining configuration fields such as Store Key, Language Name, Local/Third Theme Directories, Mobile redirection conditions, and HTTPS settings, enabling administrators to configure multi-store and mobile access behaviors.
app/appadmin/theme/base/default/config/appfrontstore · high confidence
Admin cache management block added
A new cache management block (Index.php) has been added to the Fecadmin module, providing an admin interface to view and refresh Redis and file-based caches. The block allows administrators to refresh caches for specific application entry points by merging common and entry-specific Redis configurations, and includes CSRF protection for the refresh action.
app/appadmin/modules/Fecadmin/block/cache · high confidence
Admin category management UI and image handling
The admin interface for managing product categories now includes dedicated blocks for handling category images, listing, and associated products. Administrators can upload and delete category images via the new Image block, manage category details and tree structures through the Index block, and assign products to categories using the Product block, which supports filtering by name, SKU, and SPu.
app/appadmin/modules/Catalog/block/category · high confidence
Admin configuration block for enabling/disabling payment methods
Added a new Manager block in the appadmin Config module that provides the administrative interface for managing front-end payment settings. This block exposes toggle controls (enable/disable) for specific payment gateways including Check Money, PayPal Standard, PayPal Express, Alipay Standard, and various WeChat Pay modes (Standard, Jsapi, Html5). It handles loading the current configuration from the store base config service and prepares the form data for the admin UI, while also triggering a pre-save event to allow for extensibility.
app/appadmin/modules/Config/block/appfrontpayment · high confidence
Admin configuration block for order settings
Added a new Manager block in the admin configuration module to manage order-related settings. This change introduces a user interface for configuring parameters such as order increment ID format, required address attributes, pending stock return timing, guest order permissions, and order remark length limits.
app/appadmin/modules/Config/block/order · high confidence
Admin configuration for App Front Home page settings
Administrators can now configure specific settings for the App Front Home page via the admin interface. This change introduces a new configuration block that allows editing of meta title, meta keywords, meta description, best seller SKU, and best feature SKU, enabling better control over the home page's SEO and featured content display.
app/appadmin/modules/Config/block/appfronthome · high confidence
Admin configuration for cart parameters
The admin interface now includes a dedicated configuration block for cart settings, allowing administrators to manage specific shopping cart behaviors. This new feature enables the configuration of the maximum number of items of a single SKU that can be added to the cart (maxCountAddToCart) and whether to enforce inventory checks when adding items to the cart (addToCartCheckSkuQty).
app/appadmin/modules/Config/block/cart · high confidence
Admin configuration for front-end account settings
A new configuration block has been added to the admin panel, allowing administrators to manage front-end account behaviors. This includes toggles for CAPTCHA on the register, login, forgot password, and contacts pages, options for auto-login after registration and custom redirect URLs, and controls for minimum/maximum name and password lengths.
app/appadmin/modules/Config/block/appfrontaccount · high confidence
Admin configuration for product image and pricing settings
The admin interface now includes a dedicated configuration block for product settings, allowing administrators to manage image storage paths, maximum upload sizes, and compression levels for PNG and JPEG files. Additionally, users can configure pricing behavior, specifically whether special prices override standard prices when the special price is higher, and enable or disable zero-inventory handling.
app/appadmin/modules/Config/block/product · high confidence
Admin configuration for third-party tracking scripts and asset versioning
Administrators can now manage base app-front settings via the admin panel, including enabling forced asset copying, setting JS/CSS version suffixes to bypass browser caching, and injecting third-party tracking code (such as Google Analytics, Baidu Tongji, or Google Tag Manager) directly into the frontend.
app/appadmin/modules/Config/block/appfrontbase, app/appadmin/modules/Config/block/apphtml5base · high confidence
Admin configuration management interface added
The admin panel now includes a new configuration management section, allowing administrators to view, edit, and delete system configuration entries. This change introduces the Manager and Manageredit blocks in the Fecadmin module, which provide a table-based interface for listing configurations (by ID, label, key, value, and timestamps) and a form for editing specific configuration records, including fields for label, key, value, and description.
app/appadmin/modules/Fecadmin/block/config · high confidence
Admin coupon management and order export capabilities
The admin panel now supports managing coupons and exporting order data. A new CouponController allows administrators to view, edit, and delete coupon records through the backend interface. Additionally, the OrderinfoController has been updated to include an Excel export function for orders, enabling bulk data retrieval, while also enabling CSRF validation for these POST requests to improve security.
app/appadmin/modules/Sales/controllers · high confidence
Admin dashboard adds interactive charts and form submission utilities
The admin interface now supports data visualization and improved form handling. An ECharts library has been included to enable statistical charts in the backend, and a new JavaScript utility function \doPost\ allows for dynamic, programmatic POST requests via hidden forms, supporting the new editable select components and other interactive admin features.
app/appadmin/theme/base/default/assets/js · high confidence
Admin interface for PayPal payment configuration
Administrators can now configure PayPal payment settings directly from the admin panel. This change introduces a new configuration block that allows users to set the PayPal environment (sandbox or production), email account, and API credentials (account, password, signature, and client ID). These settings are stored and managed via the new Manager block, enabling seamless integration of PayPal as a payment method.
app/appadmin/modules/Config/block/paymentpaypal · high confidence
Admin interface for managing CMS static blocks
The admin panel now includes a dedicated interface for managing CMS static blocks, allowing administrators to view, create, edit, and delete static content blocks. This change introduces the Index block for listing blocks with search and pagination capabilities, and the Manageredit block for handling the creation and modification of individual static blocks, including fields for title, identify, content, and status.
app/appadmin/modules/Cms/block/staticblock · high confidence
Admin interface for managing category sort configurations
The admin panel now includes a dedicated configuration page for category sorting. Administrators can define custom sort keys, labels, database columns, and sort directions (ascending/descending) for product categories. This interface allows adding, editing, and removing sort rules, which are then saved to control how categories are ordered in the storefront.
app/appadmin/theme/base/default/config/categorysort · high confidence
Admin interface for managing coupons
Added the Manager and Manageredit block classes for the coupon module in the admin panel. The Manager block provides a list view with search capabilities (by coupon code and creation date) and displays columns for ID, code, usage limits, type (percentage or direct reduction), conditions, discount, expiration, and audit info. The Manageredit block enables creating and editing coupons via a form that captures code, per-user limits, type, minimum spend conditions, discount amount, and expiration date, and supports saving and deleting individual or multiple coupons.
app/appadmin/modules/Sales/block/coupon · high confidence
Admin interface for managing currency configurations
The admin theme now includes a dedicated configuration page for managing currencies. Administrators can view, add, and remove currency entries, specifying the currency code, symbol, and exchange rate. The interface allows for dynamic row addition and deletion within the admin panel, with validation ensuring that all required fields are populated before saving.
app/appadmin/theme/base/default/config/currency · high confidence
Admin interface for managing customer contact messages
The admin panel now includes a dedicated section for viewing and managing customer contact submissions. Administrators can view a list of contacts including name, telephone, email, and the user's comment, with search capabilities by email and creation date. The interface also supports editing contact details and deleting entries directly from the admin dashboard.
app/appadmin/modules/Customer/block/contacts · high confidence
Admin interface for managing frontend customer accounts
Administrators can now view, edit, and manage frontend mall users directly from the backend. This change introduces the \Index\ block for listing customers with search capabilities (by status, email, password reset token, and creation date) and a table displaying details such as name, email, favorite product count, and status. It also adds the \Manageredit\ block, which provides a form to edit customer attributes (first/last name, email, password, status) and handles saving or removing individual or multiple customer records.
app/appadmin/modules/Customer/block/account · high confidence
Admin interface for managing installed extensions with priority support
The admin panel now includes a dedicated section for managing installed extensions, allowing administrators to view, edit, enable, disable, and delete extensions. This update introduces a 'Priority' field that can be set during extension configuration and is displayed in the main listing, enabling control over the order in which extensions are processed. The interface provides filtering by status, extension type, and creation date, and exposes key metadata such as package name, folder, version, and namespace for each installed extension.
app/appadmin/modules/System/block/extensioninstalled · high confidence
Admin interface for managing product attribute groups
Added the Manager and Manageredit blocks for the product attribute group module in the admin panel. The Manager block provides a list view with search and pagination capabilities, displaying attributes such as ID, name, status, and timestamps. The Manageredit block enables creating and editing attribute groups, allowing administrators to set the group name, status, and associate specific product attributes with their sort order. This change introduces the backend UI components required to manage product attribute group configurations.
app/appadmin/modules/Catalog/block/productattrgroup · high confidence
Admin interface for managing product attributes
Added the Manager and Manageredit block classes for the product attribute management section in the admin panel. The Manager block provides a list view with search and pagination capabilities, displaying columns for attribute type, name, status, database type, and display settings. The Manageredit block enables creating and editing individual product attributes, supporting fields for attribute type, name, status, database type, image display toggle, requirement flag, and default value.
app/appadmin/modules/Catalog/block/productattr, app/appadmin/theme/base/default/catalog/productattr · high confidence
Admin interface for managing product brand categories
Administrators can now manage product brand categories directly from the admin panel. This change introduces a new management interface that allows users to view a list of brand categories with details such as name, sort order, status, and timestamps. It supports filtering by status and creation date, and enables creating, editing, enabling/disabling, and deleting brand categories through a dedicated edit form.
app/appadmin/modules/Catalog/block/productbrandcategory, app/appadmin/theme/base/default/catalog/productbrandcategory · high confidence
Admin interface for managing product brands
This change introduces the admin UI components for the product brand management feature. The \manager.php\ view provides a paginated list view with search and toolbar actions, while \manageredit.php\ provides a modal form for editing brand details, including support for uploading and previewing brand logos via AJAX.
app/appadmin/theme/base/default/catalog/productbrand · high confidence
Admin interface for managing resource tags
Administrators can now manage resource tags through a new list view and edit form. The Manager block provides a table displaying tag ID, name, associated resource URL key, sort order, and timestamps, with search capabilities for tag, tag name, resource, and creation date. The Manageredit block allows creating and editing individual tags, requiring a tag name, resource URL key, and tag selection, while supporting batch deletion of selected tags.
app/appadmin/modules/Fecadmin/block/resource · high confidence
Admin interface for multi-language and search engine configuration
Administrators can now manage multiple languages and associate each with a specific search engine directly from the admin panel. This new configuration screen allows users to add, edit, or remove language entries (name, code, and search engine mapping) and provides instructions on saving settings, binding languages to stores, and running data synchronization scripts for search indexes.
app/appadmin/theme/base/default/config/mutillang · high confidence
Admin interface for viewing and managing system error logs
Administrators can now view and query system error information directly from the backend. This change introduces new theme templates for the error management section, providing a searchable list view and a detailed edit form that displays error metadata such as category, status code, line number, IP address, URL, file path, message, request info, and trace info.
app/appadmin/theme/base/default/system/error · high confidence
Admin interface for viewing customer newsletter subscriptions
Administrators can now view a list of customer newsletter subscriptions in the admin panel. This change adds the backend block responsible for rendering the subscription management page, which includes a searchable table displaying subscriber email addresses, subscription status (enabled/disabled), and creation dates, along with pagination and bulk action controls.
app/appadmin/modules/Customer/block/newsletter · high confidence
Admin interface for viewing product favorites
Administrators can now view a list of products favorited by users through the Catalog section of the admin panel. This change introduces a new block that displays a table with columns for the product, the user who favorited it, the store, and creation/update timestamps. The interface includes search functionality to filter favorites by creation date and allows for bulk selection of entries.
app/appadmin/modules/Catalog/block/productfavorite · high confidence
Admin interface now supports bulk product upload via Excel
The admin panel now includes a new product upload feature that allows administrators to import or update products in bulk using an Excel file. This new manager interface provides a file selection form and instructions for downloading the required Excel template and image folder structure, enabling users to add new products or update existing ones based on SKU matching.
app/appadmin/theme/base/default/catalog/productupload · high confidence
Admin manager account management interface
The admin panel now includes a dedicated interface for managing administrator accounts. This change introduces the Manager block, which provides a searchable and paginated list of admin users with columns for ID, username, name, worker number, email, status, and timestamps. It also adds the Manageredit block, enabling administrators to create, edit, and delete user accounts, including setting passwords, emails, worker numbers, and assigning roles.
app/appadmin/modules/Fecadmin/block/account · high confidence
Admin module configuration files added
New configuration files have been added to the appadmin module setup, defining the structure for Catalog, Cms, Config, Customer, Sales, and System modules. Additionally, the Fecadmin module configuration now explicitly maps controllers for login, logout, account, cache, config, logging, error handling, and system resources, establishing the backend routing and cache configuration paths for these administrative features.
app/appadmin/config/modules · high confidence
Admin order configuration UI added
A new configuration manager view for the admin panel has been introduced, providing a dedicated form interface for managing order settings. This change adds a new PHP template file that renders a styled dialog form with fields for order configuration attributes, allowing administrators to edit and save order-related parameters through the web interface.
app/appadmin/theme/base/default/config/cart, app/appadmin/theme/base/default/config/order · high confidence
Admin order management: list, edit, and Excel export capabilities
The admin panel now supports comprehensive order management within the Sales module. Administrators can view a list of orders with filtering options (by increment ID, status, email, and date range) and display key details such as payment and shipping method labels. A new interface allows editing order attributes (status, currency, customer info, etc.) and saving changes. Additionally, selected orders can be exported to an Excel file containing detailed order and item information.
app/appadmin/modules/Sales/block/orderinfo · high confidence
Admin product brand management interface
The admin panel now includes a dedicated interface for managing product brands. This update adds the necessary backend blocks to list, search, create, edit, and delete brand entries, including support for uploading brand logos and filtering by status or creation date.
app/appadmin/modules/Catalog/block/productbrand · high confidence
Admin product info index now supports dimension and batch attribute editing
The product information editing interface in the admin panel has been updated to include fields for product dimensions (Long, Width, High in CM) and supports batch attribute management. This change introduces new block classes (Attr.php and BatchAttr.php) that define these attributes, enabling administrators to input physical dimensions for products, which facilitates the calculation of volumetric weight for shipping purposes.
app/appadmin/modules/Catalog/block/productinfo/index · high confidence
Admin product interface redesign with batch editing and custom option management
The admin product management interface has been updated with new theme templates for the product list, editing, and batch editing views. This change introduces a dedicated batch edit capability for managing multiple products simultaneously, including tiered pricing and category assignments. Additionally, the product info view now features a dynamic interface for adding and managing custom product options, allowing administrators to define multi-language titles, prices, and sort orders for options and their sub-options directly within the admin panel.
app/appadmin/theme/base/default/catalog/productinfo · high confidence
Admin product review management interface
The admin panel now includes a dedicated section for managing customer product reviews. Administrators can view a list of reviews with filtering options for status (Pending, Approved, Not Approved), product SPU, and date range. The interface supports editing individual review details (rating, summary, content, status) and performing batch actions such as approving or rejecting multiple reviews at once.
app/appadmin/modules/Catalog/block/productreview · high confidence
Admin product upload via Excel spreadsheet
The admin interface now supports bulk product creation and updates through Excel file uploads. Administrators can upload .xls or .xlsx files containing product details (such as SKU, price, stock, images, and attributes) which are processed to save or update products in the catalog.
app/appadmin/modules/Catalog/block/productupload · high confidence
Cms module initialization and layout configuration
The Cms module for the appfront area has been initialized, establishing the necessary controller and block namespaces for the Yii framework. It also sets the default theme layout file to 'home.php' for this module, ensuring consistent rendering for CMS-related pages.
app/appfront/modules/Cms · high confidence
Customer product review list with pagination and breadcrumbs
The customer account center now displays a paginated list of the user's own product reviews. This new block fetches reviews ordered by date, enriches each item with the associated product image and URL key, and provides navigation controls for multiple pages. Additionally, a breadcrumb trail labeled 'Customer Product Review' is added to the page header, controlled by a specific configuration parameter.
app/appfront/modules/Customer/block/productreview · high confidence
Frontend account management blocks for login, registration, and password recovery
This change introduces the PHP block classes that power the customer account interface in the appfront module. Specifically, it adds Forgotpassword, Index, Login, Register, Registerenable, Resetpassword, and Resetpasswordsuccess. These blocks handle the logic for displaying account-related pages, managing breadcrumbs, validating CAPTCHAs on login and registration, processing password reset tokens, and sending activation or reset emails. This provides the backend structure for users to log in, register new accounts with optional email activation, and recover forgotten passwords.
app/appfront/modules/Customer/block/account · high confidence
HTML5 product review submission and listing pages added
The HTML5 theme now includes dedicated views for product reviews, enabling customers to submit reviews and view existing ones on mobile devices. The new \add.php\ template provides a form for entering a name, summary, star rating, and review content, with optional CAPTCHA support and client-side star selection. The \lists.php\ template displays the product's average rating, a breakdown of star distribution, and a paginated list of individual reviews, including moderation status indicators.
app/apphtml5/theme/base/html5/catalog/reviewproduct · high confidence
Initial Catalogsearch module setup
The Catalogsearch module for the appfront area has been added, initializing the module structure with default controller and block namespaces and setting the main layout file for the theme.
app/appfront/modules/Catalogsearch · high confidence
Initial Cms module for apphtml5 with page caching and currency switching
Adds the Cms module to the apphtml5 application, introducing controllers and blocks for the home page and articles. The home page block provides featured products, store, and currency information, while the article block handles article details and meta tags. Both controllers implement page caching via Yii's PageCache filter, varying by store and currency, and support disabling cache via a specific URL parameter. Additionally, an action allows users to switch the current currency.
app/apphtml5/modules/Cms · high confidence
Initial Cms module structure for admin panel
The app/appadmin/modules/Cms location now contains the foundational files for the CMS module within the admin interface. This includes the CmsController, which extends the base admin controller and disables CSRF validation, and the Module class, which initializes the module by setting up controller and block namespaces and defining the default AJAX layout. This establishes the basic routing and configuration structure for CMS-related admin functionality.
app/appadmin/modules/Cms · high confidence
Initial FecShop frontend application configuration
This change introduces the initial configuration files for the FecShop frontend application (\appfront\). It defines the Yii2 application structure, including module loading, internationalization settings using \fecshop\\yii\\i18n\\PhpMessageSource\, and custom component classes for User, ErrorHandler, View, and Request. The configuration also sets up service widgets for the frontend theme (head, header, menu, footer, etc.) and establishes default theme paths and layout names via \params.php\.
app/appfront/config · high confidence
Initial HTML5 mobile theme stylesheets added
The HTML5 mobile theme now includes its foundational CSS assets, introducing \fec.css\ for custom application styling and \sm.css\ (along with \sm-extend.css\) which integrates the SUI Mobile framework. These files establish the base visual design, responsive layout rules, and component styles for the mobile web interface.
app/apphtml5/theme/base/html5/assets/css · high confidence
Initial Sales module structure for admin
The admin interface now includes a new Sales module, providing the foundational controller and module configuration classes required to manage sales-related operations within the application.
app/appadmin/modules/Sales · high confidence
Initial appserver configuration and multi-language support
The appserver now includes a dedicated configuration file (app/appserver/config/appserver.php) that sets up core modules (Catalog, Checkout, Customer, etc.), defines internationalization paths, and configures the error handler to use a specific class in production environments. Additionally, language translation files have been added for Arabic, German, English, Spanish, French, and Italian to support localized user interfaces.
app/appserver · high confidence
Initial configuration and theme assets for the HTML5 mobile app
This change introduces the foundational configuration and theme structure for the \apphtml5\ mobile application. It adds \app/apphtml5/config/apphtml5.php\, which defines the Yii2 application setup including module loading, internationalization, user authentication, error handling, and URL management, alongside \params.php\ for base theme settings. Additionally, it includes initial theme files such as \.gitignore\ and \BaseAsset.php\ to support the HTML5 frontend interface.
app/apphtml5/config · high confidence
Initial configuration files for appfront modules
Added default configuration files for the Catalog, Catalogsearch, Checkout, Cms, Customer, Payment, and Site modules in the appfront application. These files define the module classes and provide initial parameter settings, such as breadcrumb visibility, search page titles, and customer account menu items, which can be overridden in local configuration files.
app/appfront/config/modules · high confidence
Initial configuration for the appadmin application module
Added the initial configuration files for the appadmin module, defining the application structure, component registrations, and default parameters. The appadmin.php file configures the module bootstrap (specifically the 'store' component), sets up internationalization (i18n) translations pointing to the appadmin languages directory, registers the AdminUser identity class for authentication, and defines URL routing rules for the admin interface. The params.php file establishes the base theme directory and default layout name for the admin theme.
app/appadmin/config · high confidence
Initial configuration for the appapi module
The appapi module is now configured with a new entry point (app/appapi/config/appapi.php) that sets up the V1 API module, defines URL routing rules (including a default home route and commented-out RESTful rules for articles, customers, categories, and products), and configures core components such as the request parser (JSON), user identity (AdminUser model with sessions disabled), and error handling (switching to AppserverErrorHandler in production). Rate limiting is disabled by default, and API user access is unrestricted unless explicitly configured.
app/appapi/config · high confidence
Initial configuration structure for FecShop services and components
This change introduces the foundational configuration files for the FecShop application, establishing a structured approach to managing services and components. It includes a main entry point (\config/fecshop.php\) that dynamically loads service and component definitions from subdirectories, alongside specific configuration files for key subsystems such as Admin, Cart, Product, Payment (including PayPal, Alipay, and WeChat Pay), Email, and Caching. Additionally, it adds component configurations for Service Logging, Store management, and XunSearch integration, providing the necessary defaults and structure for the application's core functionality.
config · high confidence
Initial console application structure and module configuration
The console application entry point and core module infrastructure have been established, including the main configuration file and the registration of specific functional modules such as Amqp, Category, Customer, Helper, Order, Product, and Sitemap. A base ConsoleController is provided to handle block resolution and namespace mapping, enabling the execution of command-line operations for these distinct business areas.
app/console · high confidence
Initial database model definitions for MongoDB and MySQL backends
This change introduces the foundational data models for the application, establishing the schema layer for both MongoDB and MySQL storage engines. The diff adds ActiveRecord classes for core entities including Products, Categories, Orders, Customers, and Admin Users, as well as supporting models for CMS articles, static blocks, product reviews, favorites, search indexes, and system logs. These files define the table/collection names, field attributes, validation rules, and index configurations required to persist and query data in the respective databases.
models · high confidence
Initial front-end theme assets and base styles added
The appfront theme now includes its foundational front-end assets, providing the visual structure and interactive capabilities for the storefront. This adds the core CSS styles in \style.css\ and \BaseAsset.php\, along with specific support for Internet Explorer (\ie.css\, \ltie9.css\). It also integrates third-party JavaScript libraries and their stylesheets to enable product image zooming via \jquery.elevatezoom.js\ and rich media galleries via \fancybox\ (including helpers for buttons, thumbnails, and media embedding).
app/appfront/theme · high confidence
Initial implementation of the Catalog admin module
The Catalog module for the admin interface has been added, introducing the core module structure and controller. This includes the \Module.php\ class which configures the module's namespace, block directory, and default AJAX layout, as well as the \CatalogController.php\ which extends the base admin controller to handle catalog-related requests.
app/appadmin/modules/Catalog · high confidence
Initial implementation of the Customer module for the HTML5 app frontend
This change introduces the complete Customer module for the apphtml5 frontend, providing the backend logic (blocks) for user account management and interaction. It adds support for user registration with optional email activation, login with Google and Facebook social authentication, and password recovery flows (forgot/reset). The module also implements the customer dashboard features, including viewing and editing account details, managing shipping addresses, viewing order history with reorder capabilities, and managing product favorites and reviews. Additionally, it includes a contact form with captcha validation and newsletter subscription functionality, all structured within the Yii2 framework's block/controller pattern.
app/apphtml5/modules/Customer · high confidence
Initial release of the apphtml5 Catalog module
This change introduces the complete apphtml5 Catalog module, providing the backend logic and controllers for the mobile storefront's product browsing and interaction features. It includes controllers for categories, products, favorites, and reviews, along with the corresponding block classes that handle data retrieval, sorting, filtering, and AJAX pagination for category listings. The module also implements product detail page logic (including custom options, group attributes, and image handling), a product favorite system with CSRF protection, and a product review system with configurable permissions (e.g., requiring a purchase to review) and CAPTCHA support.
app/apphtml5/modules/Catalog · high confidence
Initial setup of the apphtml5 module base classes and site controller
Adds the foundational structure for the apphtml5 module, including the AppfrontController and AppfrontModule base classes which handle theme initialization, layout resolution, and block loading. It also introduces the Site module configuration and a HelperController that provides error handling and captcha generation actions for the HTML5 app interface.
app/apphtml5/modules · high confidence
Initialize V1 API module structure
Adds the V1 module entry point, configuring the controller and block namespaces to ensure the API module can correctly locate its components.
app/appapi/modules/V1 · high confidence
Introduce Appfront module base classes for theme and block management
Added the AppfrontModule and AppfrontController classes to the appfront module. The new AppfrontController extends the base FecController to initialize theme directories, layout files, and i18n translation categories, while providing methods to resolve block namespaces and render views using the multi-theme system. This establishes the foundational controller logic for handling appfront requests and view rendering.
app/appfront/modules · high confidence
Introduce graphical database installation wizard for FecMall
Adds a new web-based installation module (\app/appinstall/modules/Database\) that guides users through setting up the MySQL database, running migrations, configuring store domains, and initializing admin accounts. This replaces or supplements command-line setup by providing a browser interface for database configuration, migration execution, and post-installation steps.
app/appinstall/modules/Database · high confidence
Introduction of App API module with token-based authentication
The application now includes a new \appapi\ module (\AppapiModule\) containing controllers for API interactions. \AppapiController\ serves as a base controller that enforces JSON responses and disables session usage. \AppapiTokenController\ extends this base to provide secure access via \AppapiQueryParamAuth\ (passing \access-token\ as a GET parameter) and supports optional rate limiting through the \RateLimiter\ filter, allowing third-party systems to interact with the platform securely.
app/appapi/modules · high confidence
Introduction of Checkout Controllers for Cart, One-Step, and Reorder Operations
This change introduces three new controllers in the Checkout module: CartController, OnepageController, and ReorderController. The CartController manages shopping cart interactions, including adding products (with CSRF validation disabled for the add action to support AJAX), applying/canceling coupons (restricted to logged-in users), and handling mobile redirects. The OnepageController facilitates the single-page checkout flow, enforcing login requirements for guest orders and handling AJAX updates for country changes and order/shipping details. The ReorderController allows users to replicate a previous order by fetching its items and adding them back to the cart. These controllers form the backend logic for the front-end checkout experience.
app/appfront/modules/Checkout/controllers · high confidence
Introduction of Checkout and Customer modules with default layouts
The application now includes dedicated modules for Checkout and Customer functionality. The Checkout module initializes with a default layout of 'one\_step\_checkout.php', enabling a streamlined one-step checkout experience for users. The Customer module initializes with a default layout of 'main.php', providing the standard structure for customer-related pages. These modules set up the necessary controller and block namespaces for their respective areas.
app/appfront/modules/Checkout · high confidence
Introduction of One-Page Checkout with Address Initialization and Payment Handling
This change introduces the core PHP blocks for the new one-page checkout flow in the FecShop appfront module. The Index block initializes the checkout page by loading cart data, pre-filling shipping addresses from the user's account or cart history, and preparing payment and shipping method options. The Placeorder block handles the final submission, including XSS sanitization of user inputs, automatic currency conversion to CNY for Alipay and WeChat Pay, guest account creation during checkout, and the generation of orders from cart data with inventory deduction.
app/appfront/modules/Checkout/block/onepage · high confidence
Introduction of new service layer for admin and application management
The services directory now includes new \Admin.php\ and \AdminUser.php\ files, providing backend-specific functionality such as admin user login, access token management, and multi-language configuration handling for the admin panel. Additionally, \Application.php\ has been added to serve as the central service container (\Yii::$service\), managing the initialization, instantiation, and retrieval of all other child services (e.g., Cart, Product, Category) via a singleton pattern and configuration-driven injection.
services · high confidence
Introduction of the Payment module for checkout processing
The app/appfront/modules/Payment location now contains the core module and controller files that enable the payment workflow. The Module.php file initializes the payment module, configuring controller and block namespaces and setting the default layout to 'one\_step\_checkout.php'. The PaymentController.php file handles the entry point for payment actions, validating the presence of a valid order increment ID from the session and redirecting to the home page if the order is missing or invalid.
app/appfront/modules/Payment · high confidence
Introduction of the System admin module
A new System module has been added to the admin interface, providing the foundational structure for system-level administration. This includes a Module class that configures controller and block namespaces, sets a specific AJAX layout, and extends the PHP execution time limit to handle longer-running tasks. Additionally, a SystemController is introduced which extends the base admin controller and explicitly disables CSRF validation for its endpoints.
app/appadmin/modules/System · high confidence
New Admin URL Key Gii Tool for SQL Generation
Administrators can now use the new Admin URL Key Gii tool to generate SQL statements for the \admin\_url\_key\ table. This feature adds a dedicated interface in the admin panel where users can paste exported SQL data and generate corresponding entries, streamlining the process of managing admin menu URL keys via the Fecmall developer guide.
app/appadmin/modules/System/block/adminurlkey, app/appadmin/theme/base/default/system/adminurlkey · high confidence
New App HTML5 Payment Configuration Block
Added a new configuration block for managing App HTML5 payment settings in the admin panel. This block allows administrators to enable or disable specific payment methods, including Check Money, PayPal Standard and Express, Alipay Standard, and various WeChat Pay options (PC, Jsapi, and HTML5). The implementation includes an event mechanism (\event\_before\_save\_payment\_config\) to facilitate future extensibility of the payment logic.
app/appadmin/modules/Config/block/apphtml5payment · high confidence
New App Server Cache Configuration Block
Added a new configuration block in the admin panel that allows administrators to manage app server caching settings. This block provides toggle controls to enable or disable caching for specific page types, including all pages, home, category, product, and article pages, giving users finer control over performance optimization.
app/appadmin/modules/Config/block/appservercache · high confidence
New App Server Catalog configuration block
Administrators can now configure app server catalog settings via a new Manager block in the admin panel. This change introduces a UI for managing product and category display options, including toggles for breadcrumbs, category filters (attributes, categories, price), pagination limits, price ranges, SKU display behavior, and review settings (captcha, counts, login requirements).
app/appadmin/modules/Config/block/appservercatalog · high confidence
New Appfront Catalog configuration interface
A new configuration page for Appfront Catalog settings has been added, allowing administrators to manage product and category configurations via a dedicated form interface.
app/appadmin/theme/base/default/config/appfrontcatalog · high confidence
New CMS API module for home page and article content
The appserver now exposes a new Cms module providing API endpoints for the home page and individual articles. The HomeController returns structured data including featured products, advertise images, available languages, and currencies, with page caching enabled for variations in store, currency, and language. The ArticleController fetches article details by URL key, also with configurable page caching that respects disable parameters and varies by store, currency, language, and article ID.
app/appserver/modules/Cms · high confidence
New CMS admin controllers for articles, static blocks, and XHEditor
The admin interface now includes dedicated controllers for managing CMS content. The new ArticleController handles article listing and editing with CSRF validation enabled. The StaticblockController manages static blocks and includes a new image upload action. Additionally, the XeditorController provides endpoints for XHEditor integration, including image, flash, link, and media upload actions (with CSRF disabled for the upload endpoints).
app/appadmin/modules/Cms/controllers · high confidence
New Catalog Search API module for appserver
Added a new Catalogsearch module to the appserver, introducing API endpoints for product search functionality. The IndexController exposes actions such as actionIndex and actionWxindex to handle search queries, returning paginated product lists, search counts, and filter/refinement information. This enables clients (including WeChat mini-programs) to perform catalog searches with support for attribute filtering, price ranges, and sorting.
app/appserver/modules/Catalogsearch · high confidence
New Catalog controllers for product, category, reviews, and favorites
The appfront Catalog module now includes dedicated controllers for managing product and category pages, product reviews, and user favorites. Product and category pages support full-page caching with configurable timeouts and URL parameter variations, while also redirecting mobile app users to the appropriate Vue-based endpoints. Product pages expose an AJAX endpoint to retrieve cart prices and a direct image retrieval endpoint by SKU. Review submissions are protected by CSRF validation and can be restricted to logged-in users only via store configuration, and favorite product actions are exposed via a controller with CSRF validation disabled for AJAX compatibility.
app/appfront/modules/Catalog/controllers · high confidence
New Customer Account and Social Login Controllers
The Customer module now includes dedicated controllers for managing user account operations and third-party authentication. AccountController handles login, registration (with optional email activation), logout, and password recovery. AddressController, EditaccountController, and ContactsController manage user profile and shipping details. New FacebookController and GoogleController enable social login flows, while ProductfavoriteController and ProductreviewController support user wishlists and reviews. OrderController adds reorder functionality, and AjaxController provides real-time cart and favorite counts.
app/appfront/modules/Customer/controllers · high confidence
New FecShop AppAPI V1 controllers for catalog, content, and account management
This change introduces a comprehensive set of new REST API controllers in the V1 module, enabling third-party systems to interact with FecShop data. The new endpoints include AccountController for user login and token generation, ArticleController for managing CMS articles (list, fetch, add, update), CategoryController for product categories (list, fetch, add, update), and CategoryimageController for syncing category images via base64. Product management is covered by ProductController (list, fetch, add, upsert), ProductattrController for attributes, ProductattrgroupController for attribute groups, and ProductbrandController for brands. Additionally, OrderController provides order listing and status updates, while CurrencyController and LanguagesController allow configuration of store-wide currency and language settings. These controllers collectively provide CRUD capabilities for core e-commerce entities and essential store configuration.
app/appapi/modules/V1/controllers · high confidence
New Fecmall Extension Market Admin Interface
The admin panel now includes a dedicated Extension Market section, allowing administrators to browse, install, upgrade, and uninstall extensions directly from the backend. This new interface features a login screen for Fecmall account authentication and a manager view that displays available addons with their versions, sizes, and status. Administrators can perform online installations, trigger manual upgrades for newer versions, test local development addon scripts (install/upgrade/uninstall), and remove installed extensions.
app/appadmin/theme/base/default/system/extensionmarket · high confidence
New General appserver module with menu, language, and currency APIs
Added the General module for the appserver, introducing controllers that expose endpoints for retrieving the site navigation menu (including a specific format for WeChat Mini Programs), available languages, and supported currencies. The menu endpoint implements page caching with variations based on the current language code and supports disabling cache via URL parameters.
app/appserver/modules/General · high confidence
New Gii Extension Generator Interface
The admin interface now includes a dedicated page for generating custom extensions using the Gii tool. Administrators can configure the extension package, namespace, and author details to scaffold new application modules, with the system enforcing English-only naming for packages and namespaces to ensure uniqueness and prevent conflicts in the application market.
app/appadmin/theme/base/default/system/extensiongii · high confidence
New HTML5 account configuration block for admin settings
Added a new configuration block (\Manager.php\) in the admin module that allows administrators to manage HTML5 account settings. This includes toggles for CAPTCHA on the register, login, forgot password, and contacts pages, options for auto-login after registration and custom redirect URLs, and controls for minimum/maximum name and password lengths.
app/appadmin/modules/Config/block/apphtml5account · high confidence
New HTML5 category page with infinite scroll and refined filtering UI
The HTML5 theme for the category listing page has been implemented, introducing an infinite-scroll product list that loads additional items via AJAX as the user scrolls. The interface now includes dedicated popup modals for sorting and filtering products, allowing users to refine results by subcategory, attributes, and price range. Additionally, product prices are formatted consistently using a helper function to ensure standard decimal display for both regular and special prices.
app/apphtml5/theme/base/html5/catalog/category · high confidence
New HTML5 checkout module for cart and one-page checkout
Introduces the \apphtml5/modules/Checkout\ module, providing the backend logic and controllers for the HTML5 storefront's shopping cart and one-page checkout flows. This includes the \CartController\ for managing cart items and coupons, and the \OnepageController\ handling the single-page checkout process, address management, and order placement. The implementation supports guest checkout (with optional account creation), integrates with the payment service (including Alipay currency handling), and applies XSS filtering to user inputs.
app/apphtml5/modules/Checkout · high confidence
New HTML5 customer account and contact pages
This change introduces the HTML5 theme views for the customer account and contact sections, including login, registration, forgot password, reset password, account index, and contact us pages. The registration and login forms now support configurable CAPTCHA protection, and the registration flow includes an email activation step with a dedicated enable page. The forgot password and reset password flows are fully implemented with success/error states, and the contact form includes CAPTCHA support and validation.
app/apphtml5/theme/base/html5/customer/account · high confidence
New HTML5 customer account editing page
Added a new mobile-optimized view for the customer account editing interface. This page allows users to update their first and last name and optionally change their password via a toggleable form section with client-side validation.
app/apphtml5/theme/base/html5/customer/editaccount · high confidence
New HTML5 customer order list and detail views
This change introduces the HTML5 theme templates for the customer order section, adding the order list page (index.php) and the order detail page (view.php). Users can now view their order history with order numbers, dates, statuses, and actions to view or reorder. The order detail view displays comprehensive information including order status, shipping and payment methods, tracking numbers, and a breakdown of items ordered with subtotals, shipping costs, discounts, and grand totals. It also includes a link to add product reviews directly from the order details page.
app/apphtml5/theme/base/html5/customer/order · high confidence
New HTML5 helper classes for country, formatting, and shipping
Added three new helper classes to the apphtml5 module: Country, Format, and Shipping. The Country helper provides static methods to generate HTML for state/region selection inputs during checkout, supporting both express and standard payment flows. The Format helper offers a utility to format price values with a specified number of decimal places. The Shipping helper is introduced as an empty class extending Yii's BaseObject, likely serving as a placeholder for future shipping-related logic.
app/apphtml5/helper · high confidence
New HTML5 layout templates for mobile storefront pages
Added new layout files for the HTML5 theme (blank, category, home, main, one\_step\_checkout, product\_view, and wxpay\_jsapi). These layouts define the structure for mobile pages, including the inclusion of specific JavaScript (Zepto, Smart Mobile, fec.js) and CSS (Smart Mobile, fec.css) assets, as well as rendering of base widgets like header, menu, and trace.
app/apphtml5/theme/base/html5/layouts · high confidence
New HTML5 product detail page template
The HTML5 mobile theme now includes a dedicated product detail view located at app/apphtml5/theme/base/html5/catalog/product/index.php. This template renders the complete product interface, including image galleries, pricing, quantity selection, and add-to-cart/favorite actions, while also displaying product attributes, descriptions, reviews, and shipping/payment information in a tabbed layout.
app/apphtml5/theme/base/html5/catalog/product · high confidence
New HTML5 product page templates and UI components
This change introduces a complete set of new PHP template files for the HTML5 mobile product detail view, including sections for product images with out-of-stock overlays, custom option selection with dynamic availability logic, tiered wholesale pricing tables, customer reviews with star ratings, and an 'also bought' carousel. It also adds specific UI components for payment method display and standard attribute options, establishing the visual structure and interactive behavior for the mobile product page.
app/apphtml5/theme/base/html5/catalog/product/index · high confidence
New HTML5 theme widgets for navigation, search, and layout
The HTML5 mobile theme now includes a set of new base widgets that define the core user interface structure. These include a header with a logo, menu, and cart icons; a left-side panel containing a product search bar and category navigation; a top search form; breadcrumbs; flash messages for user feedback; a page pagination component; scroll-to-top/bottom controls; and a footer. Additionally, service log printing and JavaScript trace code are now integrated into the page layout.
app/apphtml5/theme/base/html5/widgets · high confidence
New HelperController for Captcha Image Generation
A new HelperController has been added to the Site module, introducing an actionCaptcha method that generates CAPTCHA images with specific styling (30px height, 18px font size) via the helper service. This controller also registers the standard Yii error action, providing a dedicated endpoint for rendering CAPTCHA visuals in the frontend application.
app/appfront/modules/Site/controllers · high confidence
New JavaScript utilities and city picker data for HTML5 app
This change introduces new client-side assets for the HTML5 theme. It adds a \fec.js\ file providing a helper function to submit POST requests via dynamically created forms and a script to handle lazy loading of images with the 'lazy' class. It also includes the \jquery.lazyload.min.js\ library and the \sm-city-picker.js\ (along with its minified version), which embeds a comprehensive dataset of Chinese provinces, cities, and districts to support location selection features.
app/apphtml5/theme/base/html5/assets/js · high confidence
New URL rewrite management interface in admin catalog
Added the Index block for the URL rewrite feature within the Catalog admin module. This component provides the backend UI for managing URL rewrites, including a search bar to filter by origin and custom URLs, a data table displaying rewrite details (ID, type, custom URL, origin URL), and action bars for editing and deleting entries.
app/appadmin/modules/Catalog/block/urlrewrite · high confidence
New admin UI templates for HTML5 store configuration
Added new PHP view templates (manager.php and manageredit.php) for the apphtml5store configuration section in the admin interface. These files provide the HTML structure for listing and editing HTML5 store settings, including search bars, pagination forms, and edit dialogs with fields for store keys, languages, and theme directories.
app/appadmin/theme/base/default/config/apphtml5store · high confidence
New admin configuration controllers for storefronts, payment gateways, and system settings
The admin panel now includes a comprehensive set of new controllers in the Config module to manage specific configuration areas. This adds dedicated endpoints for managing Appfront, Apphtml5, and Appserver settings (including base, account, catalog, cache, home, payment, and store configurations). It also introduces controllers for configuring payment gateways (Alipay, PayPal, WeChat Pay), as well as general system settings such as search, services, multi-language, email, currency, products, orders, cart, and category sorting. These controllers provide the backend API endpoints required for the corresponding admin UI blocks to save and retrieve configuration data.
app/appadmin/modules/Config/controllers · high confidence
New admin configuration templates for manager listing and editing
Added new PHP template files (manager.php and manageredit.php) to the fecadmin theme configuration, providing the default HTML structure for the manager listing page and the edit dialog respectively. These templates define the layout for search bars, toolbars, data tables, and form submissions, establishing the visual presentation for these admin interfaces.
app/appadmin/theme/base/default/fecadmin/config · high confidence
New admin controllers for extension management and error handling
Added new controllers in the System module to manage extensions and errors: AdminurlkeyController for generating admin URL keys, ErrorController for displaying and querying error handler information, ExtensiongiiController for creating extensions via GII, ExtensioninstalledController for managing installed extensions (enable/disable/save), and ExtensionmarketController for browsing, installing, upgrading, and uninstalling extensions from the market, including handling MySQL timeouts during large installations.
app/appadmin/modules/System/controllers · high confidence
New admin logtj block for system log statistics
The admin interface now includes a new 'logtj' block (app/appadmin/modules/Fecadmin/block/logtj/Index.php) that displays system log statistics. This feature allows administrators to view and filter logs by account, person, type (login/visit), and date range, presenting aggregated click counts in a table format.
app/appadmin/modules/Fecadmin/block/logtj · high confidence
New admin order management interface
The admin panel now includes a dedicated order information management view, providing staff with a list view for searching and filtering orders, as well as a detailed edit form. This form allows administrators to update order status, customer details, and shipping tracking numbers, while displaying key order metrics such as totals, payment methods, and customer information.
app/appadmin/theme/base/default/sales/orderinfo · high confidence
New app server account configuration block
Added a new configuration block in the admin panel for managing app server account settings. This block allows administrators to toggle CAPTCHA requirements for the register, login, forgot password, and contacts pages, as well as set minimum and maximum lengths for user names and passwords.
app/appadmin/modules/Config/block/appserveraccount · high confidence
New app server payment configuration block
Added a new configuration block for managing app server payment settings, allowing administrators to enable or disable various payment methods including Check Money, PayPal Standard and Express, Alipay Standard, and WeChat Pay (PC, JsApi, and H5). The block introduces an event mechanism (event\_before\_save\_payment\_config) to facilitate easier extension of payment logic.
app/appadmin/modules/Config/block/appserverpayment · high confidence
New apphtml5 module configuration files added
Added default configuration files for the apphtml5 modules (Catalog, Catalogsearch, Checkout, Cms, Customer, Payment, Site). These files define the module classes and provide commented-out examples for customizable parameters, such as search page titles, product display counts, price ranges, and customer account menu items, allowing developers to override settings in local configuration files.
app/apphtml5/config/modules · high confidence
New appserver Catalog module with product, category, and review APIs
This change introduces the \app/appserver/modules/Catalog\ module, providing REST API endpoints for the appserver environment. It includes controllers for managing product details (\ProductController\), category listings with filtering and caching (\CategoryController\), and product reviews (\ReviewproductController\). The module adds blocks for handling review submission and listing logic, along with a helper for review data retrieval. This enables mobile and mini-program clients to fetch product information, browse categories, and interact with product reviews via the appserver.
app/appserver/modules/Catalog · high confidence
New appserver Checkout module with one-page checkout and WeChat Pay support
This change introduces a new \Checkout\ module for the appserver API, providing endpoints for a one-page checkout flow and WeChat (Wx) specific order placement. The module includes controllers for cart management (\CartController\) and checkout steps (\OnepageController\, \WxController\), along with block classes (\Index\, \Placeorder\, \Wxplaceorder\) that handle cart info retrieval, address initialization, order generation, and payment method selection (including Alipay and WeChat Pay). Users can now interact with the checkout process via the appserver API, including adding items to the cart, selecting shipping/payment methods, and placing orders with support for guest account creation.
app/appserver/modules/Checkout · high confidence
New appserver Customer module for mobile API access
Introduced a new Customer module in the appserver to expose customer-facing functionality via REST APIs. This includes controllers for account management (login, logout, profile updates, password reset), address book management (list, edit, remove), and contact us submissions. It also adds support for third-party social logins via Facebook and Google, as well as WeChat integration. The module provides the necessary backend endpoints for mobile clients to handle user authentication, profile data, and order tracking.
app/appserver/modules/Customer · high confidence
New appserver Payment module with PayPal, Alipay, and WeChat H5/JSAPI support
The appserver now includes a dedicated Payment module that exposes REST endpoints for initiating and reviewing orders via PayPal (Standard and Express), Alipay (Standard), and WeChat Pay (H5 and JSAPI). This adds server-side checkout capabilities for these gateways, allowing mobile and headless clients to start payments, handle IPN/webhook callbacks, and verify transaction status without relying on the web frontend.
app/appserver/modules/Payment · high confidence
New article index block for CMS content rendering
A new PHP block class (Index.php) has been added to the CMS article module to handle the display of individual article pages. This component retrieves active article data by primary key, registers necessary SEO meta tags (keywords, description) and page titles, and returns structured data including the article title, content, and creation date for the view layer.
app/appfront/modules/Cms/block/article · high confidence
New base configuration manager interface
A new configuration management interface has been added for the base theme settings. This change introduces a dedicated form for editing base configuration parameters, including fields for language attributes and text areas, along with standard save and cancel actions. The interface is styled with specific CSS rules for layout and form elements to ensure a consistent user experience within the admin panel.
app/appadmin/theme/base/default/config/base · high confidence
New cache management interface in the admin panel
A new cache management page has been added to the backend administration interface. This page provides a user-facing view for managing cache entries, including search functionality and pagination controls, allowing administrators to refresh or clear caches from various entry points.
app/appadmin/theme/base/default/fecadmin/cache · high confidence
New cart block implementation for the checkout module
The \app/appfront/modules/Checkout/block/cart/Index.php\ block has been added to handle the backend logic for the checkout cart page. This implementation retrieves and formats cart data, including product details, custom options (such as color and size selections), and SPU options, for display to the user. It also manages breadcrumbs navigation based on store configuration, initializes page metadata (title, keywords, description), and generates trace information for analytics when enabled. Additionally, it checks for PayPal Express payment availability and returns structured data including currency info and cart totals.
app/appfront/modules/Checkout/block/cart · high confidence
New catalog helpers for price formatting and language-aware review aggregation
Added two new helper classes to the Catalog module: \Price\ and \Review\. The \Price\ helper provides a method to format product prices and special prices into a standardized structure containing currency symbols and values. The \Review\ helper introduces logic to aggregate product review counts and star ratings, with support for filtering these metrics by the current store language via a \filterByLang\ configuration flag. It also calculates the percentage distribution of star ratings (0-5 stars) for display purposes.
app/appfront/modules/Catalog/helpers · high confidence
New category listing and filtering block components
Added new PHP block classes for the catalog category module, including \Index.php\ for rendering category product lists with sorting, pagination, and subcategory filtering, \Price.php\ for handling product price display logic, and \Page.php\ as a placeholder for pagination configuration. These components enable the frontend to fetch and display category-specific product data, apply price filters, and manage navigation within category pages.
app/appfront/modules/Catalog/block/category · high confidence
New check-money payment flow and success page controllers
Added CheckmoneyController and SuccessController to handle the offline check-money payment process. CheckmoneyController manages the payment start action, which clears the cart and redirects to the payment gateway, and the success action, which clears the cart for guest users and renders the success view. SuccessController provides a generic index action to render the final payment success page using block data.
app/appfront/modules/Payment/controllers · high confidence
New configuration block for HTML5 catalog settings
Added a new Manager class for the apphtml5catalog configuration block in the admin panel. This introduces a dedicated interface for managing HTML5 catalog-specific settings, including options for category and product breadcrumbs, sidebar filters (attributes, categories, price), pagination limits, product display rules (showing only one SKU per SPU), and review page configurations (captcha, counts, login requirements).
app/appadmin/modules/Config/block/apphtml5catalog · high confidence
New configuration block for app front catalog settings
Added a new Manager block for the appfrontcatalog configuration module, enabling administrators to manage product and category display settings (such as breadcrumbs, filters, and image dimensions) via the admin interface. This block retrieves and persists these settings through the store base config service.
app/appadmin/modules/Config/block/appfrontcatalog · high confidence
New configuration interface for App HTML5 Home settings
Administrators now have a dedicated form to manage App HTML5 Home configuration options within the admin theme. This new interface allows users to save and cancel changes to the home page settings via a validated form submission.
app/appadmin/theme/base/default/config/apphtml5home · high confidence
New console commands for order sales computation and pending stock return
Added a new Order console module with controllers to manage order-related background tasks. The \ItemController\ provides commands to count orders, calculate pagination, and compute seller sales scores by aggregating product quantities from recent paid orders. The \ProductController\ includes a command to return inventory for pending orders that have not been paid within a specified time frame, ensuring stock is released back to products.
app/console/modules/Order · high confidence
New console module for product data synchronization and search indexing
A new \Product\ console module has been added to manage the synchronization and indexing of product data between MySQL and MongoDB. This includes controllers to sync inventory quantities from MySQL to MongoDB (\QtyController\), synchronize product data in both directions (\MysqldatatomongoController\, \MongodatatomysqlController\), compute final prices (\PriceController\), and manage full-text search indexes and data for multi-language support via MongoDB and XunSearch (\SearchController\).
app/console/modules/Product · high confidence
New customer contact form block with input sanitization
Added the \Index\ block for the customer contacts module, which handles the display and submission of the contact form. The implementation includes validation for required fields (name, email, comment) and email format, supports optional CAPTCHA verification based on store configuration, and applies HTML encoding to user inputs to mitigate XSS risks before processing.
app/appfront/modules/Customer/block/contacts · high confidence
New email body templates for customer account and contact events
Added new EmailBody classes for the forgot password, login, registration, contact, and newsletter events within the Customer module's mailer block. These templates define the data structure (including user details, store info, and action URLs) passed to the email rendering engine, enabling the system to generate specific transactional emails for these customer interactions.
app/appfront/modules/Customer/block/mailer · high confidence
New email configuration block for admin settings
Added a new Manager block at app/appadmin/modules/Config/block/email that provides an administrative interface for configuring email-related system parameters. This includes settings for base store contact information (name, phone, email), SMTP server details (host, username, password, port, encryption), and toggles for enabling email notifications across various user flows such as registration, login, password reset, contact forms, newsletters, and guest/registered order processes.
app/appadmin/modules/Config/block/base, app/appadmin/modules/Config/block/email · high confidence
New error handling and service logging components
The components directory now includes custom error handlers (AppfrontErrorHandler, AppserverErrorHandler) that standardize API responses by returning structured JSON data for exceptions instead of default error pages, while excluding 404s from collection. Additionally, a ServiceLog component has been added to track service execution details, allowing logs to be saved to the database or printed directly in the frontend HTML based on configuration settings.
components · high confidence
New helper classes for country, formatting, and shipping utilities
Added three new helper classes to the appfront module: \Country\ provides static methods to generate HTML for state/region selection in shipping and billing forms; \Format\ offers a utility to format price values with a specified number of decimal places; and \Shipping\ is introduced as an empty base class extending \yii\\base\\BaseObject\, likely serving as a placeholder for future shipping-related logic.
app/appfront/helper · high confidence
New home page block with SEO and product data support
A new block class for the CMS home page has been added to manage home page content and metadata. This block now retrieves featured and best-selling products, explicitly including review ratings (reviw\_rate\_star\_average) and review counts in the product data. It also initializes the page head by registering meta tags for title, keywords, and description based on store configuration, ensuring proper SEO setup for the home page.
app/appfront/modules/Cms/block/home · high confidence
New login models for admin and customer authentication
Added \AdminUserLogin\ and \CustomerLogin\ model classes to handle authentication logic for admin and customer users respectively. These models validate credentials (username/email and password) and manage the login process, including setting cookie durations based on session timeout settings to keep account and cart session lifetimes consistent.
fancyecommerce/fecshop · high confidence
New mobile shopping cart page with PayPal Express integration
A new HTML5 shopping cart view has been added for the mobile app, allowing users to manage cart items, apply discount coupons, and view detailed cost breakdowns including sub-weight and sub-volume. The page now supports PayPal Express Checkout, rendering a dedicated button for one-click payments alongside the standard 'Proceed to Pay' option.
app/apphtml5/theme/base/html5/checkout/cart · high confidence
New product information editing blocks for the admin catalog
The admin interface now includes dedicated PHP blocks for managing product details, specifically \Manageredit\ for single-product editing, \Managerbatchedit\ for bulk operations, \Index\ for the product list view, \Imageupload\ for handling image uploads, and \Getproductcategory\ for retrieving category trees. These components provide the backend structure for editing product attributes, managing custom options, handling image uploads with thumbnail/detail flags, and displaying product data in the admin catalog module.
app/appadmin/modules/Catalog/block/productinfo · high confidence
New shell scripts for data synchronization, search indexing, and maintenance
Added a suite of command-line shell scripts to the \shell/\ directory to support backend maintenance tasks. These include \fullSearchSync.sh\ and \deleteXunSearchAllData.sh\ for initializing and managing product search indexes (supporting MongoDB full-text and XunSearch), \urlRewrite.sh\ for regenerating URL rewrites and cleaning up stale entries, and \sitemapGeneral.sh\ for generating XML sitemaps. The update also introduces data synchronization utilities (\syncCategoryAndProducMysqlDataToMongo.sh\, \syncCategoryAndProductMongoDataToMysql.sh\, \syncMysqlProductQtyToMongo.sh\) to move product and category data between MySQL and MongoDB, alongside scripts for computing final prices (\computeProductFinalPrice.sh\), calculating seller counts (\order/productSellerCount.sh\), and returning inventory from pending orders (\order/returnPendingProductQtyStock.sh\). A \README.md\ file documents the usage of these new tools.
shell · high confidence
One-page checkout now supports order remarks
The one-page checkout template has been updated to include an optional 'Order Remark' field, allowing customers to add notes to their order before placing it. This new textarea is integrated into the middle column of the checkout form, alongside shipping and payment sections, and is submitted with the order.
app/apphtml5/theme/base/html5/checkout/onepage · high confidence
Product page now supports custom options, detailed reviews, and shipping dimensions
The product detail page now displays custom options (such as color or size selectors) that can trigger image changes, alongside a dedicated section for customer reviews with star ratings and counts. Additionally, product specifications now include shipping details like weight (in grams) and dimensions (length, width, height), and the page layout has been adjusted to support these new data points.
app/appfront/modules/Catalog/block/product · high confidence
Product review submission and listing functionality added to appfront
This change introduces the \Add\ and \Lists\ block classes for the Catalog module's product review feature. The \Add\ block enables customers to submit product reviews, including validation for required fields, optional CAPTCHA protection, and a configurable permission check that restricts reviews to users who have previously ordered the product. The \Lists\ block handles the display of product reviews, supporting pagination, filtering by product SPU, and showing review statistics such as average star ratings and total count. These blocks read configuration settings (like review page item count and CAPTCHA enablement) from the store configuration.
app/appfront/modules/Catalog/block/reviewproduct · high confidence
Security
Admin customer controllers enable CSRF validation
New controllers for managing customer accounts, contacts, and newsletter subscriptions in the admin panel now enforce CSRF (Cross-Site Request Forgery) protection. This change ensures that POST requests to these endpoints are validated, preventing unauthorized state-changing actions from external sources.
app/appadmin/modules/Customer/controllers · high confidence
Architecture
Admin module refactored with new base controller and block architecture
The appadmin module introduces a new base controller (AppadminController) and block classes (AppadminbaseBlock, AppadminbaseBlockEdit) along with their corresponding interfaces. This change establishes a structured, multi-theme aware rendering system for the admin interface, allowing views and layouts to be resolved from local or third-party theme directories. It also implements role-based access control checks in the controller's beforeAction method and provides a standardized block-based architecture for generating list, search, and edit forms, replacing the previous ad-hoc implementation.
app/appadmin/modules · high confidence
Behavioural changes
Add admin theme templates for product review management
The admin interface for managing product reviews now includes dedicated view templates (index.php and manageredit.php) within the base default theme. These files provide the HTML structure for the review listing page and the edit dialog, including fields for product details, store, language code, and review date, along with localized labels for the admin UI.
app/appadmin/theme/base/default/catalog/productreview · high confidence
Add mobile redirect for catalog search
The Catalogsearch module now includes an IndexController that handles product search requests. For mobile users, the controller detects the device type and redirects the request to the Vue-based frontend, while desktop users are served the standard search results page.
app/appfront/modules/Catalogsearch/controllers · high confidence
Added HTML5 view templates for newsletter and payment success/error states
This change introduces new HTML5 theme view files for the customer newsletter and payment modules. Specifically, it adds templates for the newsletter index (displaying a message) and error states, as well as success pages for general payments and the checkmoney offline payment method. These views ensure that users see appropriate confirmation messages and order increment IDs after completing transactions or encountering newsletter errors on the HTML5 interface.
app/apphtml5/theme/base/html5/customer/newsletter, app/apphtml5/theme/base/html5/payment, app/apphtml5/theme/base/html5/payment/checkmoney · high confidence
Added empty index template for fecadmin
An empty PHP template file has been added at app/appadmin/theme/base/default/fecadmin/index/index.php. This file serves as a placeholder within the admin theme structure, likely supporting the multi-template mechanism mentioned in the commit message, though it currently contains no content or logic.
app/appadmin/theme/base/default/fecadmin/index · low confidence
Added error handling page for WeChat H5 payments
A new review.php template has been added to the WeChat H5 payment flow, providing a user-facing error page that displays payment failure messages and offers a 'Retry Payment' button to restart the transaction.
app/apphtml5/theme/base/html5/payment/wxpayh5 · high confidence
Admin RBAC system refactored to use URL keys
The database schema for the admin panel's role-based access control has been restructured. The previous \admin\_menu\ and \admin\_role\_menu\ tables are dropped and replaced with \admin\_url\_key\ and \admin\_role\_url\_key\ tables, shifting the permission model from hierarchical menu nodes to granular URL-based resources. This migration also includes data updates to standardize URL keys with leading slashes and translates the resource names in the \admin\_url\_key\ table from Chinese to English.
migrations · high confidence
Admin account management UI moved to appadmin
The admin account interface (account index, manager list, and manager edit views) has been migrated from the fecadmin library package to the appadmin application. This change introduces new PHP view templates for the account dashboard, user management table, and role assignment forms, ensuring the backend account management functionality is now handled within the appadmin module.
app/appadmin/theme/base/default/fecadmin/account · high confidence
Admin catalog controllers enable CSRF validation and implement product access controls
The Catalog admin controllers (Category, Productinfo, Productbrand, Productreview, etc.) now enforce CSRF protection on all actions and restrict product editing, saving, and deletion to the creating user unless the admin has specific 'all' role permissions. Productinfo also adds SPU uniqueness validation.
app/appadmin/modules/Catalog/controllers · high confidence
Admin category Excel upload now skips rows without a category ID
The category upload block in the admin module now handles Excel files more robustly by skipping any rows that do not contain a category ID. Previously, missing IDs might have caused errors or unexpected behavior; now, the \saveCategory\ method checks for the presence of a category ID and returns true to continue processing if it is absent, allowing users to upload files with empty or incomplete rows without interrupting the entire import process.
app/appadmin/modules/Catalog/block/categoryupload · high confidence
Admin category management UI and image handling overhaul
The admin interface for catalog categories has been redesigned with a new layout featuring a category tree on the left and a tabbed detail view on the right. This update introduces the ability to upload and delete thumbnail and category images directly within the admin panel, including a dedicated delete button for images. The category list view now includes CSRF protection for delete actions, and the product association tab has been enhanced with AJAX-powered search, sorting, and pagination capabilities.
app/appadmin/theme/base/default/catalog/category · high confidence
Admin configuration for multi-language settings with default language protection
A new Manager class has been added to the multi-language configuration block to handle the storage and validation of language settings. This component enables administrators to manage language codes and associated search engine configurations via the admin panel. Crucially, it enforces a validation rule that prevents the deletion of the system's default base language code, ensuring that a valid default language always remains configured.
app/appadmin/modules/Config/block/mutillang · high confidence
Admin dashboard layout and login page redesign
The admin interface now features a new dashboard layout (dashboard.php) that integrates ECharts for statistical visualizations and displays recent system statistics such as product counts. The login page (login.php) has been updated with a new visual style and includes a language selector dropdown. Additionally, a simplified main layout (main\_admin.php) has been introduced to support the new multi-template mechanism for the admin theme.
app/appadmin/theme/base/default/layouts · high confidence
Admin extension market now supports manual installation and upgrade
The admin extension market block now allows administrators to manually install and upgrade extensions. New \Login\ and \Manager\ classes handle authentication and list management, introducing logic to detect which extensions are eligible for manual installation or upgrade based on local installation status and version comparisons. This enables users to manage extensions directly via the admin interface rather than relying solely on automated processes.
app/appadmin/modules/System/block/extensionmarket · high confidence
Admin interface receives a comprehensive visual overhaul
The admin panel's appearance has been significantly updated with new CSS files (appadmin.css, bootstrap-appadmin.css, login.css, jquery-editable-select.css) that modernize the UI. This includes a refreshed layout with updated sidebar and header styling, improved form controls with rounded borders and new input colors, and enhanced table and pagination components. The login page also receives a dedicated style update, and the interface now supports new UI elements like editable select dropdowns and dialog backgrounds.
app/appadmin/theme/base/default/assets/css · high confidence
Admin login page rebranded to FecMall with CSRF protection
The admin login interface has been updated to display the FecMall brand name instead of the previous FECMALL/Fecshop branding. The login form now includes CSRF token protection via \CRequest::getCsrfInputHtml()\ to enhance security, and the footer links and documentation references have been updated to point to the FecMall website and guides.
app/appadmin/theme/base/default/fecadmin/login · high confidence
Admin system log view migrated to Fecadmin module
The admin system log index block has been moved to the Fecadmin module (app/appadmin/modules/Fecadmin/block/log/Index.php) and now uses the fecshop appadmin service for system logs. This change updates the underlying block implementation and includes translations for the log view labels (Account, User Name, Resource, etc.), ensuring the admin log interface is consistent with the Fecadmin module structure.
app/appadmin/modules/Fecadmin/block/log · high confidence
Admin user password update capability added to My Account block
The Index block in the Fecadmin My Account module now supports updating the current admin user's password via an AJAX request. When the 'updatepass' parameter is provided, the block calls the service layer to reset the password and returns a JSON response indicating success or failure. Additionally, the block class now extends \\yii\\base\\BaseObject instead of the previous parent class.
app/appadmin/modules/Fecadmin/block/myaccount · high confidence
App HTML5 home page with language/currency switching and lazy loading
The home page template for the App HTML5 theme now includes a footer bar allowing users to switch between available languages and currencies directly from the homepage. The page also implements lazy loading for images to improve performance and displays a featured products list with infinite scroll support.
app/apphtml5/theme/base/html5/cms/home · high confidence
Catalog module initialization and layout configuration
The Catalog module for the appfront area is now initialized, setting up the controller and block namespaces and configuring the default page layout to 'main.php'.
app/appfront/modules/Catalog · high confidence
Custom Yii2 framework extensions for FecShop
This change introduces a set of custom extensions to the Yii2 framework to support FecShop's specific requirements. The \Yii\ class is extended to provide a service container and a class rewrite map for overriding core models. Authentication is customized via \AppapiQueryParamAuth\ and \QueryParamAuth\ to handle API and web token validation through service layers. The \Request\ class is rewritten to support SEO-friendly URL rewrites by mapping custom URLs to internal Yii routes via a database lookup. The \User\ component is modified to automatically restore the shopping cart ID when a user logs in via cookie. Additionally, the \ErrorHandler\ is updated to mask sensitive database connection details in error logs, the \View\ class gains support for registering external JavaScript files, and the \PhpMessageSource\ is extended to merge translation files from multiple base paths.
yii · high confidence
Customer account edit page now supports breadcrumbs and HTML encoding
The customer account editing interface now includes breadcrumb navigation, controlled by the \account\_information\_breadcrumbs\ configuration parameter, allowing users to easily navigate back from the edit page. Additionally, user input for account details is now HTML-encoded before processing, which mitigates cross-site scripting (XSS) risks by sanitizing data entered in fields such as first name, last name, and password changes.
app/appfront/modules/Customer/block/editaccount · high confidence
Customer address management blocks implemented with XSS protection and breadcrumbs
The Customer module now includes dedicated block classes for managing shipping addresses. The new Edit block handles address updates with HTML encoding to mitigate XSS risks, auto-fills user details (email, name), and supports dynamic state selection. The Index block lists the current user's addresses with pagination and allows removal. Both blocks integrate breadcrumb navigation, controlled by specific module parameters.
app/appfront/modules/Customer/block/address · high confidence
Font Awesome assets are now bundled locally
The Font Awesome 4.7.0 CSS and font files are now included directly in the application's default theme assets. This change ensures that the admin interface loads icons from the local server rather than a remote CDN, resolving display issues that occurred when the backend was accessed over HTTPS.
app/appadmin/theme/base/default/assets/font-awesome · high confidence
HTML5 home page product display and pricing formatting
The HTML5 CMS home page now renders product listings with consistent two-column grid layout and displays out-of-stock items with a visible 'OUT OF STOCK' badge. Product prices are formatted using the \numberFormat\ helper to ensure consistent decimal display (e.g., xx.00), and images utilize lazy loading for improved performance.
app/apphtml5/theme/base/html5/cms/home/index · high confidence
Initialize Site module with default home layout
The Site module in the appfront area is now initialized to automatically set the default page layout to 'home.php' for web requests. This ensures that pages within this module render using the specified layout by default without requiring manual configuration.
app/appfront/modules/Site · high confidence
Migrate Fecadmin controllers to appadmin
The Fecadmin controllers (Account, Cache, Config, Error, Index, Log, Login, Logout, Logtj, Myaccount, Resource, Role, Systemlog) have been moved from the fecadmin package to the appadmin module. This migration includes implementing CSRF validation for most controllers, updating the login/logout flow to use the new appadmin service, and deprecating the Systemlog manager feature.
app/appadmin/modules/Fecadmin/controllers · high confidence
My Account page now supports multiple languages
The My Account view template has been updated to use the translation service for all user-facing labels (Account, Old Password, New Password, Password Confirmation, Save, Cancel). This change enables the My Account interface to be displayed in multiple languages, improving accessibility for non-English speaking users.
app/appadmin/theme/base/default/fecadmin/myaccount · high confidence
New PayPal Express Checkout flow with deferred inventory deduction
The PayPal Express payment block now implements a complete checkout sequence (Start, Review, Placeorder) that defers inventory deduction and cart clearing until after payment confirmation. Previously, stock was deducted immediately upon order generation; the new logic in Placeorder.php generates the order first, waits for the PayPal DoExpressCheckoutPayment success callback, and only then clears the cart and deducts stock. This prevents automated scripts from releasing reserved inventory if the payment fails or is cancelled. The Start.php block also adds a preliminary stock check before initiating the PayPal token request.
app/appfront/modules/Payment/block/paypal/express · high confidence
New helper for translating product status and stock options
A new helper class (Product) has been added to the Catalog module to provide translated labels for product status (Enable/Disable) and stock availability (In stock/Out of stock). This ensures that these specific product attributes are correctly localized in the admin interface.
app/appadmin/modules/Catalog/helper · high confidence
New product search block implementation with XSS protection and trace data
The Catalogsearch module now includes a new Index block class that handles product search logic, including pagination, filtering, and sorting. This change introduces specific security hardening by filtering XSS attack characters in user-editable data and implements a trace data feature that sends search query and result quantity information to analytics (GA) when enabled. The block also integrates with MongoDB full-text search capabilities and ensures all classes inherit from \\yii\\base\\BaseObject.
app/appfront/modules/Catalogsearch/block · high confidence
Page caching and mobile redirection for CMS home and article pages
The Cms controllers for the home and article pages now include page caching via Yii's PageCache filter, with cache keys varying by store, currency, and specific URL parameters, while allowing cache bypass via a disable parameter. Additionally, these controllers implement mobile detection to redirect mobile users to the appropriate mobile app server path.
app/appfront/modules/Cms/controllers · high confidence
Payment success page now clears cart and coupon data
The payment success page block now automatically clears the shopping cart products and coupons after an order is placed. This ensures that completed transactions do not leave residual items in the cart, improving the user experience by resetting the shopping state upon successful payment.
app/appfront/modules/Payment/block/success · high confidence
Prevent deletion of base currency in admin configuration
The currency configuration manager now validates that the base currency cannot be removed from the list of active currencies. When saving currency settings, the system checks if the configured base currency is still present; if it has been deleted, the save operation is rejected with an error message, ensuring the store always retains a valid base currency.
app/appadmin/modules/Config/block/currency · high confidence
Project rebranding to Fecmall and license change to BSD-3-Clause
The project has been renamed from Fecshop to Fecmall, with documentation and configuration updated to reflect the new identity and point to the Fecmall 2.x installation guides. The open-source license has been changed from MIT to BSD-3-Clause, and the repository now includes standard configuration files (.editorconfig, .php\_cs.dist, .styleci.yml) to enforce code style and formatting rules for developers.
(repo-wide) · high confidence
Unauthenticated users are redirected to login when adding a product to favorites
The product favorite block now checks if a user is logged in before attempting to add a product to their favorites list. If the user is a guest, the system saves the current product URL as the post-login redirect target and immediately redirects the user to the login page, preventing errors or undefined behavior for unauthenticated requests.
app/appfront/modules/Catalog/block/favoriteproduct · high confidence
Dependencies
Initial release of Yii2 Fecshop ecommerce extension
This change introduces the initial composer.json manifest for the fancyecommerce/fecshop Yii2 extension, establishing the project's core dependencies. It requires PHP 5.4.0 or higher and Yii2 version 2.0.40 or later, while also pulling in specific versions of supporting libraries such as yiisoft/yii2-swiftmailer, fancyecommerce/fec, fancyecommerce/fec\_admin, league/iso3166, facebook/graph-sdk, geoip2/geoip2, and hightman/xunsearch. The package is licensed under BSD-3-Clause and configured with PSR-4 autoloading for the fecshop namespace.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 24.
Lenses
- Code Health 28
- Architecture 93
- Maturity 50
- Readiness 8
- Security 66
- Accessibility 30
Changes since last survey
- 300 commits — 291 feature/other, 9 fixes
By area
- app/appadmin — 52 commits
- app/appfront — 43 commits
- services/product — 32 commits
- services/Helper.php — 28 commits
- app/appapi — 27 commits
- migrations/mysqldb — 18 commits
- app/apphtml5 — 11 commits
- (root) — 8 commits
- services/page — 8 commits
- config/services — 7 commits
- app/appserver — 6 commits
- services/helper — 6 commits
- services/category — 5 commits
- (repo) — 4 commits
- services/cms — 4 commits
- models/mongodb — 3 commits
- models/mysqldb — 3 commits
- services/FecshopLang.php — 3 commits
- services/Image.php — 3 commits
- services/Order.php — 3 commits
Notable commits
- fix: Fix parameter annotation and example in Cart.php
- fix: appfront menu html bug
- fix: bug fix
- fix: bug fix: admin delete mutil-account
- fix: bug fix: admin user change password >=6
- fix: bug fix: cms staticblock status enable
- fix: cms article bug fix: article enable status
- fix: js bug fix: product page change qty js error - custom_option_arr is not defined
- fix: sql bug
- change: 2.13.1
- change: 2.13.3
- change: 2.15.1
- change: 2.17.1
- change: 2.17.2
- change: 2.17.4
- change: AdminUserForm model
- change: AppadminbaseBlockEdit
- change: Create SECURITY.md
- change: Fecmall Use BSD LICENSE
- change: Mention AI Codex in README
- …and 280 more
Architecture
- 0 containers · 1 bounded contexts · 0 dependency edges (baseline)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
fecshop/yii2_fecshop was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 19 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 19c5cb8f4848a6ef0194e3b9add050c5853cae94 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-13a154b7f5d1.