The Ajax Hub Hybrid is a hybrid control panel designed for use with Ajax security system, and can connect up to 100 wired and wireless Ajax devices. (Read more)
The Ajax Hub Hybrid is a hybrid control panel designed for use
with Ajax security system. You can connect up to 100 wired and
wireless Ajax devices to protect against intrusion, fire, and
flooding, and also allow you to control electrical appliances
according to scenarios or manually — in a mobile app or by pressing
the Button.
To monitor the operation of all security system devices, the hub
communicates with the connected devices using three encrypted
protocols:
1. Jeweller is a radio protocol for
transmitting events and alarms from Ajax wireless devices. The
communication range is up to 2,000 m without obstacles: walls,
doors, or inter-floor constructions.
2. Wings is a radio protocol for
transmitting photos from MotionCam and MotionCam Outdoor detectors.
The communication range is up to 1,700 m without obstacles: walls,
doors, or inter-floor constructions.
3. Fibra is a wired protocol for
transmitting events and alarms from Ajax wired devices. The
communication range is up to 2,000 m when connected via twisted
pair U/UTP cat.5.
If a detector is triggered, the system raises an alarm in less
than a second, regardless of the communication protocol. In case of
an alarm, the hub activates the sirens, starts the scenarios, and
notifies the security company’s monitoring station and all
users.
Topology
Star Topology
Fibra communication technology allows you to wire independent
lines up to 2 km long. Eight lines in one system run by Hub Hybrid
minimize potential damage. Even a completely broken line leaves the
security system at 87% operational. And with wireless sensors, this
percentage will be even higher.
With Fibra, you get the flexibility to build a star topology or
use 8 lines as zones in an iconic burglar alarm. Up to 100
hardwired devices in any configuration, allows you get an
intelligent security system built to your exact requirements.
Ring Topology
For a 100% secure wired system, the Hub Hybrid also supports
ring connection topology.
Up to four ring circuits can be added to each system and in the
line breakage event, the ring splits into two working segments, the
devices continue to operate, and the system notifies a security
company and users about the incident. Upcoming OS Malevich updates
will provide the ring topology support.
Jeweller Wireless Technology
In addition to wired devices, the Hub Hybrid also allow for up
to 100 wireless devices to be added to the system, which is ideal
for remote area where wiring would be difficult, or as an
additional security measure against scenarios where the alarm wire
has been sabotaged.
Jeweller radio protocol provides two-way communication between
the hub and wireless devices at a distance of up to 2,000 meters,
allowing remote system control and alarm transmission in 0.15
seconds.
Jeweller applies time frames to synchronize devices
communication, authentication to prevent forgery, and encryption to
protect the data. An energy-efficient protocol provides wireless
devices with up to 7 years of battery life.
Up to 5 range extenders with a communication range of up to
1,800 meters can be connected to Hub Hybrid by radio or cable via
Ethernet.
Anti-sabotage protection
Hub Hybrid has 3 communication channels for connecting to the
Ajax Cloud server: Ethernet and two SIM cards. This allows you to
connect the device to three different communication providers at
the same time. If one of the communication channels is unavailable,
the hub will automatically switch to another one and inform the
control panel of the security company and system users.
When a jamming attempt is detected, the system switches to an
idle radio frequency and sends notifications to the control panel
of the security company and to system users.
The hub regularly checks the quality of communication with all
connected devices. If any device loses connection with the control
panel, upon expiry of the time specified by the administrator, all
system users (depending on the settings), as well as the monitoring
station of the security company, will receive a notification about
the incident.
No one can turn off the hub unnoticed, even when the facility is
disarmed. If an intruder tries to open the hub casing, the tamper
button will trigger immediately. The alarm notification will be
sent to the security company and to system users.
The hub rechecks Ajax Cloud connection at regular intervals. The
ping period is specified in the hub settings. If a minimum ping
period is set, the server may notify the users and the security
company in as little as 60 seconds after the connection is
lost.
Features:
8 Fibra lines to connect wired devices
Up to 100 devices in the system
3 communication channels: Ethernet and two SIM cards
Wired & wireless communication technology with a range of
up to 2,000 m
Wireless communication technology to transmit the photos at a
distance of up to 1700 m
More than two days of running on a backup battery
Configuring via a smartphone or desktop app
Line scanning function
Device identification via LED indication or by alarm
YOU MIGHT ALSO NEED
Loading
Loading
Loading
Loading
Loading
Loading
Loading
SPECIFICATIONS
Capacity
Ajax devices
Up to 100
Wired and wireless devices in any proportion
5 range extenders max
10 sirens max
Cameras or DVRs
Up to 25
RTSP support
Seamless integration with the Dahua, Hikvision, Safire, EZVIZ,
Uniview IP cameras and DVRs
Users
Up to 50
Any number of admin users within the limit
PRO accounts for installers and monitoring companies
Access management for regular users
Automation scenarios
Up to 32
Alarm reactions
Scheduled actions
Security mode changing reactions
Temperature changing reactions
Humidity changing reactions
Reactions to changes in CO2 concentration
Reactions to pressing the Button
Security groups
Up to 9
Rooms
Up to 50
Wired
communication
Fibra communication
technology
Proprietary wired communication
technology. Fibra combines the reliability of wires with the
freedom of radio connection.
It features:
Two-way communication
Advanced anti-sabotage
Instant notifications
Remote configuration via the Ajax apps
Compatible wire
4–core cable
Bus connection
Input
8 bus line
Compatible with Fibra devices only
Bus line length
up to 2,000 m
When using the U/UTP cat.5 twisted pair
Power supply of devices
up to 14.4 W
For all connected wired devices
Topologies
Star
Ring (coming soon)
In the line breakage event, the ring splits into two working
segments, the devices continue to operate, and the system notifies
a security company and users about the incident. Upcoming OS
Malevich updates will provide the ring topology support
Devices polling interval
from 12 to 300 s
Adjusted by PRO or user with admin rights in the Ajax
app
Wireless
communication
Jeweller communication
technology
Proprietary wireless communication
technology to transmit alarms and events.
It features:
Automatic switching between
communication channels
Switching between SIMs — up to 4
minutes.
Switching between 4G, 3G, and 2G networks of one SIM —
instantly.
Switching between Ethernet and SIM — instantly
Communication channels
prioritization
1. Ethernet
2. Cellular connection
Communication channels work in parallel to increase system
reliability. Most of the data is transmitted via
Ethernet.
Notifications
Supported notification types
Push
SMS
Calls
Event types
Alarms
Malfunctions
Events
Security mode changing
The notification types are configured individually for each
user.
Monitoring
Supported protocols
SurGard (Contact ID)
SIA (DC-09)
Other proprietary protocols
Event types
System alarms and events
Photo verifications
Panic button coordinates
Power supply
Power supply
110–240 V~, 50/60 Hz
Up to 10 W of mains power consumption
Backup
12 V⎓ battery (not included)
Space in the body and rails for installing batteries with a
capacity of 4 Ah and 7 Ah.
Autonomous operation
up to 60 hours
Hub Hybrid with a 7 Ah backup battery can power a system of 30
wired devices for 60 hours. Wireless devices operate on batteries
and do not require additional power supply.
* External websites provide additional content that supports the content on connectec.uk however the external Web site is subject to change and is beyond the control of Connectec Ltd. Connectec cannot guarantee the accuracy of content on external websites and does not endorse the information or products on any external websites. You will be subject to the external websites own privacy policy when you follow these links.
QUESTIONS AND ANSWERS
Get expert answers to questions specific to this product below or for more help visit our Q&A forum
Be the first to ask a question and help others interested in this product
REVIEWS
Read customer reviews or submit your review of this product
Thanks for taking the time to review this product. Your feedback helps us improve our products and services as well as helping other users make informed buying decisions.
There are no reviews for this product.
Why buy from Connectec?
SUPPORT
Our technical support team are experienced installation engineers with years of field experience.
SERVICE
Customer service is our top priority. We always try to ensure we offer a first class service too all our customers.
DELIVERY
We offer FREE mainland UK delivery on orders over £75 and FREE next day delivery on orders over £150*.
PARTNERS
We are approved resellers for direct access to manufacturer warranty and support.
* Qualifying products only, subject to terms. For more information view our delivery information.
This site uses cookies for essential website functions. You can choose to enable cookies that help us improve our services and promote relevant content to you.
For more information please see our Privacy Policy.
Array
(
[ALL] => Array
(
[0] => 03:53:35; PREPARED; 0.001022; Url; __construct; SELECT * FROM ct_url_alias WHERE store_id = ? OR store_id = 0; 1
[1] => 03:53:35; PREPARED; MEMCACHE; index; SELECT * FROM ct_setting WHERE store_id = 0 OR store_id = ? ORDER BY store_id ASC; 1
[2] => 03:53:35; PREPARED; MEMCACHE; __construct; SELECT * FROM ct_customer_group WHERE customer_group_id = ?; 1
[3] => 03:53:35; PREPARED; MEMCACHE; getCustomerCatalog; SELECT cc.* FROM ct_customer_catalog_customer ccc LEFT JOIN ct_customer_catalog cc ON cc.customer_catalog_id = ccc.customer_catalog_id WHERE (ccc.customer_id = ? AND ccc.customer_id != 0) OR ccc.customer_group_id = ?; 0|1
[4] => 03:53:35; STANDARD; 0.000750; ModelLocalisationCurrency; getCurrencies; SELECT * FROM ct_currency WHERE status = 1 ORDER BY title ASC
[5] => 03:53:35; STANDARD; 0.000173; Cart\Currency; __construct; SELECT * FROM ct_currency
[6] => 03:53:35; PREPARED; 0.000631; Cart\Tax; setAddress; SELECT tr1.tax_class_id, tr2.tax_rate_id, tr2.name, tr2.rate, tr2.type, tr2.tax_rate_register FROM ct_tax_rule tr1 LEFT JOIN ct_tax_rate tr2 ON (tr1.tax_rate_id = tr2.tax_rate_id) LEFT JOIN ct_zone_to_geo_zone z2gz ON (tr2.geo_zone_id = z2gz.geo_zone_id) LEFT JOIN ct_geo_zone gz ON (tr2.geo_zone_id = gz.geo_zone_id) WHERE z2gz.country_id = ? AND z2gz.zone_id = ? AND tr2.tax_rate_register = ?; 222|11|0
[7] => 03:53:35; PREPARED; 0.000328; Tracking; getNewTracker; SELECT tracking_id FROM ct_tracking WHERE tracker = ?; 3de3c62f4e7ce48f238e5feb79aa4a271ae9e1bc779466067629f76c4be32d11
[8] => 03:53:35; PREPARED; 0.000272; Url; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; security|
[9] => 03:53:35; PREPARED; MEMCACHE; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; intruder-alarms|
[10] => 03:53:35; PREPARED; MEMCACHE; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; wired-alarm-systems|
[11] => 03:53:35; PREPARED; 0.000236; Url; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; ajax-fibra-hybrid-alarm-system|
[12] => 03:53:35; PREPARED; MEMCACHE; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; ajax-fibra-panels-and-kits|
[13] => 03:53:35; PREPARED; 0.000333; Url; getRedirect; SELECT * FROM ct_url_redirect WHERE source = ? AND path = ?; ajax-hub-hybrid-4g-wired-wireless-alarm-panel|
[14] => 03:53:35; PREPARED; 0.001390; ModelCatalogProduct; getProduct; SELECT DISTINCT p.*, pav.available, pd.feature, pd.description, pd.specification, pd.tag, pd.meta_title, pd.meta_description, pd.product_note, IF(p.eol OR p.increment < 1, 1, p.increment) AS increment, IF(p.eol OR p.minimum < 1, 1, p.minimum) AS minimum, IF(p.eol, IF(p.maximum > 0, LEAST(pav.available, p.maximum), pav.available), IF(p.maximum > 0, p.maximum, 9999)) AS maximum, m.name AS manufacturer, m.image AS manufacturer_thumb, m.site AS manufacturer_site, m.support AS manufacturer_support, ss.name AS stock_status, ss.in_stock, ss.zero_checkout, COALESCE(AVG(r.rating), 0) AS rating, COUNT(DISTINCT r.review_id) AS reviews, p.sort_order , (SELECT GROUP_CONCAT(CONCAT(pv.variant_id, '|', pv.name)) FROM ct_product_variant pv WHERE pv.product_id = p.product_id GROUP BY pv.product_id ORDER BY pv.sort_order) AS variants FROM ct_product p LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id AND pav.store_id = 1 LEFT JOIN ct_review r ON (r.product_id = p.product_id AND r.status = '1') LEFT JOIN ct_stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN ct_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN ct_manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = ?; 17722
[15] => 03:53:35; PREPARED; 0.000291; ModelCatalogProduct; getProductKit; SELECT * FROM ct_product_kit WHERE product_id = ?; 17722
[16] => 03:53:35; PREPARED; 0.000844; ModelCatalogProduct; getProductPrice; SELECT p.cost, p.tax_class_id, COALESCE(pr.markup, p.markup) AS markup, COALESCE(pr.login, p.login) AS login, COALESCE(pr.trade, p.trade) AS trade, p.rrp, p.points, COALESCE(pd.price, prd.price, 0) AS discount_price, COALESCE(pd.percent, prd.percent, 0) AS discount_percent, COALESCE(pd.markup, prd.markup, 0) AS discount_markup, COALESCE(pd.date_end, '') AS discount_end, COALESCE(pd.reason, prd.reason, '') AS discount_reason, COALESCE(pd.customer_group_id, prd.customer_group_id, 0) AS customer_group_id FROM ct_product p LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id LEFT JOIN ct_price_rule pr ON pr.price_rule_id = p.price_rule_id LEFT JOIN ct_price_rule_discount prd ON prd.price_rule_id = pr.price_rule_id AND ((prd.customer_id = ? OR prd.customer_id = 0) AND (prd.customer_group_id = 0 OR prd.customer_group_id = ? OR FIND_IN_SET(prd.customer_group_id, ?)) AND prd.quantity <= ?) LEFT JOIN ct_product_discount pd ON pd.product_id = p.product_id AND ((pd.customer_id = ? OR pd.customer_id = 0) AND (pd.customer_group_id = 0 OR pd.customer_group_id = ? OR FIND_IN_SET(pd.customer_group_id, ?)) AND ((pd.date_start = '0000-00-00' OR pd.date_start < NOW()) AND (pd.date_end = '0000-00-00' OR pd.date_end > NOW())) AND pd.quantity <= ? AND (pd.quantity_end = '' OR pav.available > pd.quantity_end)) WHERE p.product_id = ? ORDER BY prd.quantity DESC, pd.quantity DESC, prd.sort_order ASC, pd.sort_order ASC LIMIT 1; 0|1||1|0|1||1|17722
[17] => 03:53:35; PREPARED; 0.000493; ModelCatalogProduct; getProductPath; SELECT DISTINCT *, (SELECT GROUP_CONCAT(cp.path_id ORDER BY level SEPARATOR '_') FROM ct_category_path cp WHERE cp.category_id = p2c.category_id GROUP BY cp.category_id) AS path FROM ct_product_to_category p2c WHERE p2c.product_id = ? AND p2c.primary_category = 1 AND p2c.store_id = ?; 17722|1
[18] => 03:53:35; PREPARED; 0.000530; ModelCatalogProduct; getProductVariant; SELECT pv.variant_id, pv.name AS variant_name, p.sku, p.model, p.mpn, p.ean, p.tax_class_id, pav.available, ss.name AS stock_status, ss.in_stock FROM ct_product_variant pv LEFT JOIN ct_product p ON pv.variant_id = p.product_id LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id AND pav.store_id = ? LEFT JOIN ct_stock_status ss ON p.stock_status_id = ss.stock_status_id WHERE pv.product_id = ? AND p.status > 1 AND (p.eol = 0 OR pav.available > 0) AND p.date_available <= CURDATE() ORDER BY pv.sort_order ASC; 1|17722
[19] => 03:53:35; PREPARED; 0.000232; ModelCatalogProduct; getProductKit; SELECT * FROM ct_product_kit WHERE product_id = ?; 17721
[20] => 03:53:35; PREPARED; 0.000675; ModelCatalogProduct; getProductPrice; SELECT p.cost, p.tax_class_id, COALESCE(pr.markup, p.markup) AS markup, COALESCE(pr.login, p.login) AS login, COALESCE(pr.trade, p.trade) AS trade, p.rrp, p.points, COALESCE(pd.price, prd.price, 0) AS discount_price, COALESCE(pd.percent, prd.percent, 0) AS discount_percent, COALESCE(pd.markup, prd.markup, 0) AS discount_markup, COALESCE(pd.date_end, '') AS discount_end, COALESCE(pd.reason, prd.reason, '') AS discount_reason, COALESCE(pd.customer_group_id, prd.customer_group_id, 0) AS customer_group_id FROM ct_product p LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id LEFT JOIN ct_price_rule pr ON pr.price_rule_id = p.price_rule_id LEFT JOIN ct_price_rule_discount prd ON prd.price_rule_id = pr.price_rule_id AND ((prd.customer_id = ? OR prd.customer_id = 0) AND (prd.customer_group_id = 0 OR prd.customer_group_id = ? OR FIND_IN_SET(prd.customer_group_id, ?)) AND prd.quantity <= ?) LEFT JOIN ct_product_discount pd ON pd.product_id = p.product_id AND ((pd.customer_id = ? OR pd.customer_id = 0) AND (pd.customer_group_id = 0 OR pd.customer_group_id = ? OR FIND_IN_SET(pd.customer_group_id, ?)) AND ((pd.date_start = '0000-00-00' OR pd.date_start < NOW()) AND (pd.date_end = '0000-00-00' OR pd.date_end > NOW())) AND pd.quantity <= ? AND (pd.quantity_end = '' OR pav.available > pd.quantity_end)) WHERE p.product_id = ? ORDER BY prd.quantity DESC, pd.quantity DESC, prd.sort_order ASC, pd.sort_order ASC LIMIT 1; 0|1||1|0|1||1|17721
[21] => 03:53:35; PREPARED; 0.000233; ModelCatalogProduct; getProductKit; SELECT * FROM ct_product_kit WHERE product_id = ?; 17720
[22] => 03:53:35; PREPARED; 0.000648; ModelCatalogProduct; getProductPrice; SELECT p.cost, p.tax_class_id, COALESCE(pr.markup, p.markup) AS markup, COALESCE(pr.login, p.login) AS login, COALESCE(pr.trade, p.trade) AS trade, p.rrp, p.points, COALESCE(pd.price, prd.price, 0) AS discount_price, COALESCE(pd.percent, prd.percent, 0) AS discount_percent, COALESCE(pd.markup, prd.markup, 0) AS discount_markup, COALESCE(pd.date_end, '') AS discount_end, COALESCE(pd.reason, prd.reason, '') AS discount_reason, COALESCE(pd.customer_group_id, prd.customer_group_id, 0) AS customer_group_id FROM ct_product p LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id LEFT JOIN ct_price_rule pr ON pr.price_rule_id = p.price_rule_id LEFT JOIN ct_price_rule_discount prd ON prd.price_rule_id = pr.price_rule_id AND ((prd.customer_id = ? OR prd.customer_id = 0) AND (prd.customer_group_id = 0 OR prd.customer_group_id = ? OR FIND_IN_SET(prd.customer_group_id, ?)) AND prd.quantity <= ?) LEFT JOIN ct_product_discount pd ON pd.product_id = p.product_id AND ((pd.customer_id = ? OR pd.customer_id = 0) AND (pd.customer_group_id = 0 OR pd.customer_group_id = ? OR FIND_IN_SET(pd.customer_group_id, ?)) AND ((pd.date_start = '0000-00-00' OR pd.date_start < NOW()) AND (pd.date_end = '0000-00-00' OR pd.date_end > NOW())) AND pd.quantity <= ? AND (pd.quantity_end = '' OR pav.available > pd.quantity_end)) WHERE p.product_id = ? ORDER BY prd.quantity DESC, pd.quantity DESC, prd.sort_order ASC, pd.sort_order ASC LIMIT 1; 0|1||1|0|1||1|17720
[23] => 03:53:35; PREPARED; 0.000351; ModelCatalogProduct; getProductCountries; SELECT DISTINCT ztgz.country_id, c.iso_code_2, c.name FROM ct_product_geo_zone pgz LEFT JOIN ct_zone_to_geo_zone ztgz ON ztgz.geo_zone_id = pgz.geo_zone_id LEFT JOIN ct_country c ON c.country_id = ztgz.country_id WHERE pgz.product_id = ?; 17722
[24] => 03:53:35; PREPARED; 0.000246; ModelCatalogProduct; getProductCertifications; SELECT pc.*, c.name FROM ct_product_certification pc LEFT JOIN ct_certification c ON c.certification_id = pc.certification_id WHERE pc.product_id = ?; 17722
[25] => 03:53:35; PREPARED; 0.000392; ModelCatalogProduct; getAllProductUsed; SELECT pu.*, p.name AS name FROM ct_product_used pu LEFT JOIN ct_product p ON p.product_id = pu.product_id LEFT JOIN ct_product_to_category p2c ON p2c.product_id = pu.product_id AND p2c.primary_category = 1 AND p2c.store_id = ? WHERE pu.product_id = ? AND pu.quantity > 0 AND pu.price > 0 AND p2c.category_id IS NOT NULL; 1|17721
[26] => 03:53:35; PREPARED; 0.000374; ModelCatalogProduct; getAllProductUsed; SELECT pu.*, p.name AS name FROM ct_product_used pu LEFT JOIN ct_product p ON p.product_id = pu.product_id LEFT JOIN ct_product_to_category p2c ON p2c.product_id = pu.product_id AND p2c.primary_category = 1 AND p2c.store_id = ? WHERE pu.product_id = ? AND pu.quantity > 0 AND pu.price > 0 AND p2c.category_id IS NOT NULL; 1|17720
[27] => 03:53:35; PREPARED; 0.000228; ModelCatalogProduct; getProductOptions; SELECT * FROM ct_product_option WHERE product_id = ? ORDER BY sort_order ASC; 17722
[28] => 03:53:35; PREPARED; 0.000198; ModelCatalogProduct; getProductQtyDiscounts; SELECT p.price_rule_id FROM ct_product p WHERE p.product_id = ?; 17722
[29] => 03:53:35; PREPARED; 0.000344; ModelCatalogProduct; getProductQtyDiscounts; SELECT prd.*, '' AS date_start, '' AS date_end, '' AS quantity_end FROM ct_price_rule_discount prd WHERE prd.price_rule_id = ? AND (prd.customer_id = 0 OR prd.customer_id = ?) AND (prd.customer_group_id = 0 OR prd.customer_group_id = ?) AND prd.quantity > 1 ORDER BY prd.sort_order ASC; 2|0|1
[30] => 03:53:35; PREPARED; 0.000500; ModelCatalogProduct; getProductQtyDiscounts; SELECT pd.* FROM ct_product_discount pd LEFT JOIN ct_product p ON p.product_id = pd.product_id LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id AND pav.store_id = 1 WHERE pd.product_id = ? AND (pd.customer_id = 0 OR pd.customer_id = ?) AND (pd.customer_group_id = 0 OR pd.customer_group_id = ?) AND pd.quantity > 1 AND ((pd.date_start = '0000-00-00' OR pd.date_start < NOW()) AND (pd.date_end = '0000-00-00' OR pd.date_end > NOW())) AND (pd.quantity_end = '' OR pav.available > pd.quantity_end) ORDER BY pd.sort_order ASC; 17722|0|1
[31] => 03:53:35; PREPARED; 0.000470; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[32] => 03:53:35; PREPARED; 0.001111; ModelCheckoutShippingMethod; getMethodsByAddress; SELECT sm.* FROM ct_shipping_method_geo_zone smgz LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = smgz.shipping_method_id LEFT JOIN ct_zone_to_geo_zone z2gz ON z2gz.geo_zone_id = smgz.geo_zone_id LEFT JOIN ct_zone z on z.zone_id = z2gz.zone_id WHERE FIND_IN_SET(?, stores) AND z2gz.country_id = ? AND (z2gz.zone_id = ? OR z2gz.zone_id = '0') AND sm.status = 1 AND sm.type = 'shipping' ORDER BY sm.sort_order ASC; 1|222|11
[33] => 03:53:35; PREPARED; 0.000251; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[34] => 03:53:35; PREPARED; 0.000244; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[35] => 03:53:35; PREPARED; 0.000345; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 2|2025-05-09
[36] => 03:53:35; PREPARED; 0.000324; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[37] => 03:53:35; PREPARED; 0.000261; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[38] => 03:53:35; PREPARED; 0.000393; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 3|2025-05-08
[39] => 03:53:35; PREPARED; 0.000241; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[40] => 03:53:35; PREPARED; 0.000221; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[41] => 03:53:35; PREPARED; 0.000302; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 1|2025-05-07
[42] => 03:53:35; PREPARED; 0.000240; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[43] => 03:53:35; PREPARED; 0.000269; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[44] => 03:53:35; PREPARED; 0.000323; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 16|2025-05-07
[45] => 03:53:35; PREPARED; 0.000231; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[46] => 03:53:35; PREPARED; 0.000238; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[47] => 03:53:35; PREPARED; 0.000287; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 17|2025-05-07
[48] => 03:53:35; PREPARED; 0.000235; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[49] => 03:53:35; PREPARED; 0.000246; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[50] => 03:53:35; PREPARED; 0.000306; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 18|2025-05-07
[51] => 03:53:35; STANDARD; 0.001740; ModelLocalisationCountry; getCountries; SELECT * FROM ct_country WHERE status = '1' ORDER BY name ASC
[52] => 03:53:35; STANDARD; 0.000373; ModelLocalisationZone; getZonesByCountryId; SELECT * FROM ct_zone WHERE country_id = '222' AND status = '1' ORDER BY name
[53] => 03:53:35; PREPARED; 0.001358; ModelCheckoutShippingMethod; getMethodsByAddress; SELECT sm.* FROM ct_shipping_method_geo_zone smgz LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = smgz.shipping_method_id LEFT JOIN ct_zone_to_geo_zone z2gz ON z2gz.geo_zone_id = smgz.geo_zone_id LEFT JOIN ct_zone z on z.zone_id = z2gz.zone_id WHERE FIND_IN_SET(?, stores) AND z2gz.country_id = ? AND (z2gz.zone_id = ? OR z2gz.zone_id = '0') AND sm.status = 1 AND sm.type = 'shipping' ORDER BY sm.sort_order ASC; 1|222|11
[54] => 03:53:35; PREPARED; 0.000249; ModelCheckoutOrder; getAddToNextOrders; SELECT DISTINCT o.order_id FROM ct_order_shipping_method osm LEFT JOIN ct_order o ON o.order_id = osm.order_id WHERE osm.type = 'add_to_order' AND o.add_to_order = 0 AND o.customer_id = ? AND o.customer_id != 0 AND o.shipping_postcode = ? AND o.order_status_id IN (?, ?); 0||4|5
[55] => 03:53:35; PREPARED; 0.000489; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[56] => 03:53:35; PREPARED; 0.000306; Cart\Cart; getCountries; SELECT DISTINCT ztgz.country_id FROM ct_product_geo_zone pgz LEFT JOIN ct_zone_to_geo_zone ztgz ON ztgz.geo_zone_id = pgz.geo_zone_id WHERE pgz.product_id IN(?);
[57] => 03:53:35; PREPARED; 0.000442; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[58] => 03:53:35; PREPARED; 0.000394; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[59] => 03:53:35; PREPARED; 0.000333; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[60] => 03:53:35; PREPARED; 0.000317; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[61] => 03:53:35; PREPARED; 0.000399; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 2|2025-05-09
[62] => 03:53:35; PREPARED; 0.000247; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[63] => 03:53:35; PREPARED; 0.000292; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[64] => 03:53:35; PREPARED; 0.000225; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 2
[65] => 03:53:35; PREPARED; 0.000340; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 2|2025-05-09
[66] => 03:53:35; PREPARED; 0.000461; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[67] => 03:53:35; PREPARED; 0.000363; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[68] => 03:53:35; PREPARED; 0.000300; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[69] => 03:53:35; PREPARED; 0.000358; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 3|2025-05-08
[70] => 03:53:35; PREPARED; 0.000342; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[71] => 03:53:35; PREPARED; 0.000214; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[72] => 03:53:35; PREPARED; 0.000364; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 3
[73] => 03:53:35; PREPARED; 0.000352; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 3|2025-05-08
[74] => 03:53:35; PREPARED; 0.000588; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[75] => 03:53:35; PREPARED; 0.000249; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[76] => 03:53:35; PREPARED; 0.000296; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[77] => 03:53:35; PREPARED; 0.000415; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 1|2025-05-07
[78] => 03:53:35; PREPARED; 0.000260; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[79] => 03:53:35; PREPARED; 0.000699; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[80] => 03:53:35; PREPARED; 0.001499; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 1
[81] => 03:53:35; PREPARED; 0.000442; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 1|2025-05-07
[82] => 03:53:35; PREPARED; 0.000567; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[83] => 03:53:35; PREPARED; 0.000332; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[84] => 03:53:35; PREPARED; 0.000258; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[85] => 03:53:35; PREPARED; 0.000358; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 16|2025-05-07
[86] => 03:53:35; PREPARED; 0.000290; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[87] => 03:53:35; PREPARED; 0.000218; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[88] => 03:53:35; PREPARED; 0.000215; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 16
[89] => 03:53:35; PREPARED; 0.000320; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 16|2025-05-07
[90] => 03:53:35; PREPARED; 0.000456; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[91] => 03:53:35; PREPARED; 0.000239; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[92] => 03:53:35; PREPARED; 0.000251; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[93] => 03:53:35; PREPARED; 0.000296; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 17|2025-05-07
[94] => 03:53:35; PREPARED; 0.000270; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[95] => 03:53:35; PREPARED; 0.000230; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[96] => 03:53:35; PREPARED; 0.000302; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 17
[97] => 03:53:35; PREPARED; 0.000369; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 17|2025-05-07
[98] => 03:53:35; PREPARED; 0.000598; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[99] => 03:53:35; PREPARED; 0.000300; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[100] => 03:53:35; PREPARED; 0.000287; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[101] => 03:53:35; PREPARED; 0.000430; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 18|2025-05-07
[102] => 03:53:35; PREPARED; 0.000320; Cart\Shipping; getArrivalDates; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[103] => 03:53:35; PREPARED; 0.000304; Cart\Shipping; getArrivalDate; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[104] => 03:53:35; PREPARED; 0.000399; Cart\Shipping; getTotalShipments; SELECT * FROM ct_shipping_method WHERE shipping_method_id = ?; 18
[105] => 03:53:35; PREPARED; 0.000383; Cart\Shipping; getTotalShipments; SELECT COUNT(DISTINCT order_id) AS total FROM ct_order_shipping_method osm LEFT JOIN ct_shipping_method sm ON sm.shipping_method_id = osm.shipping_method_id WHERE osm.shipping_method_id = ? AND osm.arrival_date = ?; 18|2025-05-07
[106] => 03:53:35; PREPARED; 0.000585; Cart\Cart; getProducts; SELECT c.*, pit.name AS product_inventory_type, pit.name AS type, pit.add_to_stock, pi.quantity AS product_inventory_quantity FROM ct_cart c LEFT JOIN ct_product_inventory pi ON pi.product_inventory_type_id = c.product_inventory_type_id AND pi.product_id = c.product_id LEFT JOIN ct_product_inventory_type pit ON pit.product_inventory_type_id = c.product_inventory_type_id WHERE c.api_id = ? AND c.customer_id = ? AND c.directory_id = ? AND c.session_id = ? ORDER BY c.sort_order ASC; 0|0|0|077bab050d4663be33edd5f3b26c7f08
[107] => 03:53:35; STANDARD; 0.000506; ModelCatalogInformation; getInformation; SELECT DISTINCT * FROM ct_information i LEFT JOIN ct_information_description id ON (i.information_id = id.information_id) WHERE i.information_id = 12 AND i.status = 1
[108] => 03:53:35; PREPARED; 0.000449; ModelCatalogProduct; getProductOnOrder; SELECT ip.inventory_id, s.name AS supplier, (ip.ordered - ip.received) AS ordered, ip.date_due, i.product_inventory_type_id FROM ct_inventory_product ip LEFT JOIN ct_inventory i ON i.inventory_id = ip.inventory_id LEFT JOIN ct_supplier s ON s.supplier_id = i.supplier_id WHERE ip.ordered > ip.received AND ip.product_id = ? AND i.direct = '' ORDER BY ip.date_due ASC; 17722
[109] => 03:53:35; PREPARED; 0.000451; ModelCatalogProduct; getProductImages; SELECT * FROM ct_product_image WHERE product_id = ? ORDER BY sort_order ASC; 17722
[110] => 03:53:35; PREPARED; 0.000277; ModelCatalogProduct; getProductVideos; SELECT name, youtube_id FROM ct_product_video WHERE product_id = ? ORDER BY sort_order ASC; 17722
[111] => 03:53:35; PREPARED; 0.000501; ModelCatalogVideo; getVideos; SELECT DISTINCT v.* FROM ct_video v LEFT JOIN ct_video_keyword vk ON v.video_id = vk.video_id WHERE 1 AND (LOCATE(vk.keyword, ?) > 0 OR vk.keyword IS NULL) AND (manufacturer_id = ? OR manufacturer_id = 0) ORDER BY v.name ASC; Ajax Hub Hybrid (4G) Wired / Wireless Alarm Panel ajax wings,fibra,jeweller,home security,home alarm|231
[112] => 03:53:35; PREPARED; 0.000362; ModelCatalogProduct; getProductFiles; SELECT * FROM ct_product_file WHERE product_id = ? AND online = 1 ORDER BY sort_order ASC; 17722
[113] => 03:53:35; PREPARED; 0.000278; ModelCatalogProduct; getProductLinks; SELECT text, link FROM ct_product_link WHERE product_id = ? ORDER BY sort_order ASC; 17722
[114] => 03:53:35; PREPARED; 0.000397; ModelCatalogQuestion; getQuestions; SELECT q.question_id, q.reply_to, q.customer_id, q.author, q.text, q.date_added, c.firstname FROM ct_question q LEFT JOIN ct_customer c ON (c.customer_id = q.customer_id) WHERE q.product_id = ? AND q.status = '1' ORDER BY q.date_added DESC; 17722
[115] => 03:53:35; PREPARED; 0.001184; ModelCatalogProduct; getProductAddon; SELECT p.*, pa.addon_id, (SELECT GROUP_CONCAT(pv.variant_id SEPARATOR ',') FROM ct_product_variant pv WHERE pv.product_id = p.product_id GROUP BY pv.product_id ORDER BY pv.sort_order) AS variants FROM ct_product_addon pa LEFT JOIN ct_product p ON pa.addon_id = p.product_id LEFT JOIN ct_product_available pav ON pav.product_id = p.product_id AND pav.store_id = 1 LEFT JOIN ct_product_to_category p2c ON p2c.product_id = p.product_id AND p2c.primary_category = 1 AND p2c.store_id = ? WHERE pa.product_id = ? AND p.status > 1 AND p.date_available <= CURDATE() AND (p.eol = 0 OR pav.available > 0) AND p2c.category_id IS NOT NULL ORDER BY pa.sort_order ASC; 1|17722
[116] => 03:53:35; PREPARED; 0.000807; ModelCatalogProduct; getRelatedProducts; SELECT p2c.product_id FROM ct_product_to_category p2c LEFT JOIN ct_product p ON p.product_id = p2c.product_id WHERE p2c.category_id = (SELECT category_id FROM ct_product_to_category WHERE product_id = ? AND primary_category = 1 AND store_id = ?) AND p2c.product_id != ? AND p2c.store_id = ? AND p2c.primary_category = 1 AND p.eol = 0 AND p.status = 2 LIMIT 10; 17722|1|17722|1
[117] => 03:53:35; PREPARED; 0.000482; ModelCatalogReview; getProductRating; SELECT COALESCE(AVG(r.rating), 0) AS rating, COUNT(DISTINCT r.review_id) AS reviews FROM ct_review r WHERE r.product_id = ? AND r.status = '1'; 17722
[118] => 03:53:35; PREPARED; 0.000483; ModelCatalogReview; getReviewsByProductId; SELECT * FROM ct_review WHERE product_id = ? AND status = 1 ORDER BY helpful = 0, (((helpful +1) / (unhelpful +1)) * 100) DESC, helpful DESC, date_added DESC LIMIT 3; 17722
[119] => 03:53:35; PREPARED; 0.000375; ModelAccountFavourites; getFavourites; SELECT * FROM ct_customer_favourites WHERE customer_id = ?; 0
[120] => 03:53:35; PREPARED; 0.003123; ModelCatalogProduct; updateViewed; UPDATE ct_product SET viewed = (viewed + 1) WHERE product_id = ?; 17722
[121] => 03:53:35; PREPARED; 0.000591; Tracking; track; SELECT customer_id FROM ct_customer WHERE tracker = ?; 3de3c62f4e7ce48f238e5feb79aa4a271ae9e1bc779466067629f76c4be32d11
[122] => 03:53:35; PREPARED; 0.008360; Tracking; track; INSERT INTO ct_tracking SET tracker = ?, ip_address = ?, agent = ?, session_id = ?, customer_id = ?, referer = ?, url = ?, event_label = ?, event_value = ?, date_added = DATE(NOW()), time_added = TIME(NOW()); 3de3c62f4e7ce48f238e5feb79aa4a271ae9e1bc779466067629f76c4be32d11|13.58.37.107|Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])|077bab050d4663be33edd5f3b26c7f08|0||/security/intruder-alarms/wired-alarm-systems/ajax-fibra-hybrid-alarm-system/ajax-fibra-panels-and-kits/ajax-hub-hybrid-4g-wired-wireless-alarm-panel|view_product|17722
[123] => 03:53:35; PREPARED; MEMCACHE; getHtmlBlock; SELECT * FROM ct_html_block WHERE code = ? AND store_id = ?; why_buy|1
[124] => 03:53:35; PREPARED; MEMCACHE; getHtmlBlock; SELECT * FROM ct_html_block WHERE code = ? AND store_id = ?; product_qa_text|1
[125] => 03:53:35; PREPARED; MEMCACHE; getHtmlBlock; SELECT * FROM ct_html_block WHERE code = ? AND store_id = ?; product_review_text|1
[126] => 03:53:35; PREPARED; MEMCACHE; getHtmlBlock; SELECT * FROM ct_html_block WHERE code = ? AND store_id = ?; product_links_disclaimer|1
)
[DUPLIACTES] => Array
(
)
[TOTAL_EXECUTION_TIME] => 0.06016159058
)