-- Dumping data for table `oc_faq_support`
--

INSERT INTO `oc_faq_support` VALUES (3,1,3,1,'Where do I find my email?','&lt;p&gt;The email is located in the account settings.&lt;/p&gt;');

--
-- Table structure for table `oc_filter`
--

CREATE TABLE `oc_filter` (
  `filter_id` int(11) NOT NULL AUTO_INCREMENT,
  `filter_group_id` int(11) NOT NULL,
  `sort_order` int(3) NOT NULL,
  PRIMARY KEY (`filter_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_filter`
--


--
-- Table structure for table `oc_filter_description`
--

CREATE TABLE `oc_filter_description` (
  `filter_id` int(11) NOT NULL,
  `language_id` int(11) NOT NULL,
  `filter_group_id` int(11) NOT NULL,
  `name` varchar(64) NOT NULL,
  PRIMARY KEY (`filter_id`,`language_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_filter_description`
--


--
-- Table structure for table `oc_filter_group`
--

CREATE TABLE `oc_filter_group` (
  `filter_group_id` int(11) NOT NULL AUTO_INCREMENT,
  `sort_order` int(3) NOT NULL,
  PRIMARY KEY (`filter_group_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_filter_group`
--


--
-- Table structure for table `oc_filter_group_description`
--

CREATE TABLE `oc_filter_group_description` (
  `filter_group_id` int(11) NOT NULL,
  `language_id` int(11) NOT NULL,
  `name` varchar(64) NOT NULL,
  PRIMARY KEY (`filter_group_id`,`language_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_filter_group_description`
--


--
-- Table structure for table `oc_geo_zone`
--

CREATE TABLE `oc_geo_zone` (
  `geo_zone_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL,
  `description` varchar(255) NOT NULL,
  `date_added` datetime NOT NULL,
  `date_modified` datetime NOT NULL,
  PRIMARY KEY (`geo_zone_id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_geo_zone`
--

INSERT INTO `oc_geo_zone` VALUES (3,'UK VAT Zone','UK VAT','2009-01-06 23:26:25','2010-02-26 22:33:24'),(4,'UK Shipping','UK Shipping Zones','2009-06-23 01:14:53','2010-12-15 15:18:13');

--
-- Table structure for table `oc_information`
--

CREATE TABLE `oc_information` (
  `information_id` int(11) NOT NULL AUTO_INCREMENT,
  `bottom` int(1) NOT NULL DEFAULT 0,
  `sort_order` int(3) NOT NULL DEFAULT 0,
  `status` tinyint(1) NOT NULL DEFAULT 1,
  PRIMARY KEY (`information_id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_information`
--

INSERT INTO `oc_information` VALUES (3,1,3,1),(4,1,1,1),(5,1,4,1),(6,1,2,1);

--
-- Table structure for table `oc_information_description`
--

CREATE TABLE `oc_information_description` (
  `information_id` int(11) NOT NULL,
  `language_id` int(11) NOT NULL,
  `title` varchar(64) NOT NULL,
  `description` mediumtext NOT NULL,
  `meta_title` varchar(255) NOT NULL,
  `meta_description` varchar(255) NOT NULL,
  `meta_keyword` varchar(255) NOT NULL,
  PRIMARY KEY (`information_id`,`language_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_information_description`
--

INSERT INTO `oc_information_description` VALUES (4,1,'About Us','&lt;p&gt;\r\n	About Us&lt;/p&gt;\r\n','About Us','',''),(5,1,'Terms &amp; Conditions','&lt;p&gt;\r\n	Terms &amp;amp; Conditions&lt;/p&gt;\r\n','Terms &amp; Conditions','',''),(3,1,'Privacy Policy','&lt;p&gt;\r\n	Privacy Policy&lt;/p&gt;\r\n','Privacy Policy','',''),(6,1,'Delivery Information','&lt;p&gt;\r\n	Delivery Information&lt;/p&gt;\r\n','Delivery Information','','');

--
-- Table structure for table `oc_information_to_layout`
--

CREATE TABLE `oc_information_to_layout` (
  `information_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  `layout_id` int(11) NOT NULL,
  PRIMARY KEY (`information_id`,`store_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_information_to_layout`
--


--
-- Table structure for table `oc_information_to_store`
--

CREATE TABLE `oc_information_to_store` (
  `information_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  PRIMARY KEY (`information_id`,`store_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_information_to_store`
--

INSERT INTO `oc_information_to_store` VALUES (3,0),(4,0),(5,0),(6,0);

--
-- Table structure for table `oc_kbbooking_cart`
--

CREATE TABLE `oc_kbbooking_cart` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `kbbooking_id` int(11) DEFAULT NULL,
  `cart_id` int(11) DEFAULT NULL,
  `product_id` int(11) DEFAULT NULL,
  `price` float DEFAULT NULL,
  `date_added` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_cart`
--

INSERT INTO `oc_kbbooking_cart` VALUES (1,1,11,51,1,'2021-02-04 07:20:28'),(11,11,30,51,2,'2021-02-10 03:33:39'),(12,12,31,51,1,'2021-02-10 03:35:05'),(18,18,39,56,12,'2021-02-19 13:38:10'),(19,19,41,54,1,'2021-02-28 08:31:04'),(20,20,42,55,1,'2021-02-28 08:31:24'),(21,21,43,56,12,'2021-02-28 08:32:26'),(22,22,44,56,12,'2021-02-28 09:08:43'),(23,23,53,55,1,'2021-03-01 12:54:35');

--
-- Table structure for table `oc_kbbooking_category`
--

CREATE TABLE `oc_kbbooking_category` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `status` int(11) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  `date_added` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_category`
--


--
-- Table structure for table `oc_kbbooking_category_description`
--

CREATE TABLE `oc_kbbooking_category_description` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_category` int(11) DEFAULT NULL,
  `name` text DEFAULT NULL,
  `description` text DEFAULT NULL,
  `language_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_category_description`
--


--
-- Table structure for table `oc_kbbooking_facilities`
--

CREATE TABLE `oc_kbbooking_facilities` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` text DEFAULT NULL,
  `type` int(11) DEFAULT NULL,
  `image_type` int(11) DEFAULT NULL,
  `image` varchar(255) DEFAULT NULL,
  `font` varchar(255) DEFAULT NULL,
  `status` int(11) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  `date_added` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_facilities`
--

INSERT INTO `oc_kbbooking_facilities` VALUES (1,'{\"1\":\"Dental Checkup\"}',1,2,'','fa-wifi',1,0,'2021-02-03 14:23:06');

--
-- Table structure for table `oc_kbbooking_output`
--

CREATE TABLE `oc_kbbooking_output` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `product_id` int(11) NOT NULL,
  `service_type` int(11) NOT NULL,
  `period_type` int(11) NOT NULL,
  `product_type` int(11) NOT NULL,
  `check_in` datetime NOT NULL,
  `check_out` datetime NOT NULL,
  `room_id` int(11) NOT NULL,
  `category` int(11) NOT NULL,
  `room` int(11) NOT NULL,
  `price` float NOT NULL,
  `quantity` int(11) NOT NULL,
  `date_added` datetime NOT NULL DEFAULT current_timestamp(),
  `id_date` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_output`
--

INSERT INTO `oc_kbbooking_output` VALUES (1,51,0,1,1,'2021-02-25 11:56:00','2021-02-25 12:56:00',0,0,0,1,1,'2021-02-04 07:20:28',NULL),(2,51,0,1,1,'2021-02-05 12:56:00','2021-02-05 14:56:00',0,0,0,2,1,'2021-02-04 09:26:37',NULL),(3,51,0,1,1,'2021-02-05 12:56:00','2021-02-05 14:56:00',0,0,0,2,1,'2021-02-04 09:28:37',NULL),(4,51,0,1,1,'2021-02-06 12:56:00','2021-02-06 14:56:00',0,0,0,2,1,'2021-02-05 14:54:25',NULL),(5,51,0,1,1,'2021-02-06 11:56:00','2021-02-06 12:56:00',0,0,0,1,1,'2021-02-05 15:30:32',NULL),(6,51,0,1,1,'2021-02-06 11:56:00','2021-02-06 12:56:00',0,0,0,1,1,'2021-02-05 15:32:53',NULL),(7,51,0,1,1,'2021-02-06 11:56:00','2021-02-06 12:56:00',0,0,0,1,1,'2021-02-05 15:42:08',NULL),(8,51,0,1,1,'2021-02-24 11:56:00','2021-02-24 12:56:00',0,0,0,1,1,'2021-02-05 15:46:10',NULL),(9,51,0,1,1,'2021-02-18 11:56:00','2021-02-18 12:56:00',0,0,0,1,1,'2021-02-05 16:21:07',NULL),(10,51,0,1,1,'2021-02-19 11:56:00','2021-02-19 12:56:00',0,0,0,1,1,'2021-02-05 16:22:22',NULL),(11,51,0,1,1,'2021-02-11 12:56:00','2021-02-11 14:56:00',0,0,0,2,1,'2021-02-10 03:33:39',NULL),(12,51,0,1,1,'2021-02-17 11:56:00','2021-02-17 12:56:00',0,0,0,1,1,'2021-02-10 03:35:05',NULL),(13,55,0,0,0,'2021-02-19 00:00:00','2021-02-19 12:00:00',0,0,0,1,1,'2021-02-19 08:58:57',16),(14,55,0,0,0,'2021-02-19 00:00:00','2021-02-19 12:00:00',0,0,0,1,1,'2021-02-19 09:58:30',16),(15,55,0,0,0,'2021-02-19 00:00:00','2021-02-19 12:00:00',0,0,0,1,1,'2021-02-19 10:13:17',16),(16,54,0,0,0,'2021-02-19 00:00:00','2021-02-19 12:00:00',0,0,0,1,1,'2021-02-19 10:25:25',0),(17,55,0,0,0,'2021-02-19 00:00:00','2021-02-19 12:00:00',0,0,0,1,1,'2021-02-19 11:11:09',18),(18,56,0,1,0,'2021-02-22 00:00:00','2021-02-22 06:05:00',0,0,0,12,1,'2021-02-19 13:38:10',20),(19,54,0,0,0,'2021-03-03 00:00:00','2021-03-03 12:00:00',0,0,0,1,1,'2021-02-28 08:31:04',NULL),(20,55,0,0,0,'2021-03-02 00:00:00','2021-03-02 12:00:00',0,0,0,1,1,'2021-02-28 08:31:24',NULL),(21,56,0,1,0,'2021-03-03 00:00:00','2021-03-03 06:05:00',0,0,0,12,1,'2021-02-28 08:32:26',NULL),(22,56,0,1,0,'2021-03-05 00:00:00','2021-03-05 06:05:00',0,0,0,12,1,'2021-02-28 09:08:43',NULL),(23,55,0,0,0,'2021-03-03 00:00:00','2021-03-03 12:00:00',0,0,0,1,1,'2021-03-01 12:54:35',22);

--
-- Table structure for table `oc_kbbooking_price_rule`
--

CREATE TABLE `oc_kbbooking_price_rule` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` text DEFAULT NULL,
  `product` int(11) DEFAULT NULL,
  `data_type` int(11) DEFAULT NULL,
  `start_date` datetime DEFAULT current_timestamp(),
  `end_date` datetime DEFAULT current_timestamp(),
  `specific_date` datetime DEFAULT current_timestamp(),
  `reduction_type` int(11) DEFAULT NULL,
  `reduction` float DEFAULT NULL,
  `status` int(11) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  `date_added` datetime DEFAULT current_timestamp(),
  `date_updated` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_price_rule`
--


--
-- Table structure for table `oc_kbbooking_product_date`
--

CREATE TABLE `oc_kbbooking_product_date` (
  `id_date` int(11) NOT NULL AUTO_INCREMENT,
  `product_id` int(11) DEFAULT 0,
  `date_from` date DEFAULT NULL,
  `date_to` date DEFAULT NULL,
  `item_name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id_date`)
) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_product_date`
--

INSERT INTO `oc_kbbooking_product_date` VALUES (7,51,'2021-02-04','2021-03-04',NULL),(12,54,'2021-02-19','2021-02-25',NULL),(13,54,'2021-03-03','2021-03-17',NULL),(20,56,'2021-02-19','2021-02-26','A'),(21,56,'2021-02-27','2021-03-05','B'),(24,57,'2021-03-02','2021-03-15','Dr. A'),(25,57,'2021-03-16','2021-03-31','Dr. B'),(30,55,'2021-03-02','2021-03-03',''),(31,55,'2021-03-02','2021-03-03','');

--
-- Table structure for table `oc_kbbooking_product_facility`
--

CREATE TABLE `oc_kbbooking_product_facility` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `facility_id` int(11) NOT NULL,
  `product_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_product_facility`
--


--
-- Table structure for table `oc_kbbooking_product_room`
--

CREATE TABLE `oc_kbbooking_product_room` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `room_type` int(11) NOT NULL,
  `room_category` int(11) NOT NULL,
  `price` float NOT NULL,
  `quantity` int(11) NOT NULL,
  `check_in` time NOT NULL,
  `check_out` time NOT NULL,
  `image` varchar(255) NOT NULL,
  `facilities` text NOT NULL,
  `product_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  `status` int(11) NOT NULL,
  `date_added` datetime NOT NULL DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_product_room`
--


--
-- Table structure for table `oc_kbbooking_product_time`
--

CREATE TABLE `oc_kbbooking_product_time` (
  `id_time` int(11) NOT NULL AUTO_INCREMENT,
  `id_date` int(11) DEFAULT NULL,
  `product_id` int(11) DEFAULT 0,
  `time_from` time DEFAULT NULL,
  `time_to` time DEFAULT NULL,
  `price` float DEFAULT 0,
  `quantity` int(11) DEFAULT NULL,
  PRIMARY KEY (`id_time`)
) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_product_time`
--

INSERT INTO `oc_kbbooking_product_time` VALUES (19,7,51,'11:56:00','12:56:00',1,1),(20,7,51,'12:56:00','14:56:00',2,2),(25,12,54,'00:00:00','00:00:00',1,100),(26,13,54,'00:00:00','00:00:00',1,100),(33,20,56,'00:00:00','06:05:00',12,10),(34,21,56,'00:00:00','06:05:00',12,12),(37,24,57,'00:00:00','18:00:00',0,15),(38,25,57,'00:00:00','18:00:00',0,20),(43,30,55,'00:00:00','00:00:00',1,100),(44,31,55,'00:00:00','00:00:00',1,100);

--
-- Table structure for table `oc_kbbooking_products`
--

CREATE TABLE `oc_kbbooking_products` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `product_id` int(11) DEFAULT 0,
  `booking_type` int(11) DEFAULT 0,
  `service_type` int(11) DEFAULT 0,
  `period_type` int(11) DEFAULT 0,
  `max_hours` int(11) NOT NULL DEFAULT 0,
  `min_hours` int(11) NOT NULL DEFAULT 0,
  `min_days` int(11) NOT NULL DEFAULT 0,
  `max_days` int(11) NOT NULL DEFAULT 0,
  `rating` int(11) NOT NULL DEFAULT 0,
  `show_map` int(11) DEFAULT 0,
  `address` text DEFAULT NULL,
  `latitude` float DEFAULT 0,
  `longitude` float DEFAULT 0,
  `disable_days` text DEFAULT NULL,
  `status` smallint(5) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  `date_added` datetime DEFAULT current_timestamp(),
  `date_updated` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_products`
--

INSERT INTO `oc_kbbooking_products` VALUES (2,51,1,0,1,0,0,0,0,0,1,'12055 Biscayne Blvd',34.6802,-79.195,'\"\"',1,0,'2021-02-04 06:26:42','2021-02-04 06:26:42'),(3,54,0,0,0,0,0,0,0,0,1,'Test',33,22,'\"\"',1,0,'2021-02-19 08:37:14','2021-02-19 08:37:14'),(4,55,0,0,0,0,0,0,0,0,1,'Test',22,11,'\"\"',1,0,'2021-02-19 08:50:16','2021-02-19 08:50:16'),(5,56,0,0,1,0,0,0,0,0,1,'ABC Estate',22.3468,114.129,'[\"6\",\"0\"]',1,0,'2021-02-19 13:36:05','2021-02-19 13:36:05'),(6,57,0,0,1,0,0,0,0,0,1,'Flat A, Block B, Estate C',22.3468,114.129,'[\"0\"]',1,0,'2021-03-01 13:03:29','2021-03-01 13:03:29');

--
-- Table structure for table `oc_kbbooking_room`
--

CREATE TABLE `oc_kbbooking_room` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` text DEFAULT NULL,
  `max_child` int(11) DEFAULT NULL,
  `max_adult` int(11) DEFAULT NULL,
  `status` int(11) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  `date_added` datetime DEFAULT current_timestamp(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_room`
--


--
-- Table structure for table `oc_kbbooking_room_category`
--

CREATE TABLE `oc_kbbooking_room_category` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_category` int(11) DEFAULT NULL,
  `id_room` int(11) DEFAULT NULL,
  `store_id` int(11) DEFAULT 0,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `oc_kbbooking_room_category`
--


--
-- Table structure for table `oc_language`
--

CREATE TABLE `oc_language` (
  `language_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL,
  `code` varchar(5) NOT NULL,
  `locale` varchar(255) NOT NULL,
  `image` varchar(64) NOT NULL,
  `directory` varchar(32) NOT NULL,
  `sort_order` int(3) NOT NULL DEFAULT 0,
  `status` tinyint(1) NOT NULL,
  PRIMARY KEY (`language_id`),
  KEY `name` (`name`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_language`
--

INSERT INTO `oc_language` VALUES (1,'English','en-gb','en-US,en_US.UTF-8,en_US,en-gb,english','gb.png','english',1,1);

--
-- Table structure for table `oc_layout`
--

CREATE TABLE `oc_layout` (
  `layout_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(64) NOT NULL,
  PRIMARY KEY (`layout_id`)
) ENGINE=MyISAM AUTO_INCREMENT=33 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_layout`
--

INSERT INTO `oc_layout` VALUES (1,'Home'),(2,'Product'),(3,'Category'),(4,'Default'),(5,'Manufacturer'),(6,'Account'),(7,'Checkout'),(8,'Contact'),(9,'Sitemap'),(10,'Affiliate'),(11,'Information'),(12,'Compare'),(13,'Search'),(32,'Mobile - Home 1 ');

--
-- Table structure for table `oc_layout_module`
--

CREATE TABLE `oc_layout_module` (
  `layout_module_id` int(11) NOT NULL AUTO_INCREMENT,
  `layout_id` int(11) NOT NULL,
  `code` varchar(64) NOT NULL,
  `position` varchar(14) NOT NULL,
  `sort_order` int(3) NOT NULL,
  PRIMARY KEY (`layout_module_id`)
) ENGINE=MyISAM AUTO_INCREMENT=2114 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_layout_module`
--

INSERT INTO `oc_layout_module` VALUES (2112,32,'so_page_builder.25','content_home',2),(2111,32,'so_page_builder.24','content_home',1),(2104,1,'so_page_builder.116','footer_block2',0),(2103,1,'so_page_builder.35','footer_block1',0),(2102,1,'so_countdown.106','content_top',2),(2101,1,'so_tools.105','content_top',1),(2099,1,'so_page_builder.118','content_home',3),(2100,1,'so_quickview.43','content_top',0),(2098,1,'so_page_builder.115','content_home',2),(2097,1,'so_page_builder.33','content_home',1),(2096,1,'so_searchpro.72','search_block',0),(2095,1,'so_megamenu.75','content_menu2',0),(2094,1,'so_megamenu.61','content_menu1',0),(2105,1,'so_page_builder.121','footer_block3',0),(1998,2,'so_page_builder.35','footer_block1',0),(1997,2,'so_tools.105','content_top',0),(1996,2,'so_searchpro.72','search_block',0),(1995,2,'so_megamenu.75','content_menu2',0),(1994,2,'so_megamenu.61','content_menu1',0),(1999,2,'so_page_builder.116','footer_block2',0),(2000,2,'so_page_builder.121','footer_block3',0),(1867,3,'so_page_builder.121','footer_block3',0),(1863,3,'so_tools.105','content_top',0),(1864,3,'so_html_content.113','content_top',1),(1865,3,'so_page_builder.35','footer_block1',0),(1866,3,'so_page_builder.116','footer_block2',0),(1861,3,'so_extra_slider.87','column_left',1),(1862,3,'so_html_content.82','column_left',2),(1860,3,'so_filter_shop_by.85','column_left',0),(1859,3,'so_searchpro.72','search_block',0),(1858,3,'so_megamenu.75','content_menu2',0),(1857,3,'so_megamenu.61','content_menu1',0),(1907,4,'so_page_builder.116','footer_block2',0),(1906,4,'so_page_builder.35','footer_block1',0),(1905,4,'so_searchpro.72','search_block',0),(1904,4,'so_megamenu.75','content_menu2',0),(1903,4,'so_megamenu.61','content_menu1',0),(1908,4,'so_page_builder.121','footer_block3',0),(1938,5,'account','column_left',2),(1937,5,'so_searchpro.72','search_block',0),(1936,5,'so_megamenu.75','content_menu2',0),(1935,5,'so_megamenu.61','content_menu1',0),(1939,5,'so_page_builder.35','footer_block1',0),(1940,5,'so_page_builder.116','footer_block2',0),(1941,5,'so_page_builder.121','footer_block3',0),(1991,6,'so_page_builder.35','footer_block1',0),(1990,6,'account','column_right',2),(1989,6,'so_searchpro.72','search_block',0),(1988,6,'so_megamenu.75','content_menu2',0),(1987,6,'so_megamenu.61','content_menu1',0),(1992,6,'so_page_builder.116','footer_block2',0),(1993,6,'so_page_builder.121','footer_block3',0),(1888,7,'so_page_builder.35','footer_block1',0),(1890,7,'so_page_builder.121','footer_block3',0),(1889,7,'so_page_builder.116','footer_block2',0),(1887,7,'so_searchpro.72','search_block',0),(1886,7,'so_megamenu.75','content_menu2',0),(1885,7,'so_megamenu.61','content_menu1',0),(1900,8,'so_page_builder.35','footer_block1',0),(1897,8,'so_megamenu.61','content_menu1',0),(1898,8,'so_megamenu.75','content_menu2',0),(1899,8,'so_searchpro.72','search_block',0),(1902,8,'so_page_builder.121','footer_block3',0),(1901,8,'so_page_builder.116','footer_block2',0),(2010,9,'so_page_builder.35','footer_block1',0),(2009,9,'so_searchpro.72','search_block',0),(2008,9,'so_megamenu.75','content_menu2',0),(2007,9,'so_megamenu.61','content_menu1',0),(2011,9,'so_page_builder.116','footer_block2',0),(2012,9,'so_page_builder.121','footer_block3',0),(1847,10,'so_page_builder.121','footer_block3',0),(1842,10,'so_megamenu.61','content_menu1',0),(1843,10,'so_megamenu.75','content_menu2',0),(1844,10,'so_searchpro.72','search_block',0),(1845,10,'so_page_builder.35','footer_block1',0),(1846,10,'so_page_builder.116','footer_block2',0),(1933,11,'so_page_builder.116','footer_block2',0),(1932,11,'so_page_builder.35','footer_block1',0),(1931,11,'so_searchpro.72','search_block',0),(1929,11,'so_megamenu.61','content_menu1',0),(1930,11,'so_megamenu.75','content_menu2',0),(1934,11,'so_page_builder.121','footer_block3',0),(1894,12,'so_page_builder.35','footer_block1',0),(1891,12,'so_megamenu.61','content_menu1',0),(1892,12,'so_megamenu.75','content_menu2',0),(1893,12,'so_searchpro.72','search_block',0),(1896,12,'so_page_builder.121','footer_block3',0),(1895,12,'so_page_builder.116','footer_block2',0),(2004,13,'so_page_builder.35','footer_block1',0),(2003,13,'so_searchpro.72','search_block',0),(2002,13,'so_megamenu.75','content_menu2',0),(2001,13,'so_megamenu.61','content_menu1',0),(2005,13,'so_page_builder.116','footer_block2',0),(2006,13,'so_page_builder.121','footer_block3',0),(2110,32,'so_page_builder.129','content_home',4),(2113,32,'so_page_builder.26','content_home',3);

--
-- Table structure for table `oc_layout_route`
--

CREATE TABLE `oc_layout_route` (
  `layout_route_id` int(11) NOT NULL AUTO_INCREMENT,
  `layout_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  `route` varchar(64) NOT NULL,
  PRIMARY KEY (`layout_route_id`)
) ENGINE=MyISAM AUTO_INCREMENT=57 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_layout_route`
--

INSERT INTO `oc_layout_route` VALUES (38,6,0,'account/%'),(17,10,0,'affiliate/%'),(44,3,0,'product/category'),(42,1,0,'common/home'),(20,2,0,'product/product'),(24,11,0,'information/information'),(23,7,0,'checkout/%'),(31,8,0,'information/contact'),(32,9,0,'information/sitemap'),(34,4,0,''),(45,5,0,'product/manufacturer'),(52,12,0,'product/compare'),(53,13,0,'product/search'),(56,32,0,'extension/mobile/home');

--
-- Table structure for table `oc_length_class`
--

CREATE TABLE `oc_length_class` (
  `length_class_id` int(11) NOT NULL AUTO_INCREMENT,
  `value` decimal(15,8) NOT NULL,
  PRIMARY KEY (`length_class_id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_length_class`
--

INSERT INTO `oc_length_class` VALUES (1,1.00000000),(2,10.00000000),(3,0.39370000);

--
-- Table structure for table `oc_length_class_description`
--

CREATE TABLE `oc_length_class_description` (
  `length_class_id` int(11) NOT NULL,
  `language_id` int(11) NOT NULL,
  `title` varchar(32) NOT NULL,
  `unit` varchar(4) NOT NULL,
  PRIMARY KEY (`length_class_id`,`language_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_length_class_description`
--

INSERT INTO `oc_length_class_description` VALUES (1,1,'Centimeter','cm'),(2,1,'Millimeter','mm'),(3,1,'Inch','in');

--
-- Table structure for table `oc_location`
--

CREATE TABLE `oc_location` (
  `location_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL,
  `address` text NOT NULL,
  `telephone` varchar(32) NOT NULL,
  `fax` varchar(32) NOT NULL,
  `geocode` varchar(32) NOT NULL,
  `image` varchar(255) DEFAULT NULL,
  `open` text NOT NULL,
  `comment` text NOT NULL,
  PRIMARY KEY (`location_id`),
  KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_location`
--


--
-- Table structure for table `oc_manufacturer`
--

CREATE TABLE `oc_manufacturer` (
  `manufacturer_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(64) NOT NULL,
  `image` varchar(255) DEFAULT NULL,
  `sort_order` int(3) NOT NULL,
  PRIMARY KEY (`manufacturer_id`)
) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_manufacturer`
--

INSERT INTO `oc_manufacturer` VALUES (5,'HTC','catalog/demo/htc_logo.jpg',0),(6,'Palm','catalog/demo/palm_logo.jpg',0),(7,'Hewlett-Packard','catalog/demo/hp_logo.jpg',0),(8,'Apple','catalog/demo/apple_logo.jpg',0),(9,'Canon','catalog/demo/canon_logo.jpg',0),(10,'Sony','catalog/demo/sony_logo.jpg',0);

--
-- Table structure for table `oc_manufacturer_to_store`
--

CREATE TABLE `oc_manufacturer_to_store` (
  `manufacturer_id` int(11) NOT NULL,
  `store_id` int(11) NOT NULL,
  PRIMARY KEY (`manufacturer_id`,`store_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_manufacturer_to_store`
--

INSERT INTO `oc_manufacturer_to_store` VALUES (5,0),(6,0),(7,0),(8,0),(9,0),(10,0);

--
-- Table structure for table `oc_marketing`
--

CREATE TABLE `oc_marketing` (
  `marketing_id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL,
  `description` text NOT NULL,
  `code` varchar(64) NOT NULL,
  `clicks` int(5) NOT NULL DEFAULT 0,
  `date_added` datetime NOT NULL,
  PRIMARY KEY (`marketing_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_marketing`
--


--
-- Table structure for table `oc_mega_menu`
--

CREATE TABLE `oc_mega_menu` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `parent_id` int(11) NOT NULL,
  `rang` int(11) NOT NULL,
  `icon` varchar(255) NOT NULL DEFAULT '',
  `name` text DEFAULT NULL,
  `type_link` int(11) DEFAULT NULL,
  `module_id` int(11) DEFAULT NULL,
  `link` text DEFAULT NULL,
  `description` text DEFAULT NULL,
  `new_window` int(11) NOT NULL DEFAULT 0,
  `status` int(11) NOT NULL DEFAULT 0,
  `position` int(11) NOT NULL DEFAULT 0,
  `submenu_width` text DEFAULT NULL,
  `submenu_type` int(11) NOT NULL DEFAULT 0,
  `content_width` int(11) NOT NULL DEFAULT 12,
  `content_type` int(11) NOT NULL DEFAULT 0,
  `content` text DEFAULT NULL,
  `label_item` varchar(255) NOT NULL DEFAULT '',
  `icon_font` varchar(255) NOT NULL DEFAULT '',
  `class_menu` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=247 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_mega_menu`
--

INSERT INTO `oc_mega_menu` VALUES (92,89,1,'no_image.png','a:2:{i:2;s:11:\"item layout\";i:1;s:11:\"item layout\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:2798:\"&lt;div class=&quot;row&quot;&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-1.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 1 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-2.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 2 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-3.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 3 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?layoutbox=boxed&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/boxed.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - Boxed \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?lang=ar&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/rtl.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - RTL \n &lt;/a&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";i:1;s:2798:\"&lt;div class=&quot;row&quot;&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-1.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 1 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-2.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 2 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/home-3.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 3 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?layoutbox=boxed&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/boxed.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - Boxed \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?lang=ar&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/demo/menu/rtl.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - RTL \n &lt;/a&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:4:{i:0;a:3:{s:4:\"name\";s:14:\"Desktops > Mac\";s:2:\"id\";i:27;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:26:\"Laptops & Notebooks > Macs\";s:2:\"id\";i:46;}i:1;a:2:{s:4:\"name\";s:21:\"Components > Printers\";s:2:\"id\";i:30;}i:2;a:2:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;}i:3;a:2:{s:4:\"name\";s:30:\"Components > Monitors > test 2\";s:2:\"id\";i:36;}i:4;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 17\";s:2:\"id\";i:49;}}}i:1;a:3:{s:4:\"name\";s:30:\"Components > Monitors > test 1\";s:2:\"id\";i:35;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 11\";s:2:\"id\";i:43;}i:1;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 12\";s:2:\"id\";i:44;}i:2;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 20\";s:2:\"id\";i:52;}i:3;a:2:{s:4:\"name\";s:19:\"Laptops & Notebooks\";s:2:\"id\";i:18;}i:4;a:2:{s:4:\"name\";s:21:\"Components > Scanners\";s:2:\"id\";i:31;}}}i:2;a:3:{s:4:\"name\";s:8:\"Software\";s:2:\"id\";i:17;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:26:\"Laptops & Notebooks > Macs\";s:2:\"id\";i:46;}i:1;a:2:{s:4:\"name\";s:11:\"MP3 Players\";s:2:\"id\";i:34;}i:2;a:2:{s:4:\"name\";s:14:\"Desktops > Mac\";s:2:\"id\";i:27;}i:3;a:2:{s:4:\"name\";s:32:\"Components > Mice and Trackballs\";s:2:\"id\";i:29;}i:4;a:2:{s:4:\"name\";s:21:\"Components > Monitors\";s:2:\"id\";i:28;}}}i:3;a:3:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:21:\"Components > Printers\";s:2:\"id\";i:30;}i:1;a:2:{s:4:\"name\";s:13:\"Desktops > PC\";s:2:\"id\";i:26;}i:2;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 8\";s:2:\"id\";i:41;}i:3;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 7\";s:2:\"id\";i:40;}i:4;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 6\";s:2:\"id\";i:39;}}}}s:7:\"columns\";s:1:\"2\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','item-layouts'),(94,0,2,'catalog/demo/menu/new-icon.png','a:2:{i:2;s:8:\"Features\";i:1;s:8:\"Features\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'500px',0,3,1,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:2:\"42\";s:4:\"name\";s:21:\"Apple Cinema 30&quot;\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(97,94,3,'no_image.png','a:2:{i:2;s:15:\"Product Listing\";i:1;s:15:\"Product Listing\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:1965:\"&lt;div class=&quot;column&quot;&gt; \n &lt;div&gt; \n &lt;ul class=&quot;row-list content-feature&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-left.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Left&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-right.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Right&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-without.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Without&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail2.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 1&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail1.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 2&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail3.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 3&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;/ul&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";i:1;s:1965:\"&lt;div class=&quot;column&quot;&gt; \n &lt;div&gt; \n &lt;ul class=&quot;row-list content-feature&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-left.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Left&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-right.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Right&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/listing-without.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Without&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail2.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 1&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout2/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail1.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 2&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart/so23_etrostores/layout3/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/detail3.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 3&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;/ul&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:2:\"29\";s:4:\"name\";s:13:\"Palm Treo Pro\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(100,0,5,'no_image.png','a:2:{i:2;s:11:\"Collections\";i:1;s:11:\"Collections\";}',1,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"57\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','New','',' item-style1'),(102,0,19,'no_image.png','a:2:{i:2;s:0:\"\";i:1;s:4:\"Blog\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(103,100,13,'no_image.png','a:2:{i:2;s:16:\"Sub categories 4\";i:1;s:16:\"Sub categories 4\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,5,'a:7:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:11:\"manufacture\";a:2:{s:4:\"name\";a:5:{i:0;s:5:\"Apple\";i:1;s:5:\"Canon\";i:2;s:3:\"HTC\";i:3;s:4:\"Palm\";i:4;s:15:\"Hewlett-Packard\";}s:2:\"id\";a:5:{i:0;s:1:\"8\";i:1;s:1:\"9\";i:2;s:1:\"5\";i:3;s:1:\"6\";i:4;s:1:\"7\";}}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"33\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(122,100,6,'no_image.png','a:2:{i:2;s:8:\"banner 1\";i:1;s:8:\"banner 1\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:40:\"catalog/demo/menu/megabanner/image-1.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(115,114,16,'no_image.png','a:2:{i:2;s:6:\"Banner\";i:1;s:6:\"Banner\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:434:\"&lt;div class=&quot;img-banner-w&quot;&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-5.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-6.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;/div&gt;\";i:1;s:434:\"&lt;div class=&quot;img-banner-w&quot;&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-5.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-6.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:21:\"catalog/demo/hp_1.jpg\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','item-banner'),(84,0,20,'catalog/demo/menu/hot-icon.png','a:2:{i:2;s:12:\"Black Friday\";i:1;s:12:\"Black Friday\";}',0,44,'a:2:{s:3:\"url\";s:22:\"?route=product/special\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,1,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:10:\"&lt;br&gt;\";i:1;s:10:\"&lt;br&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','special-2 pull-right'),(126,0,21,'no_image.png','a:2:{i:2;s:13:\"Special Offer\";i:1;s:13:\"Special Offer\";}',0,44,'a:2:{s:3:\"url\";s:22:\"?route=product/special\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','special-offer pull-right'),(99,0,4,'no_image.png','a:2:{i:2;s:23:\"Smartphone &amp; Tablet\";i:1;s:23:\"Smartphone &amp; Tablet\";}',1,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"33\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' menuitem-layout2'),(89,0,0,'no_image.png','a:2:{i:2;s:6:\"Layout\";i:1;s:6:\"Layout\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'80%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(104,100,12,'no_image.png','a:2:{i:2;s:16:\"Sub categories 3\";i:1;s:16:\"Sub categories 3\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:2:\"45\";s:4:\"name\";s:11:\"MacBook Pro\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"57\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(105,100,11,'no_image.png','a:2:{i:2;s:13:\"Sub category2\";i:1;s:13:\"Sub category2\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"20\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:2:{i:0;a:3:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:13:\"Desktops > PC\";s:2:\"id\";i:26;}i:1;a:2:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;}i:2;a:2:{s:4:\"name\";s:11:\"MP3 Players\";s:2:\"id\";i:34;}i:3;a:2:{s:4:\"name\";s:26:\"Laptops & Notebooks > Macs\";s:2:\"id\";i:46;}i:4;a:2:{s:4:\"name\";s:14:\"Desktops > Mac\";s:2:\"id\";i:27;}i:5;a:2:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;}}}i:1;a:3:{s:4:\"name\";s:32:\"Components > Mice and Trackballs\";s:2:\"id\";i:29;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:21:\"Components > Monitors\";s:2:\"id\";i:28;}i:1;a:2:{s:4:\"name\";s:30:\"Components > Monitors > test 1\";s:2:\"id\";i:35;}i:2;a:2:{s:4:\"name\";s:8:\"Software\";s:2:\"id\";i:17;}i:3;a:2:{s:4:\"name\";s:21:\"Components > Scanners\";s:2:\"id\";i:31;}i:4;a:2:{s:4:\"name\";s:10:\"Components\";s:2:\"id\";i:25;}}}}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(106,100,10,'no_image.png','a:2:{i:2;s:13:\"Sub category1\";i:1;s:13:\"Sub category1\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"18\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:2:{i:0;a:3:{s:4:\"name\";s:32:\"Components > Mice and Trackballs\";s:2:\"id\";i:29;s:8:\"children\";a:15:{i:0;a:2:{s:4:\"name\";s:21:\"Components > Monitors\";s:2:\"id\";i:28;}i:1;a:2:{s:4:\"name\";s:14:\"Desktops > Mac\";s:2:\"id\";i:27;}i:2;a:2:{s:4:\"name\";s:26:\"Laptops & Notebooks > Macs\";s:2:\"id\";i:46;}i:3;a:2:{s:4:\"name\";s:11:\"MP3 Players\";s:2:\"id\";i:34;}i:4;a:2:{s:4:\"name\";s:30:\"Components > Monitors > test 1\";s:2:\"id\";i:35;}i:5;a:2:{s:4:\"name\";s:30:\"Components > Monitors > test 2\";s:2:\"id\";i:36;}i:6;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 8\";s:2:\"id\";i:41;}i:7;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 6\";s:2:\"id\";i:39;}i:8;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 5\";s:2:\"id\";i:37;}i:9;a:2:{s:4:\"name\";s:20:\"MP3 Players > test 4\";s:2:\"id\";i:38;}i:10;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 24\";s:2:\"id\";i:56;}i:11;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 23\";s:2:\"id\";i:55;}i:12;a:2:{s:4:\"name\";s:21:\"MP3 Players > test 21\";s:2:\"id\";i:53;}i:13;a:2:{s:4:\"name\";s:10:\"Components\";s:2:\"id\";i:25;}i:14;a:2:{s:4:\"name\";s:7:\"Cameras\";s:2:\"id\";i:33;}}}i:1;a:3:{s:4:\"name\";s:21:\"Components > Printers\";s:2:\"id\";i:30;s:8:\"children\";a:15:{i:0;a:2:{s:4:\"name\";s:13:\"Phones & PDAs\";s:2:\"id\";i:24;}i:1;a:2:{s:4:\"name\";s:13:\"Desktops > PC\";s:2:\"id\";i:26;}i:2;a:2:{s:4:\"name\";s:8:\"Software\";s:2:\"id\";i:17;}i:3;a:2:{s:4:\"name\";s:21:\"Components > Scanners\";s:2:\"id\";i:31;}i:4;a:2:{s:4:\"name\";s:8:\"Desktops\";s:2:\"id\";i:20;}i:5;a:2:{s:4:\"name\";s:19:\"Laptops & Notebooks\";s:2:\"id\";i:18;}i:6;a:2:{s:4:\"name\";s:26:\"Laptops & Notebooks > Macs\";s:2:\"id\";i:46;}i:7;a:2:{s:4:\"name\";s:11:\"MP3 Players\";s:2:\"id\";i:34;}i:8;a:2:{s:4:\"name\";s:32:\"Components > Mice and Trackballs\";s:2:\"id\";i:29;}i:9;a:2:{s:4:\"name\";s:21:\"Components > Monitors\";s:2:\"id\";i:28;}i:10;a:2:{s:4:\"name\";s:14:\"Desktops > Mac\";s:2:\"id\";i:27;}i:11;a:2:{s:4:\"name\";s:8:\"Software\";s:2:\"id\";i:17;}i:12;a:2:{s:4:\"name\";s:21:\"Components > Scanners\";s:2:\"id\";i:31;}i:13;a:2:{s:4:\"name\";s:10:\"Components\";s:2:\"id\";i:25;}i:14;a:2:{s:4:\"name\";s:7:\"Cameras\";s:2:\"id\";i:33;}}}}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"3\";}}','','','subcate-col'),(127,0,0,'no_image.png','a:2:{i:2;s:7:\"Layouts\";i:1;s:7:\"Layouts\";}',0,61,'a:2:{s:3:\"url\";s:35:\"index.php?route=information/contact\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'80%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','full-width menu-layouts'),(128,127,1,'no_image.png','a:2:{i:2;s:11:\"item layout\";i:1;s:11:\"item layout\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:3305:\"&lt;div class=&quot;row&quot;&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-1.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 1 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-2.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 2 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-3.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 3 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?layoutbox=boxed&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/boxed.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - Boxed \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?lang=ar-ar&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/rtl.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - RTL \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;http://opencart.opencartworks.com/themes/so_matrix/intro/mobile/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/mobile.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Mobile Layouts \n &lt;/a&gt; \n &lt;/div&gt; \n&lt;/div&gt; \n\";i:1;s:3305:\"&lt;div class=&quot;row&quot;&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-1.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 1 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-2.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 2 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;min-height: 150px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/home-3.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home Layout 3 \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?layoutbox=boxed&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/boxed.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - Boxed \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?lang=ar-ar&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/rtl.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Home page - RTL \n &lt;/a&gt; \n &lt;/div&gt; \n &lt;div class=&quot;col-md-4 col-sm-12&quot; style=&quot;text-align: center; margin-bottom: 20px;&quot;&gt; \n &lt;a href=&quot;http://opencart.opencartworks.com/themes/so_matrix/intro/mobile/&quot; title=&quot;&quot; style=&quot;font-size: 11px;text-transform: uppercase;font-weight: 600;text-align: center;&quot;&gt; \n &lt;img src=&quot;image/catalog/menu/mobile.jpg&quot; alt=&quot;layout&quot; style=&quot;margin: 0 0 10px; border: 1px solid #ddd;display: inline-block&quot;&gt; \n Mobile Layouts \n &lt;/a&gt; \n &lt;/div&gt; \n&lt;/div&gt; \n\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','item-layouts'),(170,0,20,'no_image.png','a:2:{i:2;s:10:\"Automotive\";i:1;s:10:\"Automotive\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(114,0,14,'catalog/demo/menu/hot-icon.png','a:2:{i:2;s:4:\"Shop\";i:1;s:4:\"Shop\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','Hot','',' item-style2'),(119,114,15,'no_image.png','a:2:{i:2;s:10:\"Categories\";i:1;s:16:\"Sub categories 4\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,2,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:21:\"catalog/demo/hp_2.jpg\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:4:{i:0;a:3:{s:4:\"name\";s:8:\"Computer\";s:2:\"id\";i:33;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:28:\"Computer  >  Esdipiscing\";s:2:\"id\";i:64;}i:1;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}i:2;a:2:{s:4:\"name\";s:22:\"Computer  >  Apple\";s:2:\"id\";i:59;}i:3;a:2:{s:4:\"name\";s:21:\"Computer  >  Dell\";s:2:\"id\";i:60;}i:4;a:2:{s:4:\"name\";s:24:\"Computer  >  Toshiba\";s:2:\"id\";i:61;}i:5;a:2:{s:4:\"name\";s:21:\"Computer  >  Sony\";s:2:\"id\";i:63;}}}i:1;a:3:{s:4:\"name\";s:10:\"Technology\";s:2:\"id\";i:57;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:25:\"Technology  >  Egante\";s:2:\"id\";i:78;}i:1;a:2:{s:4:\"name\";s:32:\"Technology  >  Gante extensg\";s:2:\"id\";i:79;}i:2;a:2:{s:4:\"name\";s:32:\"Technology  >  Rengae manges\";s:2:\"id\";i:81;}i:3;a:2:{s:4:\"name\";s:31:\"Technology  >  Angene mafin\";s:2:\"id\";i:77;}i:4;a:2:{s:4:\"name\";s:32:\"Technology  >  Guntes magesg\";s:2:\"id\";i:80;}i:5;a:2:{s:4:\"name\";s:30:\"Technology  >  Sine engain\";s:2:\"id\";i:82;}}}i:2;a:3:{s:4:\"name\";s:11:\"Electronics\";s:2:\"id\";i:25;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:31:\"Electronics  >  Asdipiscing\";s:2:\"id\";i:29;}i:1;a:2:{s:4:\"name\";s:28:\"Electronics  >  Diam sit\";s:2:\"id\";i:35;}i:2;a:2:{s:4:\"name\";s:29:\"Electronics  >  Labore et\";s:2:\"id\";i:36;}i:3;a:2:{s:4:\"name\";s:28:\"Electronics  >  Monitors\";s:2:\"id\";i:28;}i:4;a:2:{s:4:\"name\";s:28:\"Electronics  >  Printers\";s:2:\"id\";i:30;}i:5;a:2:{s:4:\"name\";s:28:\"Electronics  >  Scanners\";s:2:\"id\";i:31;}}}i:3;a:3:{s:4:\"name\";s:10:\"Smartphone\";s:2:\"id\";i:18;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:31:\"Smartphone  >   Tange manue\";s:2:\"id\";i:72;}i:1;a:2:{s:4:\"name\";s:32:\"Smartphone  >  Hanet magente\";s:2:\"id\";i:46;}i:2;a:2:{s:4:\"name\";s:30:\"Smartphone  >  Knage unget\";s:2:\"id\";i:45;}i:3;a:2:{s:4:\"name\";s:32:\"Smartphone  >  Latenge mange\";s:2:\"id\";i:69;}i:4;a:2:{s:4:\"name\";s:31:\"Smartphone  >  Punge nenune\";s:2:\"id\";i:70;}i:5;a:2:{s:4:\"name\";s:30:\"Smartphone  >  Qunge genga\";s:2:\"id\";i:71;}}}}s:7:\"columns\";s:1:\"4\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(120,121,18,'no_image.png','a:2:{i:2;s:10:\"List pages\";i:1;s:10:\"List pages\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:1324:\"&lt;ul class=&quot;row-list&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=4&quot;&gt;About US&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/contact&quot;&gt;Contact us&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=3&quot;&gt;Warranty And Services&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=11&quot;&gt;Support 24/7 Page&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=product/special&quot;&gt;Special Offer&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/bestseller&quot;&gt;Best Seller&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/categories&quot;&gt;Categories&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/newarrivals&quot;&gt;New Arrivals&lt;/a&gt;&lt;/li&gt; \n&lt;/ul&gt;\";i:1;s:1324:\"&lt;ul class=&quot;row-list&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=4&quot;&gt;About US&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/contact&quot;&gt;Contact us&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=3&quot;&gt;Warranty And Services&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=11&quot;&gt;Support 24/7 Page&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=product/special&quot;&gt;Special Offer&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/bestseller&quot;&gt;Best Seller&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/categories&quot;&gt;Categories&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/newarrivals&quot;&gt;New Arrivals&lt;/a&gt;&lt;/li&gt; \n&lt;/ul&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:1:\"4\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"4\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(121,0,17,'no_image.png','a:2:{i:2;s:5:\"Pages\";i:1;s:5:\"Pages\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'250px',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";i:1;s:29:\"&lt;p&gt;&lt;br&gt;&lt;/p&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"1\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:0:\"\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"1\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(123,100,7,'no_image.png','a:2:{i:2;s:8:\"banner 2\";i:1;s:8:\"banner 2\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:40:\"catalog/demo/menu/megabanner/image-2.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(124,100,8,'no_image.png','a:2:{i:2;s:8:\"banner 3\";i:1;s:8:\"banner 3\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:40:\"catalog/demo/menu/megabanner/image-3.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(125,100,9,'no_image.png','a:2:{i:2;s:8:\"banner 4\";i:1;s:8:\"banner 4\";}',0,44,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,3,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:40:\"catalog/demo/menu/megabanner/image-4.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(129,0,2,'','a:2:{i:2;s:8:\"Features\";i:1;s:8:\"Features\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'50%',0,6,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','full-width menu-features'),(130,129,3,'no_image.png','a:2:{i:2;s:14:\"Listing detail\";i:1;s:14:\"Listing detail\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:1984:\"&lt;div class=&quot;column&quot;&gt; \n &lt;div&gt; \n &lt;ul class=&quot;row-list content-feature&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-left.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Left&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-right.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Right&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;last&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-without.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Without&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail2.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 1&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail3.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 2&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail1.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 3&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;/ul&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";i:1;s:1984:\"&lt;div class=&quot;column&quot;&gt; \n &lt;div&gt; \n &lt;ul class=&quot;row-list content-feature&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-left.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Left&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-right.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Right&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;last&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/index.php?route=product/category&amp;amp;path=57&quot;&gt;&lt;img src=&quot;image/catalog/menu/listing-without.png&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Category Without&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail2.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 1&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout2/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail3.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 2&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;li class=&quot;detail&quot;&gt;&lt;a href=&quot;/ytc_templates/opencart3/so3_matrix/layout3/index.php?route=product/product&amp;amp;product_id=76&quot;&gt;&lt;img src=&quot;image/catalog/menu/detail1.jpg&quot; alt=&quot;img&quot;&gt;&lt;span&gt;Product Detail 3&lt;/span&gt;&lt;/a&gt;&lt;/li&gt; \n &lt;/ul&gt; \n &lt;/div&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(131,0,4,'no_image.png','a:2:{i:2;s:11:\"Electronics\";i:1;s:11:\"Electronics\";}',1,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"57\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'670px',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','New','',' item-style1'),(132,131,6,'no_image.png','a:2:{i:2;s:8:\"banner 1\";i:1;s:8:\"banner 1\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:35:\"catalog/menu/megabanner/image-1.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(169,141,14,'no_image.png','a:2:{i:2;s:7:\"Product\";i:1;s:7:\"Product\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,1,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:2:\"84\";s:4:\"name\";s:18:\"Benderloin officia\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','hot','fa fa-home',''),(136,141,12,'no_image.png','a:2:{i:2;s:13:\"Sub category1\";i:1;s:13:\"Sub category1\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"18\";}\";s:13:\"limit_level_1\";s:1:\"8\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"0\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(137,140,8,'no_image.png','a:2:{i:2;s:13:\"Sub category2\";i:1;s:13:\"Sub category2\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"20\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(138,140,9,'no_image.png','a:2:{i:2;s:16:\"Sub categories 3\";i:1;s:16:\"Sub categories 3\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"57\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(139,140,10,'no_image.png','a:2:{i:2;s:16:\"Sub categories 4\";i:1;s:16:\"Sub categories 4\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,3,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"33\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(140,0,7,'no_image.png','a:2:{i:2;s:6:\"Mobile\";i:1;s:6:\"Mobile\";}',1,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"18\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' menuitem-layout2'),(141,0,11,'','a:2:{i:2;s:4:\"Shop\";i:1;s:4:\"Shop\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'690px',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' item-style2'),(142,131,5,'no_image.png','a:2:{i:2;s:10:\"Categories\";i:1;s:10:\"Categories\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,8,2,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:4:{i:0;a:3:{s:4:\"name\";s:8:\"Computer\";s:2:\"id\";i:33;s:8:\"children\";a:4:{i:0;a:2:{s:4:\"name\";s:22:\"Computer  >  Apple\";s:2:\"id\";i:59;}i:1;a:2:{s:4:\"name\";s:21:\"Computer  >  Dell\";s:2:\"id\";i:60;}i:2;a:2:{s:4:\"name\";s:24:\"Computer  >  Toshiba\";s:2:\"id\";i:61;}i:3;a:2:{s:4:\"name\";s:21:\"Computer  >  Sony\";s:2:\"id\";i:63;}}}i:1;a:3:{s:4:\"name\";s:11:\"Electronics\";s:2:\"id\";i:25;s:8:\"children\";a:4:{i:0;a:2:{s:4:\"name\";s:31:\"Electronics  >  Asdipiscing\";s:2:\"id\";i:29;}i:1;a:2:{s:4:\"name\";s:28:\"Electronics  >  Diam sit\";s:2:\"id\";i:35;}i:2;a:2:{s:4:\"name\";s:29:\"Electronics  >  Labore et\";s:2:\"id\";i:36;}i:3;a:2:{s:4:\"name\";s:28:\"Electronics  >  Scanners\";s:2:\"id\";i:31;}}}i:2;a:3:{s:4:\"name\";s:10:\"Smartphone\";s:2:\"id\";i:18;s:8:\"children\";a:4:{i:0;a:2:{s:4:\"name\";s:31:\"Smartphone  >   Tange manue\";s:2:\"id\";i:72;}i:1;a:2:{s:4:\"name\";s:30:\"Smartphone  >  Knage unget\";s:2:\"id\";i:45;}i:2;a:2:{s:4:\"name\";s:32:\"Smartphone  >  Latenge mange\";s:2:\"id\";i:69;}i:3;a:2:{s:4:\"name\";s:30:\"Smartphone  >  Qunge genga\";s:2:\"id\";i:71;}}}i:3;a:3:{s:4:\"name\";s:10:\"Technology\";s:2:\"id\";i:57;s:8:\"children\";a:4:{i:0;a:2:{s:4:\"name\";s:31:\"Technology  >  Angene mafin\";s:2:\"id\";i:77;}i:1;a:2:{s:4:\"name\";s:32:\"Technology  >  Rengae manges\";s:2:\"id\";i:81;}i:2;a:2:{s:4:\"name\";s:32:\"Technology  >  Guntes magesg\";s:2:\"id\";i:80;}i:3;a:2:{s:4:\"name\";s:32:\"Technology  >  Guntes magesg\";s:2:\"id\";i:80;}}}}s:7:\"columns\";s:1:\"2\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','sub-left'),(143,141,13,'no_image.png','a:2:{i:2;s:8:\"products\";i:1;s:8:\"products\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,1,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:434:\"&lt;div class=&quot;img-banner-w&quot;&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-5.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-6.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;/div&gt;\";i:1;s:434:\"&lt;div class=&quot;img-banner-w&quot;&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-5.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;div class=&quot;img-banner&quot;&gt;&lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/demo/menu/megabanner/image-6.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt;&lt;/div&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:2:\"96\";s:4:\"name\";s:16:\"Doenpuis consuat\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','item-products'),(144,0,15,'no_image.png','a:2:{i:2;s:5:\"Pages\";i:1;s:5:\"Pages\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'230px',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','style-page'),(145,144,16,'no_image.png','a:2:{i:2;s:10:\"List pages\";i:1;s:10:\"List pages\";}',0,61,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:1323:\"&lt;ul class=&quot;row-list&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=4&quot;&gt;About US&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/contact&quot;&gt;Contact us&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=6&quot;&gt;Warranty And Services&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=7&quot;&gt;Support 24/7 Page&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=product/special&quot;&gt;Special Offer&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/bestseller&quot;&gt;Best Seller&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/categories&quot;&gt;Categories&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/newarrivals&quot;&gt;New Arrivals&lt;/a&gt;&lt;/li&gt; \n&lt;/ul&gt;\";i:1;s:1323:\"&lt;ul class=&quot;row-list&quot; style=&quot;font-size: 14px;&quot;&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=4&quot;&gt;About US&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/contact&quot;&gt;Contact us&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=6&quot;&gt;Warranty And Services&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=information/information&amp;amp;information_id=7&quot;&gt;Support 24/7 Page&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=product/special&quot;&gt;Special Offer&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/bestseller&quot;&gt;Best Seller&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/categories&quot;&gt;Categories&lt;/a&gt;&lt;/li&gt; \n &lt;li&gt;&lt;a class=&quot;subcategory_item&quot; href=&quot;index.php?route=custom/newarrivals&quot;&gt;New Arrivals&lt;/a&gt;&lt;/li&gt; \n&lt;/ul&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(146,0,17,'no_image.png','a:2:{i:2;s:4:\"Blog\";i:1;s:4:\"Blog\";}',0,61,'a:2:{s:3:\"url\";s:45:\"index.php?route=extension/simple_blog/article\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(147,0,18,'catalog/demo/menu/hot-icon.png','a:2:{i:2;s:12:\"Black Friday\";i:1;s:12:\"Black Friday\";}',0,61,'a:2:{s:3:\"url\";s:22:\"?route=product/special\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','special-2 pull-right'),(148,0,19,'no_image.png','a:2:{i:2;s:13:\"Special Offer\";i:1;s:13:\"Special Offer\";}',0,61,'a:2:{s:3:\"url\";s:22:\"?route=product/special\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','special-offer pull-right'),(149,0,0,'no_image.png','a:2:{i:2;s:10:\"Smartphone\";i:1;s:10:\"Smartphone\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"34\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' style1'),(150,149,1,'no_image.png','a:2:{i:2;s:12:\"Sub category\";i:1;s:12:\"Sub category\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,8,2,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:4:{i:0;a:3:{s:4:\"name\";s:8:\"Computer\";s:2:\"id\";i:33;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:28:\"Computer  >  Esdipiscing\";s:2:\"id\";i:64;}i:1;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}i:2;a:2:{s:4:\"name\";s:22:\"Computer  >  Apple\";s:2:\"id\";i:59;}i:3;a:2:{s:4:\"name\";s:21:\"Computer  >  Dell\";s:2:\"id\";i:60;}i:4;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}}}i:1;a:3:{s:4:\"name\";s:11:\"Electronics\";s:2:\"id\";i:25;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:31:\"Electronics  >  Asdipiscing\";s:2:\"id\";i:29;}i:1;a:2:{s:4:\"name\";s:28:\"Electronics  >  Diam sit\";s:2:\"id\";i:35;}i:2;a:2:{s:4:\"name\";s:29:\"Electronics  >  Labore et\";s:2:\"id\";i:36;}i:3;a:2:{s:4:\"name\";s:28:\"Electronics  >  Monitors\";s:2:\"id\";i:28;}i:4;a:2:{s:4:\"name\";s:28:\"Electronics  >  Printers\";s:2:\"id\";i:30;}}}i:2;a:3:{s:4:\"name\";s:10:\"Smartphone\";s:2:\"id\";i:18;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:31:\"Smartphone  >   Tange manue\";s:2:\"id\";i:72;}i:1;a:2:{s:4:\"name\";s:32:\"Smartphone  >  Hanet magente\";s:2:\"id\";i:46;}i:2;a:2:{s:4:\"name\";s:30:\"Smartphone  >  Knage unget\";s:2:\"id\";i:45;}i:3;a:2:{s:4:\"name\";s:32:\"Smartphone  >  Latenge mange\";s:2:\"id\";i:69;}i:4;a:2:{s:4:\"name\";s:31:\"Smartphone  >  Punge nenune\";s:2:\"id\";i:70;}}}i:3;a:3:{s:4:\"name\";s:10:\"Technology\";s:2:\"id\";i:57;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:31:\"Technology  >  Angene mafin\";s:2:\"id\";i:77;}i:1;a:2:{s:4:\"name\";s:32:\"Technology  >  Rengae manges\";s:2:\"id\";i:81;}i:2;a:2:{s:4:\"name\";s:25:\"Technology  >  Egante\";s:2:\"id\";i:78;}i:3;a:2:{s:4:\"name\";s:32:\"Technology  >  Gante extensg\";s:2:\"id\";i:79;}i:4;a:2:{s:4:\"name\";s:32:\"Technology  >  Guntes magesg\";s:2:\"id\";i:80;}}}}s:7:\"columns\";s:1:\"2\";s:7:\"submenu\";s:1:\"2\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(151,149,2,'no_image.png','a:2:{i:2;s:12:\"HTML Content\";i:1;s:12:\"HTML Content\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"34\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:486:\"&lt;div class=&quot;img-vbanner&quot;&gt; \n &lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner1.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n &lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner2.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n &lt;a class=&quot;last&quot; href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner3.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n&lt;/div&gt;\";i:1;s:486:\"&lt;div class=&quot;img-vbanner&quot;&gt; \n &lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner1.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n &lt;a href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner2.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n &lt;a class=&quot;last&quot; href=&quot;#&quot;&gt;&lt;img src=&quot;image/catalog/menu/megabanner/v-banner3.jpg&quot; alt=&quot;banner&quot;&gt;&lt;/a&gt; \n&lt;/div&gt;\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(152,0,3,'no_image.png','a:2:{i:2;s:10:\"Electronic\";i:1;s:10:\"Electronic\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(153,0,4,'no_image.png','a:2:{i:2;s:8:\"Computer\";i:1;s:8:\"Computer\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"33\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' item-style3'),(154,153,5,'no_image.png','a:2:{i:2;s:12:\"Sub category\";i:1;s:12:\"Sub category\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,1,0,'100%',0,5,2,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:2:{i:0;a:3:{s:4:\"name\";s:10:\"Technology\";s:2:\"id\";i:57;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:31:\"Technology  >  Angene mafin\";s:2:\"id\";i:77;}i:1;a:2:{s:4:\"name\";s:25:\"Technology  >  Egante\";s:2:\"id\";i:78;}i:2;a:2:{s:4:\"name\";s:32:\"Technology  >  Rengae manges\";s:2:\"id\";i:81;}i:3;a:2:{s:4:\"name\";s:32:\"Technology  >  Gante extensg\";s:2:\"id\";i:79;}i:4;a:2:{s:4:\"name\";s:32:\"Technology  >  Guntes magesg\";s:2:\"id\";i:80;}i:5;a:2:{s:4:\"name\";s:30:\"Technology  >  Sine engain\";s:2:\"id\";i:82;}}}i:1;a:3:{s:4:\"name\";s:8:\"Computer\";s:2:\"id\";i:33;s:8:\"children\";a:6:{i:0;a:2:{s:4:\"name\";s:22:\"Computer  >  Apple\";s:2:\"id\";i:59;}i:1;a:2:{s:4:\"name\";s:21:\"Computer  >  Dell\";s:2:\"id\";i:60;}i:2;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}i:3;a:2:{s:4:\"name\";s:28:\"Computer  >  Esdipiscing\";s:2:\"id\";i:64;}i:4;a:2:{s:4:\"name\";s:24:\"Computer  >  Toshiba\";s:2:\"id\";i:61;}i:5;a:2:{s:4:\"name\";s:21:\"Computer  >  Sony\";s:2:\"id\";i:63;}}}}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(155,0,6,'no_image.png','a:2:{i:2;s:21:\"Laptop &amp; Notebook\";i:1;s:21:\"Laptop &amp; Notebook\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"33\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' item-style2'),(156,155,7,'no_image.png','a:2:{i:2;s:8:\"banner 1\";i:1;s:8:\"banner 1\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:37:\"catalog/menu/megabanner/v-banner4.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(157,155,8,'no_image.png','a:2:{i:2;s:8:\"banner 2\";i:1;s:8:\"banner 2\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:37:\"catalog/menu/megabanner/v-banner5.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(158,155,9,'no_image.png','a:2:{i:2;s:8:\"banner 3\";i:1;s:8:\"banner 3\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,4,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:37:\"catalog/menu/megabanner/v-banner6.jpg\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:17:\"a:1:{i:0;s:0:\"\";}\";s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(159,155,10,'no_image.png','a:2:{i:2;s:10:\"sub cate 1\";i:1;s:10:\"sub cate 1\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"25\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:0:{}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(160,155,11,'no_image.png','a:2:{i:2;s:10:\"sub cate 2\";i:1;s:10:\"sub cate 2\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"18\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(161,155,12,'no_image.png','a:2:{i:2;s:9:\"sub cate3\";i:1;s:9:\"sub cate3\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,5,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:19:\"a:1:{i:0;s:2:\"33\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:0:\"\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','subcate-col'),(162,0,13,'no_image.png','a:2:{i:2;s:6:\"Camera\";i:1;s:6:\"Camera\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'250px',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',' css-menu'),(163,162,14,'no_image.png','a:2:{i:2;s:7:\"Submenu\";i:1;s:7:\"Submenu\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,12,2,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:9:{s:8:\"category\";s:32:\"a:2:{i:0;s:2:\"18\";i:1;s:2:\"33\";}\";s:13:\"limit_level_1\";s:1:\"6\";s:13:\"limit_level_2\";s:1:\"6\";s:13:\"limit_level_3\";s:0:\"\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"0\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";a:5:{i:0;a:3:{s:4:\"name\";s:8:\"Computer\";s:2:\"id\";i:33;s:8:\"children\";a:5:{i:0;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}i:1;a:2:{s:4:\"name\";s:22:\"Computer  >  Apple\";s:2:\"id\";i:59;}i:2;a:2:{s:4:\"name\";s:21:\"Computer  >  Dell\";s:2:\"id\";i:60;}i:3;a:2:{s:4:\"name\";s:28:\"Computer  >  Esdipiscing\";s:2:\"id\";i:64;}i:4;a:2:{s:4:\"name\";s:25:\"Computer  >  Scanners\";s:2:\"id\";i:62;}}}i:1;a:3:{s:4:\"name\";s:11:\"Electronics\";s:2:\"id\";i:25;s:8:\"children\";a:3:{i:0;a:2:{s:4:\"name\";s:31:\"Electronics  >  Asdipiscing\";s:2:\"id\";i:29;}i:1;a:2:{s:4:\"name\";s:28:\"Electronics  >  Diam sit\";s:2:\"id\";i:35;}i:2;a:2:{s:4:\"name\";s:29:\"Electronics  >  Labore et\";s:2:\"id\";i:36;}}}i:2;a:2:{s:4:\"name\";s:16:\"Fashion & Beauty\";s:2:\"id\";i:34;}i:3;a:2:{s:4:\"name\";s:10:\"Technology\";s:2:\"id\";i:57;}i:4;a:2:{s:4:\"name\";s:10:\"Smartphone\";s:2:\"id\";i:18;}}s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(164,0,15,'no_image.png','a:2:{i:2;s:9:\"Component\";i:1;s:9:\"Component\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"33\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(165,0,16,'no_image.png','a:2:{i:2;s:9:\"Headphone\";i:1;s:9:\"Headphone\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"79\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(166,0,17,'no_image.png','a:2:{i:2;s:16:\"Sound Equidments\";i:1;s:16:\"Sound Equidments\";}',1,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:2:\"80\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(167,0,18,'no_image.png','a:2:{i:2;s:26:\"Battereries &amp; Chargers\";i:1;s:26:\"Battereries &amp; Chargers\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','',''),(168,0,19,'no_image.png','a:2:{i:2;s:8:\"Game Box\";i:1;s:8:\"Game Box\";}',0,75,'a:2:{s:3:\"url\";s:0:\"\";s:8:\"category\";s:0:\"\";}','a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}',0,0,0,'100%',0,4,0,'a:6:{s:4:\"html\";a:1:{s:4:\"text\";a:2:{i:2;s:0:\"\";i:1;s:0:\"\";}}s:7:\"product\";a:2:{s:2:\"id\";s:0:\"\";s:4:\"name\";s:0:\"\";}s:5:\"image\";a:2:{s:4:\"link\";s:12:\"no_image.png\";s:10:\"show_title\";s:1:\"0\";}s:11:\"subcategory\";a:8:{s:13:\"limit_level_1\";s:1:\"4\";s:13:\"limit_level_2\";s:1:\"4\";s:13:\"limit_level_3\";s:1:\"4\";s:10:\"show_title\";s:1:\"1\";s:10:\"show_image\";s:1:\"1\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}s:11:\"productlist\";a:4:{s:5:\"limit\";s:0:\"\";s:4:\"type\";s:7:\"popular\";s:10:\"show_title\";s:1:\"0\";s:3:\"col\";s:1:\"1\";}s:10:\"categories\";a:4:{s:10:\"categories\";s:2:\"[]\";s:7:\"columns\";s:1:\"1\";s:7:\"submenu\";s:1:\"1\";s:15:\"submenu_columns\";s:1:\"1\";}}','','','');

--
-- Table structure for table `oc_modification`
--

CREATE TABLE `oc_modification` (
  `modification_id` int(11) NOT NULL AUTO_INCREMENT,
  `extension_install_id` int(11) NOT NULL,
  `name` varchar(64) NOT NULL,
  `code` varchar(64) NOT NULL,
  `author` varchar(64) NOT NULL,
  `version` varchar(32) NOT NULL,
  `link` varchar(255) NOT NULL,
  `xml` mediumtext NOT NULL,
  `status` tinyint(1) NOT NULL,
  `date_added` datetime NOT NULL,
  PRIMARY KEY (`modification_id`)
) ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `oc_modification`
--

INSERT INTO `oc_modification` VALUES (1,1,'OCMod Editor','ocmod-editor','Opencartworks','3.0','http://www.opencartworks.com','<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<modification>\n <name>OCMod Editor</name>\n <code>ocmod-editor</code>\n <version>3.0</version>\n <author>Opencartworks</author>\n <link>http://www.opencartworks.com</link>\n <file path=\"admin/controller/marketplace/modification.php\">\n <operation>\n <search>\n <![CDATA[$data[\'refresh\'] = $this->url->link(\'marketplace/modification/refresh\', \'user_token=\' . $this->session->data[\'user_token\'] . $url, true);]]>\n </search>\n <add position=\"before\">\n <![CDATA[$data[\'new\'] = $this->url->link(\'extension/module/modification_editor\', \'user_token=\' . $this->session->data[\'user_token\'] . $url, true);]]>\n </add>\n </operation>\n <operation>\n <search>\n <![CDATA[$data[\'modifications\'][] = array(]]>\n </search>\n <add position=\"after\">\n <![CDATA[\n \'edit\' => $this->url->link(\'extension/module/modification_editor\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&modification_id=\' . $result[\'modification_id\'], true),\n \'download\' => $this->url->link(\'extension/module/modification_editor/download\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&modification_id=\' . $result[\'modification_id\'], true),\n ]]>\n </add>\n </operation>\n <operation>\n <search>\n <![CDATA[$data[\'tab_log\'] = $this->language->get(\'tab_log\');]]>\n </search>\n <add position=\"after\">\n <![CDATA[\n $this->load->language(\'extension/module/modification_editor\');\n $data[\'button_new\'] = $this->language->get(\'button_new\');\n $data[\'button_edit\'] = $this->language->get(\'button_edit\');\n $data[\'button_download\'] = $this->language->get(\'button_download\');\n ]]>\n </add>\n </operation>\n <operation>\n <search index=\"1\">\n <![CDATA[$this->response->redirect($this->url->link(\'marketplace/modification\', \'user_token=\' . $this->session->data[\'user_token\'] . $url, true));]]>\n </search>\n <add position=\"replace\">\n <![CDATA[\n if (isset($this->request->get[\'modification_editor\'])) { \n echo $this->session->data[\'success\'];\n exit;\n } else {\n $this->response->redirect($this->url->link(\'extension/module/modification\', \'user_token=\' . $this->session->data[\'user_token\'] . $url, true));\n }\n ]]>\n </add>\n </operation>\n </file>\n\n <file path=\"admin/view/template/marketplace/modification.twig\">\n <operation>\n <search>\n <![CDATA[<div class=\"pull-right\">]]>\n </search>\n <add position=\"after\">\n <![CDATA[<a href=\"{{new}}\" data-toggle=\"tooltip\" title=\"{{button_new}}\" class=\"btn btn-primary\"><i class=\"fa fa-plus\"></i></a>]]>\n </add>\n </operation>\n <operation>\n <search>\n <![CDATA[{% if not modification.enabled %}]]>\n </search>\n <add position=\"before\">\n <![CDATA[\n <a href=\"{{modification.edit}}\" data-toggle=\"tooltip\" title=\"{{button_edit}}\" class=\"btn btn-primary\"><i class=\"fa fa-pencil\"></i></a>\n <a href=\"{{modification.download}}\" data-toggle=\"tooltip\" title=\"{{button_download}}\" class=\"btn btn-success\"><i class=\"fa fa-cloud-download\"></i></a>\n ]]>\n </add>\n </operation>\n </file>\n</modification> ',1,'2017-06-22 17:05:11'),(3,0,'So ThemeConfig','ocmod-soconfig','OpenCartWorks','3.0.0','http://www.opencartworks.com','<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<modification>\n <name><![CDATA[So ThemeConfig]]></name>\n <code>ocmod-soconfig</code>\n <version><![CDATA[3.0.0]]></version>\n <author><![CDATA[OpenCartWorks]]></author>\n <link>http://www.opencartworks.com</link>\n \n<!--========Catalog/controller/common=============-->\n <file path=\"catalog/controller/common/language.php\">\n <operation>\n <search ><![CDATA[$data[\'languages\'] = array();]]></search>\n <add position=\"after\"><![CDATA[\n if (isset($this->request->get[\'lang\']) && $this->request->get[\'lang\'] == \'ar-ar\') {\n $this->session->data[\'language\'] = $this->request->get[\'lang\'];\n $this->response->redirect($this->url->link(\'common/home\'));\n }\n ]]></add>\n </operation>\n </file>\n \n <file path=\"catalog/controller/common/cart.php\">\n <operation >\n <search ><![CDATA[public function index()]]></search>\n <add position=\"after\" offset=\"2\"><![CDATA[\n /*======Show Themeconfig=======*/\n $this->load->language(\'extension/soconfig/cart\');\n $data[\'objlang\'] = $this->language;\n ]]></add>\n </operation>\n </file>\n <file path=\"catalog/controller/common/{header,footer}*.php\">\n <operation >\n <search ><![CDATA[public function index()]]></search>\n <add position=\"after\"><![CDATA[\n /*======Show Themeconfig=======*/\n $data[\'soconfig\'] = $this->soconfig;\n $this->load->language(\'extension/soconfig/compare\');\n $data[\'objlang\'] = $this->language;\n $data[\'theme_directory\'] = $this->config->get(\'theme_default_directory\');\n $data[\'url_layoutbox\'] = isset($this->request->get[\'layoutbox\']) ? $this->request->get[\'layoutbox\'] : \'\' ;\n $data[\'url_pattern\'] = isset($this->request->get[\'pattern\']) ? $this->request->get[\'pattern\'] : \'\' ;\n $data[\'account_fb\'] = isset($this->request->get[\'account_fb\']) ? $this->request->get[\'account_fb\'] : \'\' ;\n $data[\'compare\'] = $this->url->link(\'product/compare\', \'\', true);\n // add position\n $data[\'content_menu1\'] = $this->load->controller(\'extension/soconfig/content_menu1\');\n $data[\'content_menu2\'] = $this->load->controller(\'extension/soconfig/content_menu2\');\n $data[\'header_block\'] = $this->load->controller(\'extension/soconfig/header_block\');\n $data[\'search_block\'] = $this->load->controller(\'extension/soconfig/search_block\');\n \n $data[\'footer_block1\'] = $this->load->controller(\'extension/soconfig/footer_block1\');\n $data[\'footer_block2\'] = $this->load->controller(\'extension/soconfig/footer_block2\');\n $data[\'footer_block3\'] = $this->load->controller(\'extension/soconfig/footer_block3\');\n // For page specific css\n if (isset($this->request->get[\'route\'])) {\n if (isset($this->request->get[\'product_id\'])) {\n $class = \'-\' . $this->request->get[\'product_id\'];\n } elseif (isset($this->request->get[\'path\'])) {\n $class = \'-\' . $this->request->get[\'path\'];\n } elseif (isset($this->request->get[\'manufacturer_id\'])) {\n $class = \'-\' . $this->request->get[\'manufacturer_id\'];\n } elseif (isset($this->request->get[\'information_id\'])) {\n $class = \'-\' . $this->request->get[\'information_id\'];\n } else {\n $class = \'\';\n }\n\n $data[\'class\'] = str_replace(\'/\', \'-\', $this->request->get[\'route\']) . $class;\n } else {\n $data[\'class\'] = \'common-home\';\n }\n \n //Decodes HTML Entities\n $data[\'selector_body\'] = html_entity_decode($data[\'soconfig\']->get_settings(\'selector_body\'), ENT_QUOTES, \'UTF-8\');\n $data[\'selector_menu\'] = html_entity_decode($data[\'soconfig\']->get_settings(\'selector_menu\'), ENT_QUOTES, \'UTF-8\');\n $data[\'selector_heading\'] = html_entity_decode($data[\'soconfig\']->get_settings(\'selector_heading\'), ENT_QUOTES, \'UTF-8\');\n\n ]]></add>\n </operation>\n </file>\n <file path=\"catalog/controller/common/home.php\">\n <operation >\n <search ><![CDATA[$data[\'header\'] = $this->load->controller(\'common/header\');]]></search>\n <add position=\"before\"><![CDATA[\n $this->load->language(\'extension/soconfig/soconfig\');\n $data[\'objlang\'] = $this->language;\n ]]></add>\n </operation>\n \n </file>\n <file path=\"catalog/controller/common/home.php\">\n <operation >\n <search ><![CDATA[public function index()]]></search>\n <add position=\"after\"><![CDATA[\n $data[\'content_home\'] = $this->load->controller(\'extension/soconfig/content_home\');\n ]]></add>\n </operation>\n </file>\n<!-- ==========catalog/controller/product=========-->\n <file path=\"catalog/controller/product/{search,special,manufacturer,category}*.php\">\n <operation>\n <search ><![CDATA[public function index()]]></search>\n <add position=\"after\"><![CDATA[\n /*=======Show Themeconfig=======*/\n $this->load->model(\'extension/soconfig/general\');\n $this->load->language(\'extension/soconfig/soconfig\');\n $data[\'objlang\'] = $this->language;\n $data[\'soconfig\'] = $this->soconfig;\n $data[\'theme_directory\'] = $this->config->get(\'theme_default_directory\');\n $data[\'our_url\'] = $this->registry->get(\'url\');\n ]]></add>\n </operation>\n \n <operation>\n <search ><![CDATA[$data[\'products\'][] = array(]]></search>\n <add position=\"before\"><![CDATA[\n if ((float)$result[\'special\']) $discount = \'-\'.round((($result[\'price\'] - $result[\'special\'])/$result[\'price\'])*100, 0).\'%\';\n else $discount = false;\n $images_2nd = $this->model_catalog_product->getProductImages($result[\'product_id\']);\n if(isset($images_2nd[0][\'image\']) && !empty($images_2nd[0][\'image\'])) $images_2nd = $images_2nd[0][\'image\'];\n else $images_2nd = false;\n\n /*======Show Cookies List view=====*/\n if(isset($_COOKIE[\"listingType\"]) && $_COOKIE[\"listingType\"]){$data[\'listingType\'] = $_COOKIE[\"listingType\"]; }\n else{$data[\'listingType\'] = $data[\'soconfig\']->get_settings(\'product_catalog_mode\') ? \'list\' : \'grid\';}\n\n\n \n /*======Check New Label=======*/\n $day_range = 30;\n $days = $data[\'soconfig\']->get_settings(\'days\');\n (empty($days)) ? $day = $day_range : $day = $days;\n $day_number_to_range = date( \"Y-m-d\",strtotime(\"-$day day\") );\n if ($result[\'date_available\'] >= $day_number_to_range) $data[\'day_number_boolean\'] = true;\n else $data[\'day_number_boolean\'] = false;\n ]]></add>\n </operation>\n <operation>\n <search><![CDATA[$data[\'products\'][] = array]]></search>\n <add position=\"after\" trim=\"true\" offset=\"2\"><![CDATA[\n \'special_end_date\' => $this->model_extension_soconfig_general->getDateEnd($result[\'product_id\']),\n \'href_quickview\' => htmlspecialchars_decode($this->url->link(\'extension/soconfig/quickview&product_id=\'.$result[\'product_id\'] )),\n \'date_available\' => $data[\'day_number_boolean\'],\n \'thumb2\' => $this->model_tool_image->resize($images_2nd, $this->config->get(\'theme_\' . $this->config->get(\'config_theme\') . \'_image_product_width\'), $this->config->get(\'theme_\' .$this->config->get(\'config_theme\') . \'_image_product_height\')),\n \'discount\' => $discount,]]></add>\n </operation> \n </file>\n <file path=\"catalog/controller/product/category.php\">\n <operation >\n <search ><![CDATA[$data[\'categories\'][] ]]></search>\n <add position=\"before\"><![CDATA[\n if ($result[\'image\']) $image = $this->model_tool_image->resize($result[\'image\'], $this->config->get(\'theme_\' .$this->config->get(\'config_theme\') . \'_image_category_width\'), $this->config->get(\'theme_\' .$this->config->get(\'config_theme\') . \'_image_category_height\'));\n else $image = $this->model_tool_image->resize(\'placeholder.png\', $this->config->get(\'theme_\' .$this->config->get(\'config_theme\') . \'_image_category_width\'),$this->config->get( \'theme_\' .$this->config->get(\'config_theme\') . \'_image_category_height\'));\n ]]>\n </add>\n </operation>\n <operation>\n <search ><![CDATA[$data[\'categories\'][]]]></search>\n <add position=\"after\"><![CDATA[ \'thumb\' => $image,]]></add>\n </operation>\n </file>\n <file path=\"catalog/controller/product/manufacturer.php\">\n <operation>\n <search ><![CDATA[public function info()]]></search>\n <add position=\"after\"><![CDATA[\n /*=======Show Themeconfig=======*/\n $this->load->model(\'extension/soconfig/general\');\n $this->load->language(\'extension/soconfig/soconfig\');\n $data[\'objlang\'] = $this->language;\n $data[\'soconfig\'] = $this->soconfig;\n $data[\'theme_directory\'] = $this->config->get(\'theme_default_directory\');\n $data[\'our_url\'] = $this->registry->get(\'url\');\n ]]></add>\n </operation>\n </file>\n <file path=\"catalog/controller/product/product.php\">\n <operation>\n <search ><![CDATA[public function index()]]></search>\n <add position=\"after\"><![CDATA[\n /*=======Show Themeconfig=======*/\n $this->load->model(\'extension/soconfig/general\');\n $this->load->language(\'extension/soconfig/soconfig\');\n $data[\'objlang\'] = $this->language;\n $data[\'soconfig\'] = $this->soconfig;\n $data[\'theme_directory\'] = $this->config->get(\'theme_default_directory\');\n $data[\'our_url\'] = $this->registry->get(\'url\');\n $direction = $this->language->get(\'direction\');\n $data[\'direction\'] = $this->language->get(\'direction\') == \'rtl\' ? \'yes\' : \'no\' ;\n \n ]]></add>\n </operation>\n <operation error=\"skip\">\n <search ><![CDATA[$this->document->addScript(\'catalog/view/javascript/jquery/magnific/jquery.magnific-popup.min.js\');]]></search>\n <add position=\"replace\"><![CDATA[\n $this->document->addScript(\'catalog/view/javascript/soconfig/js/jquery.elevateZoom-3.0.8.min.js\');\n $this->document->addScript(\'catalog/view/javascript/soconfig/js/lightslider.js\');\n ]]></add>\n </operation>\n <operation error=\"skip\">\n <search ><![CDATA[$this->document->addStyle(\'catalog/view/javascript/jquery/magnific/magnific-popup.css\');]]></search>\n <add position=\"replace\"><![CDATA[$this->document->addStyle(\'catalog/view/javascript/soconfig/css/lightslider.css\');]]></add>\n </operation>\n <operation>\n <search ><![CDATA[$data[\'options\'] = array();]]></search>\n <add position=\"before\"><![CDATA[\n if ((float)$product_info[\'special\']) $data[\'discount\'] = \'-\'.round((($product_info[\'price\'] - $product_info[\'special\'])/$product_info[\'price\'])*100, 0).\'%\';\n else $data[\'discount\'] = false;\n \n /*======Check New Label=======*/\n $day_range = 30;\n $days = $data[\'soconfig\']->get_settings(\'days\');\n (empty($days)) ? $day = $day_range : $day = $days;\n $day_number_to_range = date( \"Y-m-d\",strtotime(\"-$day day\") );\n if ($product_info[\'date_available\'] >= $day_number_to_range) $data[\'day_number_boolean\'] = true;\n else $data[\'day_number_boolean\'] = false;\n\n /*====== insert image to the beginning of array=======*/\n \n $firstimg = array(\'popup\' => $data[\'popup\'],\'thumb\' => $data[\'thumb\']);\n array_unshift($data[\'images\'], $firstimg);\n \n ]]></add>\n </operation>\n <operation>\n <search ><![CDATA[$data[\'products\'][] = array(]]></search>\n <add position=\"before\"><![CDATA[\n if ((float)$result[\'special\']) $discount = \'-\'.round((($result[\'price\'] - $result[\'special\'])/$result[\'price\'])*100, 0).\'%\';\n else $discount = false;\n\n /*======Check New Label=======*/\n $day_range = 30;\n $days = $data[\'soconfig\']->get_settings(\'days\');\n (empty($days)) ? $day = $day_range : $day = $days;\n $day_number_to_range = date( \"Y-m-d\",strtotime(\"-$day day\") );\n if ($result[\'date_available\'] >= $day_number_to_range) $data[\'day_number_boolean\'] = true;\n else $data[\'day_number_boolean\'] = false;\n ]]></add>\n </operation>\n <operation>\n <search><![CDATA[$data[\'products\'][] = array]]></search>\n <add position=\"after\" trim=\"true\" offset=\"2\"><![CDATA[\n \'special_end_date\' => $this->model_extension_soconfig_general->getDateEnd($product_info[\'product_id\']),\n \'date_available\' => $data[\'day_number_boolean\'],\n \'discount\' => $discount,]]></add>\n </operation> \n </file>\n\n<!-- =======system/engine/router===============-->\n <file path=\"system/engine/router.php\">\n <operation>\n <search ><![CDATA[while ($action instanceof Action)]]></search>\n <add position=\"before\"><![CDATA[\n require_once(dirname(DIR_APPLICATION).\'/admin/view/template/extension/soconfig/class/soconfig.php\');\n $soconfig = new Soconfig($this->registry);\n $this->registry->set(\'soconfig\', $soconfig);\n ]]></add>\n </operation>\n </file>\n<!-- ======= Show admin/controller==========-->\n <file path=\"admin/controller/design/layout.php\">\n <operation >\n <search ><![CDATA[public function index()]]></search>\n <add position=\"before\" offset=\"3\"><![CDATA[require_once (DIR_APPLICATION.\'view/template/extension/soconfig/class/so_field.php\');]]></add>\n </operation>\n <operation >\n <search ><![CDATA[design/layout_form]]></search>\n <add position=\"before\"><![CDATA[\n // Add Field Position\n $fields = new So_Fields($data);\n $data[\'fields\'] = $fields;\n ]]></add>\n </operation>\n <operation >\n <search ><![CDATA[design/layout_form]]></search>\n <add position=\"replace\"><![CDATA[extension/soconfig/layout_form]]></add>\n </operation>\n </file>\n \n \n<!-- ======= Show Menu Opencart For Navigation==========-->\n <file path=\"admin/controller/common/column_left.php\">\n <operation>\n <search><![CDATA[$design = array();]]></search>\n <add position=\"before\"><![CDATA[\n $magentech = array();\n if ($this->user->hasPermission(\'access\', \'extension/module/soconfig\')) { \n $magentech[] = array(\n \'name\' => \'So Themes Config\',\n \'href\' => $this->url->link(\'extension/module/soconfig\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/somobile\')) { \n $magentech[] = array(\n \'name\' => \'So Mobile\',\n \'href\' => $this->url->link(\'extension/module/somobile\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_page_builder\')) { \n $magentech[] = array(\n \'name\' => \'So Page Builder\',\n \'href\' => $this->url->link(\'extension/module/so_page_builder\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_megamenu\')) { \n $magentech[] = array(\n \'name\' => \'So Mega Menu\',\n \'href\' => $this->url->link(\'extension/module/so_megamenu\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_searchpro\')) { \n $magentech[] = array(\n \'name\' => \'So Search Pro\',\n \'href\' => $this->url->link(\'extension/module/so_searchpro\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_html_content\')) { \n $magentech[] = array(\n \'name\' => \'So Html Content\',\n \'href\' => $this->url->link(\'extension/module/so_html_content\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_home_slider\')) { \n $magentech[] = array(\n \'name\' => \'So Home Slider\',\n \'href\' => $this->url->link(\'extension/module/so_home_slider\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n /*if ($this->user->hasPermission(\'access\', \'extension/module/so_filter_shop_by\')) { \n $magentech[] = array(\n \'name\' => \'So Filter Shop By\',\n \'href\' => $this->url->link(\'extension/module/so_filter_shop_by\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }*/\n if ($this->user->hasPermission(\'access\', \'extension/module/so_newletter_custom_popup\')) { \n $magentech[] = array(\n \'name\' => \'So Newletter\',\n \'href\' => $this->url->link(\'extension/module/so_newletter_custom_popup\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_deals\')) { \n $magentech[] = array(\n \'name\' => \'So Deals\',\n \'href\' => $this->url->link(\'extension/module/so_deals\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_extra_slider\')) { \n $magentech[] = array(\n \'name\' => \'So Extra Slider\',\n \'href\' => $this->url->link(\'extension/module/so_extra_slider\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_sociallogin\')) { \n $magentech[] = array(\n \'name\' => \'So Social Login\',\n \'href\' => $this->url->link(\'extension/module/so_sociallogin\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_listing_tabs\')) { \n $magentech[] = array(\n \'name\' => \'So Listing Tabs\',\n \'href\' => $this->url->link(\'extension/module/so_listing_tabs\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_popular_tags\')) { \n $magentech[] = array(\n \'name\' => \'So Popular Tags\',\n \'href\' => $this->url->link(\'extension/module/so_popular_tags\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_super_category\')) { \n $magentech[] = array(\n \'name\' => \'So Super Category\',\n \'href\' => $this->url->link(\'extension/module/so_super_category\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_quickview\')) { \n $magentech[] = array(\n \'name\' => \'So Quickview\',\n \'href\' => $this->url->link(\'extension/module/so_quickview\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_onepagecheckout\')) { \n $magentech[] = array(\n \'name\' => \'So Onepage Checkout\',\n \'href\' => $this->url->link(\'extension/module/so_onepagecheckout\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n \n if ($this->user->hasPermission(\'access\', \'extension/module/so_countdown\')) { \n $magentech[] = array(\n \'name\' => \'So Countdown Popup\',\n \'href\' => $this->url->link(\'extension/module/so_countdown\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($this->user->hasPermission(\'access\', \'extension/module/so_latest_blog\')) { \n $magentech[] = array(\n \'name\' => \'So Latest Blog\',\n \'href\' => $this->url->link(\'extension/module/so_latest_blog\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n \'children\' => array()\n );\n }\n if ($magentech) { \n $data[\'menus\'][] = array(\n \'id\' => \'menu-magentech\',\n \'icon\' => \'fa-cubes icon-so\', \n \'name\' => \'OpenCartWorks\',\n \'href\' => \'\',\n \'children\' => $magentech\n ); \n }\n \n ]]></add>\n \n </operation>\n </file>\n</modification> ',1,'2017-06-22 17:09:33'),(43,38,'<font color=\"#15c403\"><b>Booking & Rental System</font>','bookingSystem','<font color=\"#15c403\"><b>Knowband</font>','1.0','','<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<modification>\r\n    <name><![CDATA[<font color=\"#15c403\"><b>Booking & Rental System</font>]]></name>\r\n    <code>bookingSystem</code>\r\n    <version>1.0</version>\r\n    <author><![CDATA[<font color=\"#15c403\"><b>Knowband</font>]]></author>\r\n\r\n       <file path=\"catalog/controller/product/product.php\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[if ($product_info[\'tag\']) {]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                $this->load->model(\'setting/setting\');\r\n                $kbbooking_data = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n                \r\n		if(isset($kbbooking_data[\'kbbooking\'][\'enable\']) && $kbbooking_data[\'kbbooking\'][\'enable\']){\r\n                    $data[\'kbbooking_data\'] = $this->load->controller(\'kbbooking/kbbooking\',$product_info);\r\n                }\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    \r\n    <file path=\"catalog/view/theme/*/template/product/product.twig\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search index=\"1\"><![CDATA[ <div class=\"{{ class }}\"> ]]></search>\r\n            <add position=\"replace\" offset=\"180\"><![CDATA[\r\n            <div class=\"{{ class }}\">\r\n                <div class=\"btn-group\">\r\n                    <button type=\"button\" data-toggle=\"tooltip\" class=\"btn btn-default\" title=\"{{ button_wishlist }}\" onclick=\"wishlist.add(\'{{ product_id }}\');\"><i class=\"fa fa-heart\"></i></button>\r\n                    <button type=\"button\" data-toggle=\"tooltip\" class=\"btn btn-default\" title=\"{{ button_compare }}\" onclick=\"compare.add(\'{{ product_id }}\');\"><i class=\"fa fa-exchange\"></i></button>\r\n                </div>\r\n                <h1>{{ heading_title }}</h1>\r\n                {% if (kbbooking_data[\'booking_template\'] is defined and kbbooking_data[\'booking_template\'] != \'\') %} \r\n                    {{ kbbooking_data[\'booking_template\'] }}\r\n                {% else %} \r\n                    <ul class=\"list-unstyled\">\r\n                      {% if (manufacturer) %} \r\n                      <li>{{ text_manufacturer }} <a href=\"{{ manufacturers }}\">{{ manufacturer }}</a></li>\r\n                      {% endif %} \r\n                      <li>{{ text_model }} {{ model }}</li>\r\n                      {% if (reward) %} \r\n                      <li>{{ text_reward }} {{ reward }}</li>\r\n                      {% endif %} \r\n                      <li>{{ text_stock }} {{ stock }}</li>\r\n                    </ul>\r\n                    {% if (price) %} \r\n                    <ul class=\"list-unstyled\">\r\n                      {% if (not special) %} \r\n                      <li>\r\n                        <h2>{{ price }}</h2>\r\n                      </li>\r\n                      {% else %} \r\n                      <li><span style=\"text-decoration: line-through;\">{{ price }}</span></li>\r\n                      <li>\r\n                        <h2>{{ special }}</h2>\r\n                      </li>\r\n                      {% endif %} \r\n                      {% if (tax) %} \r\n                      <li>{{ text_tax }} {{ tax }}</li>\r\n                      {% endif %} \r\n                      {% if (points) %} \r\n                      <li>{{ text_points }} {{ points }}</li>\r\n                      {% endif %} \r\n                      {% if (discounts) %} \r\n                      <li>\r\n                        <hr>\r\n                      </li>\r\n                      {% for discount in discounts %} \r\n                      <li>{{ discount[\'quantity\'] }}{{ text_discount }}{{ discount[\'price\'] }}</li>\r\n                      {% endfor %} \r\n                      {% endif %} \r\n                    </ul>\r\n                    {% endif %} \r\n                    <div id=\"product\">\r\n                      {% if (options) %} \r\n                      <hr>\r\n                      <h3>{{ text_option }}</h3>\r\n                      {% for option in options %} \r\n                      {% if (option[\'type\'] == \'select\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <select name=\"option[{{ option[\'product_option_id\'] }}]\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\">\r\n                          <option value=\"\">{{ text_select }}</option>\r\n                          {% for option_value in option[\'product_option_value\'] %} \r\n                          <option value=\"{{ option_value[\'product_option_value_id\'] }}\">{{ option_value[\'name\'] }} \r\n                          {% if (option_value[\'price\']) %} \r\n                          ({{ option_value[\'price_prefix\'] }}{{ option_value[\'price\'] }})\r\n                          {% endif %} \r\n                          </option>\r\n                          {% endfor %} \r\n                        </select>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'radio\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\">{{ option[\'name\'] }}</label>\r\n                        <div id=\"input-option{{ option[\'product_option_id\'] }}\">\r\n                          {% for option_value in option[\'product_option_value\'] %} \r\n                          <div class=\"radio\">\r\n                            <label>\r\n                              <input type=\"radio\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"{{ option_value[\'product_option_value_id\'] }}\" />\r\n                              {% if (option_value[\'image\']) %} \r\n                              <img src=\"{{ option_value[\'image\'] }}\" alt=\"{{ option_value[\'name\'] ~ option_value[\'price\'] ? \' \' ~ option_value[\'price_prefix\'] ~ option_value[\'price\'] : \'\' }}\" class=\"img-thumbnail\" /> \r\n                              {% endif %}                    \r\n                              {{ option_value[\'name\'] }} \r\n                              {% if (option_value[\'price\']) %} \r\n                              ({{ option_value[\'price_prefix\'] }}{{ option_value[\'price\'] }})\r\n                              {% endif %} \r\n                            </label>\r\n                          </div>\r\n                          {% endfor %} \r\n                        </div>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'checkbox\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\">{{ option[\'name\'] }}</label>\r\n                        <div id=\"input-option{{ option[\'product_option_id\'] }}\">\r\n                          {% for option_value in option[\'product_option_value\'] %} \r\n                          <div class=\"checkbox\">\r\n                            <label>\r\n                              <input type=\"checkbox\" name=\"option[{{ option[\'product_option_id\'] }}][]\" value=\"{{ option_value[\'product_option_value_id\'] }}\" />\r\n                              {% if (option_value[\'image\']) %} \r\n                              <img src=\"{{ option_value[\'image\'] }}\" alt=\"{{ option_value[\'name\'] ~ option_value[\'price\'] ? \' \' ~ option_value[\'price_prefix\'] ~ option_value[\'price\'] : \'\' }}\" class=\"img-thumbnail\" /> \r\n                              {% endif %} \r\n                              {{ option_value[\'name\'] }} \r\n                              {% if (option_value[\'price\']) %} \r\n                              ({{ option_value[\'price_prefix\'] }}{{ option_value[\'price\'] }})\r\n                              {% endif %} \r\n                            </label>\r\n                          </div>\r\n                          {% endfor %} \r\n                        </div>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'text\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <input type=\"text\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"{{ option[\'value\'] }}\" placeholder=\"{{ option[\'name\'] }}\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\" />\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'textarea\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <textarea name=\"option[{{ option[\'product_option_id\'] }}]\" rows=\"5\" placeholder=\"{{ option[\'name\'] }}\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\">{{ option[\'value\'] }}</textarea>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'file\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\">{{ option[\'name\'] }}</label>\r\n                        <button type=\"button\" id=\"button-upload{{ option[\'product_option_id\'] }}\" data-loading-text=\"{{ text_loading }}\" class=\"btn btn-default btn-block\"><i class=\"fa fa-upload\"></i> {{ button_upload }}</button>\r\n                        <input type=\"hidden\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"\" id=\"input-option{{ option[\'product_option_id\'] }}\" />\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'date\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <div class=\"input-group date\">\r\n                          <input type=\"text\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"{{ option[\'value\'] }}\" data-date-format=\"YYYY-MM-DD\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\" />\r\n                          <span class=\"input-group-btn\">\r\n                          <button class=\"btn btn-default\" type=\"button\"><i class=\"fa fa-calendar\"></i></button>\r\n                          </span></div>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'datetime\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <div class=\"input-group datetime\">\r\n                          <input type=\"text\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"{{ option[\'value\'] }}\" data-date-format=\"YYYY-MM-DD HH:mm\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\" />\r\n                          <span class=\"input-group-btn\">\r\n                          <button type=\"button\" class=\"btn btn-default\"><i class=\"fa fa-calendar\"></i></button>\r\n                          </span></div>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% if (option[\'type\'] == \'time\') %} \r\n                      <div class=\"form-group{{ option[\'required\'] ? \' required\' : \'\' }}\">\r\n                        <label class=\"control-label\" for=\"input-option{{ option[\'product_option_id\'] }}\">{{ option[\'name\'] }}</label>\r\n                        <div class=\"input-group time\">\r\n                          <input type=\"text\" name=\"option[{{ option[\'product_option_id\'] }}]\" value=\"{{ option[\'value\'] }}\" data-date-format=\"HH:mm\" id=\"input-option{{ option[\'product_option_id\'] }}\" class=\"form-control\" />\r\n                          <span class=\"input-group-btn\">\r\n                          <button type=\"button\" class=\"btn btn-default\"><i class=\"fa fa-calendar\"></i></button>\r\n                          </span></div>\r\n                      </div>\r\n                      {% endif %} \r\n                      {% endfor %} \r\n                      {% endif %} \r\n                      {% if (recurrings) %} \r\n                      <hr>\r\n                      <h3>{{ text_payment_recurring }}</h3>\r\n                      <div class=\"form-group required\">\r\n                        <select name=\"recurring_id\" class=\"form-control\">\r\n                          <option value=\"\">{{ text_select }}</option>\r\n                          {% for recurring in recurrings %} \r\n                          <option value=\"{{ recurring[\'recurring_id\'] }}\">{{ recurring[\'name\'] }}</option>\r\n                          {% endfor %} \r\n                        </select>\r\n                        <div class=\"help-block\" id=\"recurring-description\"></div>\r\n                      </div>\r\n                      {% endif %} \r\n                      <div class=\"form-group\">\r\n                        <label class=\"control-label\" for=\"input-quantity\">{{ entry_qty }}</label>\r\n                        <input type=\"text\" name=\"quantity\" value=\"{{ minimum }}\" size=\"2\" id=\"input-quantity\" class=\"form-control\" />\r\n                        <input type=\"hidden\" name=\"product_id\" value=\"{{ product_id }}\" />\r\n                        <br />\r\n                        <button type=\"button\" id=\"button-cart\" data-loading-text=\"{{ text_loading }}\" class=\"btn btn-primary btn-lg btn-block\">{{ button_cart }}</button>\r\n                      </div>\r\n                      {% if (minimum > 1) %} \r\n                      <div class=\"alert alert-info\"><i class=\"fa fa-info-circle\"></i> {{ text_minimum }}</div>\r\n                      {% endif %} \r\n                    </div>\r\n                    {% if (review_status) %} \r\n                    <div class=\"rating\">\r\n                      <p>\r\n                        {% set i = 1 %}{% for i in i..5 %} \r\n                        {% if (rating < i) %} \r\n                        <span class=\"fa fa-stack\"><i class=\"fa fa-star-o fa-stack-1x\"></i></span>\r\n                        {% else %} \r\n                        <span class=\"fa fa-stack\"><i class=\"fa fa-star fa-stack-1x\"></i><i class=\"fa fa-star-o fa-stack-1x\"></i></span>\r\n                        {% endif %} \r\n                        {% endfor %} \r\n                        <a href=\"\" onclick=\"$(\'a[href=\\\'#tab-review\\\']\').trigger(\'click\'); return false;\">{{ reviews }}</a> / <a href=\"\" onclick=\"$(\'a[href=\\\'#tab-review\\\']\').trigger(\'click\'); return false;\">{{ text_write }}</a></p>\r\n                      <hr>\r\n                      <!-- AddThis Button BEGIN -->\r\n                      <div class=\"addthis_toolbox addthis_default_style\" data-url=\"{{ share }}\"><a class=\"addthis_button_facebook_like\" fb:like:layout=\"button_count\"></a> <a class=\"addthis_button_tweet\"></a> <a class=\"addthis_button_pinterest_pinit\"></a> <a class=\"addthis_counter addthis_pill_style\"></a></div>\r\n                      <script type=\"text/javascript\" src=\"//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-515eeaf54693130e\"></script>\r\n                      <!-- AddThis Button END -->\r\n                    </div>\r\n                    {% endif %} \r\n                {% endif %} \r\n            </div>\r\n            </div>    \r\n            ]]></add>\r\n        </operation>\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[{% if products %}]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            <div id=\"kbbooking-room-details\">\r\n            {% if (kbbooking_data[\'room_template\'] is defined and kbbooking_data[\'room_template\'] != \'\') %} \r\n                {{ kbbooking_data[\'room_template\'] }}\r\n            {% endif %} \r\n            </div>\r\n            {% if (kbbooking_data[\'facility_template\'] is defined and kbbooking_data[\'facility_template\'] != \'\') %} \r\n                {{ kbbooking_data[\'facility_template\'] }}\r\n            {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n\r\n    <file path=\"system/library/cart/cart.php\">\r\n        <operation>\r\n            <search><![CDATA[$query = $this->db->query(\"SELECT COUNT(*) AS total FROM \" . DB_PREFIX . \"cart WHERE api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\' AND customer_id = \'\" . (int)$this->customer->getId() . \"\' AND session_id = \'\" . $this->db->escape($this->session->getId()) . \"\' AND product_id = \'\" . (int)$product_id . \"\' AND recurring_id = \'\" . (int)$recurring_id . \"\' AND `option` = \'\" . $this->db->escape(json_encode($option)) . \"\'\");]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            $query2 = $this->db->query(\"SELECT cart_id FROM \" . DB_PREFIX . \"cart WHERE api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\' AND customer_id = \'\" . (int)$this->customer->getId() . \"\' AND session_id = \'\" . $this->db->escape($this->session->getId()) . \"\' AND product_id = \'\" . (int)$product_id . \"\' AND recurring_id = \'\" . (int)$recurring_id . \"\' AND `option` = \'\" . $this->db->escape(json_encode($option)) . \"\' AND kbbooking_id = \'0\'\");\r\n            if(!$query2->num_rows){\r\n                $query->row[\'total\'] = 0;\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$this->db->query(\"UPDATE \" . DB_PREFIX . \"cart SET quantity = (quantity + \" . (int)$quantity . \") WHERE api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\' AND customer_id = \'\" . (int)$this->customer->getId() . \"\' AND session_id = \'\" . $this->db->escape($this->session->getId()) . \"\' AND product_id = \'\" . (int)$product_id . \"\' AND recurring_id = \'\" . (int)$recurring_id . \"\' AND `option` = \'\" . $this->db->escape(json_encode($option)) . \"\'\");]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n            $this->db->query(\"UPDATE \" . DB_PREFIX . \"cart SET quantity = (quantity + \" . (int)$quantity . \") WHERE api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\' AND customer_id = \'\" . (int)$this->customer->getId() . \"\' AND session_id = \'\" . $this->db->escape($this->session->getId()) . \"\' AND product_id = \'\" . (int)$product_id . \"\' AND recurring_id = \'\" . (int)$recurring_id . \"\' AND `option` = \'\" . $this->db->escape(json_encode($option)) . \"\' AND kbbooking_id =\'0\'\");\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$this->add($cart[\'product_id\'], $cart[\'quantity\'], json_decode($cart[\'option\']), $cart[\'recurring_id\']);]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n                if(isset($cart[\'kbbooking_id\']) && $cart[\'kbbooking_id\'] != \'0\'){\r\n                    $this->db->query(\"INSERT \" . DB_PREFIX . \"cart SET kbbooking_id=\'\".(int)$cart[\'kbbooking_id\'].\"\', api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\', customer_id = \'\" . (int)$this->customer->getId() . \"\', session_id = \'\" . $this->db->escape($this->session->getId()) . \"\', product_id = \'\" . (int)$cart[\'product_id\'] . \"\', recurring_id = \'\" . (int)$cart[\'recurring_id\'] . \"\', `option` = \'\" . $this->db->escape($cart[\'option\']) . \"\', quantity = \'\" . (int)$cart[\'quantity\'] . \"\', date_added = NOW()\");\r\n                    $cart_id = $this->db->getLastId();\r\n                    $this->db->query(\"UPDATE \" . DB_PREFIX . \"kbbooking_cart SET cart_id = \" . (int)$cart_id . \" WHERE kbbooking_id = \'\" . (int)$cart[\'kbbooking_id\'] . \"\'\");\r\n                }else{\r\n                    $this->add($cart[\'product_id\'], $cart[\'quantity\'], json_decode($cart[\'option\']), $cart[\'recurring_id\']);\r\n                }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$product_data[] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                $booking_data = $this->db->query(\"SELECT price FROM \" . DB_PREFIX . \"kbbooking_output WHERE id = \'\". (int)$cart[\'kbbooking_id\'] .\"\'\");\r\n                if(isset($booking_data->row[\'price\'])){\r\n                    $price = $booking_data->row[\'price\'];\r\n                }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[public function clear() {]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n                $query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"cart WHERE api_id = \'\" . (isset($this->session->data[\'api_id\']) ? (int)$this->session->data[\'api_id\'] : 0) . \"\' AND customer_id = \'\" . (int)$this->customer->getId() . \"\' AND session_id = \'\" . $this->db->escape($this->session->getId()) . \"\'\");\r\n                if($query->num_rows){\r\n                    foreach($query->rows as $cart){\r\n                        $query = $this->db->query(\"DELETE FROM \" . DB_PREFIX . \"kbbooking_cart WHERE cart_id = \'\" . (int)$cart[\'cart_id\'] . \"\'\");\r\n                    }\r\n                }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[public function remove($cart_id) {]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n                $query = $this->db->query(\"DELETE FROM \" . DB_PREFIX . \"kbbooking_cart WHERE cart_id = \'\" . (int)$cart_id . \"\'\");\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/controller/checkout/cart.php\">\r\n        <operation>\r\n            <search><![CDATA[if (!$json) {]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                    $this->load->model(\'setting/setting\');\r\n                    $kbbooking_data = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n\r\n                    if(isset($kbbooking_data[\'kbbooking\'][\'enable\']) && $kbbooking_data[\'kbbooking\'][\'enable\']){\r\n                        $this->load->model(\'kbbooking/kbbooking\');\r\n                        $data[\'kbbooking_data\'] = $this->model_kbbooking_kbbooking->getProductById($product_id);\r\n                        if (isset($data[\'kbbooking_data\'][\'id\'])){\r\n                            if (!empty($data[\'kbbooking_data\'][\'id\'])){\r\n                                if ($data[\'kbbooking_data\'][\'id\'] != \'\'){\r\n                                  $json[\'redirect\'] = str_replace(\'&amp;\', \'&\', $this->url->link(\'product/product\', \'product_id=\' . $this->request->post[\'product_id\']));  \r\n                                }\r\n                                \r\n                            }\r\n                            \r\n                        }\r\n                    }\r\n		  ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            $this->load->model(\'setting/setting\');\r\n            $this->load->language(\'kbbooking/kbbooking\');\r\n\r\n            $kbbooking_settings = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n                if (isset($kbbooking_settings[\'kbbooking\'][\'enable\']) && $kbbooking_settings[\'kbbooking\'][\'enable\'] == 1) {\r\n                    $this->load->model(\'kbbooking/kbbooking\');\r\n                    //condition\r\n                    $productCheck = $this->model_kbbooking_kbbooking->getproductCheck($product[\'product_id\']);\r\n                    if ($productCheck > 0) {\r\n                        $kbbooking_cart = $this->load->controller(\'kbbooking/kbbooking/displayCustomization\', array(\'cart_id\' => $product[\'cart_id\'], \'quantity\' => $product[\'quantity\']));\r\n                        if (!$kbbooking_cart[\'stock\']) {\r\n                            $data[\'error_warning\'] = $this->language->get(\'error_stock\');\r\n                        }\r\n                    } else {\r\n                        $kbbooking_cart[\'stock\'] = $product[\'stock\'] ? true : !(!$this->config->get(\'config_stock_checkout\') || $this->config->get(\'config_stock_warning\'));\r\n                        $kbbooking_cart[\'template\'] = \'\';\r\n                    }\r\n                } else {\r\n                    $kbbooking_cart[\'template\'] = \'\';\r\n                    $kbbooking_cart[\'stock\'] = $product[\'stock\'] ? true : !(!$this->config->get(\'config_stock_checkout\') || $this->config->get(\'config_stock_warning\'));\r\n                }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\'cart_id\'   => $product[\'cart_id\'],]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            \'kbbooking\'   => $kbbooking_cart[\'template\'],\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\'stock\'     => $product[\'stock\'] ? true : !(!$this->config->get(\'config_stock_checkout\') || $this->config->get(\'config_stock_warning\')),]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n            \'stock\'   => $kbbooking_cart[\'stock\'],\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/*/template/checkout/cart.twig\">\r\n        <operation>\r\n            <search><![CDATA[{% if product.reward %}]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                {% if (product[\'kbbooking\'] is defined and product[\'kbbooking\'] is not empty) %} \r\n                {{ product[\'kbbooking\'] }}\r\n                {% endif %}   \r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[<input type=\"text\" name=\"quantity[{{ product.cart_id }}]\" value=\"{{ product.quantity }}\" size=\"1\" class=\"form-control\" />]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n            {% if (product[\'kbbooking\'] is not defined or product[\'kbbooking\'] is empty) %} \r\n               <input type=\"text\" name=\"quantity[{{ product.cart_id }}]\" value=\"{{ product.quantity }}\" size=\"1\" class=\"form-control\" />\r\n            {% else %} \r\n                <input type=\"text\" name=\"quantity[{{ product.cart_id }}]\" value=\"{{ product.quantity }}\" size=\"1\" class=\"form-control\" readonly=\'true\'/>\r\n            {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[<button type=\"submit\" data-toggle=\"tooltip\" title=\"{{ button_update }}\" class=\"btn btn-primary\"><i class=\"fa fa-refresh\"></i></button>]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n            {% if (product[\'kbbooking\'] is not defined or product[\'kbbooking\'] is empty) %} \r\n                <button type=\"submit\" data-toggle=\"tooltip\" title=\"{{ button_update }}\" class=\"btn btn-primary\"><i class=\"fa fa-refresh\"></i></button>\r\n            {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--\r\n        Save kbbooking_id in order_product table\r\n    -->\r\n     <file path=\"catalog/model/extension/module/so_onepagecheckout.php\">\r\n     <operation info=\"\">\r\n            <search><![CDATA[foreach ($data[\'products\'] as $product) {]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            $order_query = $this->db->query(\"SELECT * FROM `\" . DB_PREFIX . \"cart` WHERE product_id = \'\" . (int)$product[\'product_id\'] . \"\' AND customer_id = \'\" . (int)$this->session->data[\'customer_id\'] . \"\'\");\r\n				$order_query = $order_query->row;\r\n				\r\n				$order_query = $this->db->query(\"SELECT * FROM `\" . DB_PREFIX . \"kbbooking_cart` WHERE product_id = \'\" . (int)$product[\'product_id\'] . \"\' AND  cart_id = \'\" . (int)$order_query[\'cart_id\'] . \"\'\");\r\n				$order_query = $order_query->row;\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/model/extension/module/so_onepagecheckout.php\">\r\n     <operation  info=\"\">\r\n            <search><![CDATA[$this->db->query(\"INSERT INTO \" . DB_PREFIX . \"order_product SET order_id = \'\" . (int)$order_id . \"\', product_id = \'\" . (int)$product[\'product_id\'] . \"\', name = \'\" . $this->db->escape($product[\'name\']) . \"\', model = \'\" . $this->db->escape($product[\'model\']) . \"\', quantity = \'\" . (int)$product[\'quantity\'] . \"\', price = \'\" . (float)$product[\'price\'] . \"\', total = \'\" . (float)$product[\'total\'] . \"\', tax = \'\" . (float)$product[\'tax\'] . \"\', reward = \'\" . (int)$product[\'reward\'] . \"\'\");]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n            $this->db->query(\"INSERT INTO \" . DB_PREFIX . \"order_product SET order_id = \'\" . (int)$order_id . \"\', product_id = \'\" . (int)$product[\'product_id\'] . \"\', name = \'\" . $this->db->escape($product[\'name\']) . \"\', model = \'\" . $this->db->escape($product[\'model\']) . \"\', quantity = \'\" . (int)$product[\'quantity\'] . \"\', price = \'\" . (float)$product[\'price\'] . \"\', total = \'\" . (float)$product[\'total\'] . \"\', tax = \'\" . (float)$product[\'tax\'] . \"\', kbbooking_id = \'\" . (int)$order_query[\'kbbooking_id\'] . \"\',reward = \'\" . (int)$product[\'reward\'] . \"\'\");\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/model/checkout/order.php\">\r\n        <operation>\r\n            <search><![CDATA[foreach ($product[\'option\'] as $option) {]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            \r\n            if(isset($product[\'kbbooking_id\'])){\r\n                $this->db->query(\"UPDATE \" . DB_PREFIX . \"order_product SET kbbooking_id = \'\" . (int)$product[\'kbbooking_id\'] . \"\' WHERE order_product_id=\'\".(int)$order_product_id.\"\'\");\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--\r\n        To add kbbooking id in order_data table\r\n    -->\r\n    <file path=\"catalog/controller/checkout/confirm.php\">\r\n        <operation>\r\n            <search><![CDATA[$order_data[\'products\'][] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            $this->load->model(\'setting/setting\');\r\n            $kbbooking_data = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n            if(isset($kbbooking_data[\'kbbooking\'][\'enable\']) && $kbbooking_data[\'kbbooking\'][\'enable\'] ==1){\r\n                $this->load->model(\'kbbooking/kbbooking\');\r\n                $kbbooking_id = $this->model_kbbooking_kbbooking->getKbbooking_id($product[\'cart_id\'],$product[\'quantity\']);\r\n            }else{\r\n                $kbbooking_id = 0;\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$order_data[\'products\'][] = array(]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            \'kbbooking_id\'   => $kbbooking_id,\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--\r\n        Admin Order info\r\n    -->\r\n    <file path=\"admin/controller/sale/order.php\">\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            $this->load->model(\'setting/setting\');\r\n            $kbbooking_settings = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n            if(isset($kbbooking_settings[\'kbbooking\'][\'enable\']) && $kbbooking_settings[\'kbbooking\'][\'enable\'] ==1){\r\n                $this->load->model(\'kbbooking/kbbooking\');\r\n                $kbbooking_order = $this->load->controller(\'extension/module/kbbooking/displayCustomization\',array(\'kbbooking_id\' => $product[\'kbbooking_id\'],\'quantity\' => $product[\'quantity\']));\r\n            }else{\r\n                $kbbooking_order = \'\';\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            \'kbbooking\'   => $kbbooking_order,\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"admin/view/template/sale/order_info.twig\">\r\n        <operation>\r\n            <search index=\"1\"><![CDATA[<table class=\"table table-bordered\">]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                {% for product in products %}\r\n                {% if (product[\'kbbooking\'] is defined and product[\'kbbooking\'] is not empty) %} \r\n                {{ product[\'kbbooking\'] }}\r\n                {% endif %}\r\n                {% endfor %}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--\r\n        For account page in front side\r\n    -->\r\n    <file path=\"catalog/controller/account/order.php\">\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            $this->load->model(\'setting/setting\');\r\n            $this->load->language(\'kbbooking/kbbooking\');\r\n\r\n            $kbbooking_settings = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n            if(isset($kbbooking_settings[\'kbbooking\'][\'enable\']) && $kbbooking_settings[\'kbbooking\'][\'enable\'] ==1){\r\n                $this->load->model(\'kbbooking/kbbooking\');\r\n                $kbbooking_cart = $this->load->controller(\'kbbooking/kbbooking/displayCustomization\',array(\'kbbooking_id\' => $product[\'kbbooking_id\'],\'quantity\' => $product[\'quantity\']));\r\n                if($kbbooking_cart != \'\'){\r\n                    $reorder = \'\';\r\n                }\r\n            }else{\r\n                $kbbooking_cart[\'template\'] = \'\';\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            \'kbbooking\'   => $kbbooking_cart[\'template\'],\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/*/template/account/order_info.twig\">\r\n        <operation>\r\n            <search><![CDATA[{% for option in product.option %}]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            {% if (product[\'kbbooking\'] is defined and product[\'kbbooking\'] is not empty) %} \r\n            {{ product[\'kbbooking\'] }}\r\n            {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--\r\n        Order creation mail\r\n    -->\r\n    <file path=\"catalog/model/checkout/order.php\">\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            $this->load->model(\'setting/setting\');\r\n            $this->load->language(\'kbbooking/kbbooking\');\r\n\r\n            $this->load->language(\'kbbooking/kbbooking\');\r\n            $kbbooking_settings = $this->model_setting_setting->getSetting(\'kbbooking\', $this->config->get(\'config_store_id\'));\r\n            if(isset($kbbooking_settings[\'kbbooking\'][\'enable\']) && $kbbooking_settings[\'kbbooking\'][\'enable\'] ==1){\r\n                $this->load->model(\'kbbooking/kbbooking\');\r\n                $data[\'text_appointment_date\'] = $this->language->get(\'text_appointment_date\');\r\n                $data[\'text_slot\'] = $this->language->get(\'text_slot\');\r\n                $data[\'text_check_in\'] = $this->language->get(\'text_check_in\');\r\n                $data[\'text_check_out\'] = $this->language->get(\'text_check_out\');\r\n                $data[\'text_service_type\'] = $this->language->get(\'text_service_type\');\r\n                $data[\'text_room_category\'] = $this->language->get(\'text_room_category\');\r\n                $data[\'text_room\'] = $this->language->get(\'text_room\');\r\n                $data[\'text_service_type\'] = $this->language->get(\'text_service_type\');\r\n                $data[\'text_total_hours\'] = $this->language->get(\'text_total_hours\');\r\n                $data[\'text_total_days\'] = $this->language->get(\'text_total_days\');\r\n                $kbbooking_data = $this->model_kbbooking_kbbooking->getDataForMail($product[\'kbbooking_id\'],$product[\'quantity\']);\r\n            }else{\r\n                $kbbooking_data = array();\r\n            }\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[$data[\'products\'][] = array(]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n            \'kbbooking\'   => $kbbooking_data,\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/*/template/mail/order_add.twig\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[ {% for option in product.option %} ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n                {% if (product[\'kbbooking\'] is defined and product[\'kbbooking\'] is not empty) %}\r\n                    {% if (product[\'kbbooking\'][\'time_slot\'] is defined) %} \r\n                        <br><strong>{{ text_appointment_date }}</strong> {{ product[\'kbbooking\'][\'check_in\'] }} <br>\r\n                        <strong>{{ text_slot }}</strong> {{ product[\'kbbooking\'][\'time_slot\'] }} <br>\r\n                    {% elseif (product[\'kbbooking\'][\'check_out\'] is defined) %} \r\n                        <br><strong>{{ text_check_in }}</strong> {{ product[\'kbbooking\'][\'check_in\'] }} <br>\r\n                        <strong>{{ text_check_out }}</strong> {{ product[\'kbbooking\'][\'check_out\'] }} <br>\r\n                    {% else %} \r\n                        <br><strong>{{ text_check_in }}</strong> {{ product[\'kbbooking\'][\'check_in\'] }} <br>\r\n                    {% endif %} \r\n                    {% if (product[\'kbbooking\'][\'service_type\'] is defined) %} \r\n                        <strong>{{ text_service_type }}</strong> {{ product[\'kbbooking\'][\'service_type\'] }} <br>\r\n                    {% endif %} \r\n                    {% if (product[\'kbbooking\'][\'room_name\'] is defined and product[\'kbbooking\'][\'room_name\'] != \'\') %} \r\n                        <strong>{{ text_room }}</strong> {{ product[\'kbbooking\'][\'room_name\'] }} <br>\r\n                    {% endif %} \r\n                    {% if (product[\'kbbooking\'][\'category_name\'] is defined and product[\'kbbooking\'][\'category_name\'] != \'\') %} \r\n                        <strong>{{ text_room_category }}</strong> {{ product[\'kbbooking\'][\'category_name\'] }} <br>\r\n                    {% endif %} \r\n                    {% if (product[\'kbbooking\'][\'total_days\'] is defined) %} \r\n                        <strong>{{ text_total_days }}</strong> {{ product[\'kbbooking\'][\'total_days\'] }} <br>\r\n                    {% elseif (product[\'kbbooking\'][\'total_hours\'] is defined) %} \r\n                        <strong>{{ text_total_hours }}</strong> {{ product[\'kbbooking\'][\'total_hours\'] }} <br>\r\n                    {% endif %} \r\n                {% endif %}\r\n           ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/*/template/checkout/checkout.twig\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[$(document).delegate(\'#button-payment-method\', \'click\', function() {]]></search>\r\n            <add position=\"replace\" offset=\"44\"><![CDATA[\r\n                $(document).delegate(\'#button-payment-method\', \'click\', function() {\r\n                    $.ajax({\r\n                        url: \'index.php?route=kbbooking/kbbooking/validateQuantity\',\r\n                        type: \'post\',\r\n                        dataType: \'json\',\r\n                        success: function(json) {\r\n                            console.log(json);\r\n                            if(json.status == \'success\'){\r\n                                $.ajax({\r\n                                    url: \'index.php?route=checkout/payment_method/save\',\r\n                                    type: \'post\',\r\n                                    data: $(\'#collapse-payment-method input[type=\\\'radio\\\']:checked, #collapse-payment-method input[type=\\\'checkbox\\\']:checked, #collapse-payment-method textarea\'),\r\n                                    dataType: \'json\',\r\n                                    beforeSend: function() {\r\n                                            $(\'#button-payment-method\').button(\'loading\');\r\n                                            },\r\n                                    success: function(json) {\r\n                                        $(\'.alert, .text-danger\').remove();\r\n\r\n                                        if (json[\'redirect\']) {\r\n                                            location = json[\'redirect\'];\r\n                                        } else if (json[\'error\']) {\r\n                                            $(\'#button-payment-method\').button(\'reset\');\r\n\r\n                                            if (json[\'error\'][\'warning\']) {\r\n                                                $(\'#collapse-payment-method .panel-body\').prepend(\'<div class=\"alert alert-danger\">\' + json[\'error\'][\'warning\'] + \'<button type=\"button\" class=\"close\" data-dismiss=\"alert\">&times;</button></div>\');\r\n                                            }\r\n                                        } else {\r\n                                            $.ajax({\r\n                                                url: \'index.php?route=checkout/confirm\',\r\n                                                dataType: \'html\',\r\n                                                complete: function() {\r\n                                                    $(\'#button-payment-method\').button(\'reset\');\r\n                                                },\r\n                                                success: function(html) {\r\n                                                    $(\'#collapse-checkout-confirm .panel-body\').html(html);\r\n\r\n                                                                            $(\'#collapse-checkout-confirm\').parent().find(\'.panel-heading .panel-title\').html(\'<a href=\"#collapse-checkout-confirm\" data-toggle=\"collapse\" data-parent=\"#accordion\" class=\"accordion-toggle\"> {{ text_checkout_confirm }} <i class=\"fa fa-caret-down\"></i></a>\');\r\n\r\n                                                                            $(\'a[href=\\\'#collapse-checkout-confirm\\\']\').trigger(\'click\');\r\n                                                                    },\r\n                                                error: function(xhr, ajaxOptions, thrownError) {\r\n                                                    alert(thrownError + \"\\r\\n\" + xhr.statusText + \"\\r\\n\" + xhr.responseText);\r\n                                                }\r\n                                            });\r\n                                        }\r\n                                    },\r\n                                    error: function(xhr, ajaxOptions, thrownError) {\r\n                                        alert(thrownError + \"\\r\\n\" + xhr.statusText + \"\\r\\n\" + xhr.responseText);\r\n                                    }\r\n                                });\r\n                            }else{\r\n                                window.location = \'index.php?route=checkout/cart\';\r\n                            }\r\n                        }\r\n                    });\r\n\r\n                });\r\n           ]]></add>\r\n        </operation>\r\n    </file>\r\n    <!--Start By dharmanshu for the module theme compatiblity 4-02-2021-->\r\n    <file path=\"catalog/view/theme/so-matrix/template/product/product.twig\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[<h1>{{heading_title}}</h1>]]></search>\r\n            <add position=\"after\"><![CDATA[   \r\n                {% if (kbbooking_data[\'booking_template\'] is defined and kbbooking_data[\'booking_template\'] != \'\') %} \r\n                    {{ kbbooking_data[\'booking_template\'] }}\r\n                {%else %}  \r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/so-matrix/template/product/product.twig\" error=\"skip\">\r\n        <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[<script type=\"text/javascript\" src=\"//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-529be2200cc72db5\"></script>]]></search>\r\n            <add position=\"after\"><![CDATA[   \r\n                {%endif %} \r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    <file path=\"catalog/view/theme/so-matrix/template/product/product.twig\" error=\"skip\">\r\n     <operation error=\"skip\" info=\"\">\r\n            <search><![CDATA[{% if soconfig.get_settings(\'related_position\')==\'horizontal\' and products and soconfig.get_settings(\'related_status\') %}]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n            <div id=\"kbbooking-room-details\">\r\n            {% if (kbbooking_data[\'room_template\'] is defined and kbbooking_data[\'room_template\'] != \'\') %} \r\n                {{ kbbooking_data[\'room_template\'] }}\r\n            {% endif %} \r\n            </div>\r\n            {% if (kbbooking_data[\'facility_template\'] is defined and kbbooking_data[\'facility_template\'] != \'\') %} \r\n                {{ kbbooking_data[\'facility_template\'] }}\r\n            {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n    \r\n    <!--End By dharmanshu for the module theme compatiblity 4-02-2021-->\r\n</modification>',1,'2021-03-01 12:03:34'),(31,0,'So Categories','so-categories-modification','OpenCartWorks','2.2.0','http://www.opencartworks.com','<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<modification>\n    <name>So Categories</name>\n    <code>so-categories-modification</code>\n    <version>2.2.0</version>\n    <author>OpenCartWorks</author>\n    <link>http://www.opencartworks.com</link>\n    <file path=\"admin/view/template/catalog/category_form.twig\">\n        <operation>\n          <search>\n            <![CDATA[<div class=\"tab-pane\" id=\"tab-data\">]]>\n          </search>\n          <add position=\"after\">\n            <![CDATA[\n              <div class=\"form-group\">\n                <label class=\"col-sm-2 control-label\">{{ entry_banner }}</label>\n                <div class=\"col-sm-10\"><a href=\"\" id=\"thumb-banner\" data-toggle=\"image\" class=\"img-thumbnail\"><img src=\"{{ thumb_banner }}\" alt=\"\" title=\"\" data-placeholder=\"{{ placeholder }}\" /></a>\n                  <input type=\"hidden\" name=\"banner\" value=\"{{ banner }}\" id=\"input-banner\" />\n                </div>\n              </div>\n            ]]>\n          </add>\n        </operation>\n    </file>\n    <file path=\"admin/controller/catalog/category.php\">\n        <operation>\n          <search>\n            <![CDATA[if (isset($this->request->post[\'image\'])) {]]>\n          </search>\n          <add position=\"before\">\n            <![CDATA[\n				if (isset($this->request->post[\'banner\'])) {\n					$data[\'banner\'] = $this->request->post[\'banner\'];\n				} elseif (!empty($category_info)) {\n					$chk = $this->db->query(\"SHOW COLUMNS FROM `\" . DB_PREFIX . \"category` WHERE `Field` = \'banner\'\");\n\n					if (!$chk->num_rows) {\n\n					$this->db->query(\"ALTER TABLE `\" . DB_PREFIX . \"category` ADD COLUMN  `banner` varchar(255) NOT NULL\");\n\n					}\n					$data[\'banner\'] = $category_info[\'banner\'];\n				} else {\n					$data[\'banner\'] = \'\';\n				}\n\n				$this->load->model(\'tool/image\');\n\n				if (isset($this->request->post[\'banner\']) && is_file(DIR_IMAGE . $this->request->post[\'banner\'])) {\n					$data[\'thumb_banner\'] = $this->model_tool_image->resize($this->request->post[\'banner\'], 100, 100);\n				} elseif (!empty($category_info) && is_file(DIR_IMAGE . $category_info[\'banner\'])) {\n					$data[\'thumb_banner\'] = $this->model_tool_image->resize($category_info[\'banner\'], 100, 100);\n				} else {\n					$data[\'thumb_banner\'] = $this->model_tool_image->resize(\'no_image.png\', 100, 100);\n				}\n            ]]>\n          </add>\n        </operation>\n      </file>\n    <file path=\"admin/model/catalog/category.php\">\n        <operation>\n          <search>\n            <![CDATA[if (isset($data[\'image\'])) {]]>\n          </search>\n          <add position=\"before\">\n            <![CDATA[\n				if (isset($data[\'banner\'])) {\n					$this->db->query(\"UPDATE \" . DB_PREFIX . \"category SET banner = \'\" . $this->db->escape($data[\'banner\']) . \"\' WHERE category_id = \'\" . (int)$category_id . \"\'\");\n				}\n            ]]>\n          </add>\n        </operation>\n      </file>  \n    <file path=\"admin/language/*/catalog/category.php\">\n        <operation>\n          <search>\n            <![CDATA[$_[\'entry_image\']            = \'Image\';]]>\n          </search>\n          <add position=\"after\">\n            <![CDATA[$_[\'entry_banner\']            = \'Banner\';]]>\n          </add>\n        </operation>\n      </file>   \n    \n</modification> ',1,'2021-02-26 06:51:57'),(15,38,'So OnePage Checkout','so-onepage-checkout','OpenCartWorks','1.1.0','http://www.opencartworks.com/','<?xml version=\"1.0\" encoding=\"utf-8\"?> \n<modification> \n <name>So OnePage Checkout</name> \n <code>so-onepage-checkout</code> \n <version>1.1.0</version> \n <author>OpenCartWorks</author> \n <link>http://www.opencartworks.com/</link> \n \n <file path=\"catalog/controller/checkout/checkout.php\"> \n <operation error=\"log\"> \n <search ><![CDATA[class ControllerCheckoutCheckout extends Controller {]]></search> \n <add position=\"after\"><![CDATA[ \n public function __construct($registry) { \n parent::__construct($registry); \n $this->load->language(\'checkout/cart\'); \n $this->load->language(\'checkout/checkout\'); \n \n $this->load->language(\'checkout/coupon\'); \n $this->load->language(\'checkout/voucher\'); \n $this->load->language(\'extension/module/so_onepagecheckout\'); \n \n $this->load->model(\'account/activity\'); \n $this->load->model(\'account/custom_field\'); \n $this->load->model(\'tool/upload\'); \n \n $this->load->model(\'account/address\'); \n $this->load->model(\'account/customer\'); \n $this->load->model(\'account/customer_group\'); \n $this->load->model(\'localisation/country\'); \n $this->load->model(\'localisation/zone\'); \n $this->load->model(\'extension/module/so_onepagecheckout\'); \n } \n \n public function getProperty($array, $property, $default_value = null) { \n $properties = explode(\'.\', $property); \n foreach ($properties as $prop) { \n if (!is_array($array) || !isset($array[$prop])) { \n return $default_value; \n } \n $array = $array[$prop]; \n } \n if (is_array($array)) { \n return $array; \n } \n $array = trim($array); \n return $array !== \'\' ? $array : $default_value; \n } \n \n private function isShippingRequired() { \n return $this->cart->hasShipping(); \n } \n \n private function isLoggedIn() { \n return $this->customer->isLogged(); \n } \n \n private function allowGuestCheckout() { \n return $this->config->get(\'config_checkout_guest\') && !$this->config->get(\'config_customer_price\') && !$this->cart->hasDownload(); \n } \n \n private function renderRegisterForm() { \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_register\'] = $this->language->get(\'text_register\'); \n $data[\'text_guest\'] = $this->language->get(\'text_guest\'); \n $data[\'entry_email\'] = $this->language->get(\'entry_email\'); \n $data[\'entry_password\'] = $this->language->get(\'entry_password\'); \n $data[\'text_forgotten\'] = $this->language->get(\'text_forgotten\'); \n $data[\'text_loading\'] = $this->language->get(\'text_loading\'); \n $data[\'button_login\'] = $this->language->get(\'button_login\'); \n $data[\'text_i_am_returning_customer\'] = $this->language->get(\'text_i_am_returning_customer\'); \n $data[\'text_returning_customer\'] = $this->language->get(\'text_returning_customer\'); \n \n $data[\'text_your_details\'] = $this->language->get(\'text_your_details\'); \n $data[\'entry_customer_group\'] = $this->language->get(\'entry_customer_group\'); \n $data[\'entry_firstname\'] = $this->language->get(\'entry_firstname\'); \n $data[\'entry_lastname\'] = $this->language->get(\'entry_lastname\'); \n $data[\'entry_telephone\'] = $this->language->get(\'entry_telephone\'); \n $data[\'entry_fax\'] = $this->language->get(\'entry_fax\'); \n $data[\'text_your_password\'] = $this->language->get(\'text_your_password\'); \n $data[\'entry_confirm\'] = $this->language->get(\'entry_confirm\'); \n $data[\'text_your_address\'] = $this->language->get(\'text_your_address\'); \n $data[\'entry_shipping\'] = $this->language->get(\'entry_shipping\'); \n $data[\'text_shipping_address\'] = $this->language->get(\'text_shipping_address\'); \n \n $data[\'customer_groups\'] = array(); \n $data[\'customer_group_id\'] = $this->model_extension_module_so_onepagecheckout->getCustomerGroupId(); \n if (is_array($this->config->get(\'config_customer_group_display\'))) { \n $this->load->model(\'account/customer_group\'); \n \n $customer_groups = $this->model_account_customer_group->getCustomerGroups(); \n \n foreach ($customer_groups as $customer_group) { \n if (in_array($customer_group[\'customer_group_id\'], $this->config->get(\'config_customer_group_display\'))) { \n $data[\'customer_groups\'][] = $customer_group; \n } \n } \n } \n \n $data[\'payment_address_form\'] = $this->renderAddressForm(\'payment\', false); \n $data[\'shipping_address_form\'] = $this->renderAddressForm(\'shipping\'); \n $data[\'shipping_address\'] = $this->getProperty($this->session->data, \'so_checkout_shipping_address\', \'1\'); \n $data[\'is_shipping_required\'] = $this->isShippingRequired(); \n \n $data[\'forgotten\'] = $this->url->link(\'account/forgotten\', \'\', true); \n \n $data[\'custom_fields\'] = $this->model_extension_module_so_onepagecheckout->getCustomFields(); \n $data[\'order_data\'] = $this->model_extension_module_so_onepagecheckout->getOrder(); \n \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/register\', $data); \n } \n \n private function renderAddressForm($type, $name = true) { \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n \n $data[\'type\'] = $type; \n $data[\'name\'] = $name; \n \n $data[\'button_upload\'] = $this->language->get(\'button_upload\'); \n $data[\'text_address_existing\'] = $this->language->get(\'text_address_existing\'); \n $data[\'text_address_new\'] = $this->language->get(\'text_address_new\'); \n $data[\'text_select\'] = $this->language->get(\'text_select\'); \n $data[\'text_none\'] = $this->language->get(\'text_none\'); \n \n $data[\'entry_firstname\'] = $this->language->get(\'entry_firstname\'); \n $data[\'entry_lastname\'] = $this->language->get(\'entry_lastname\'); \n $data[\'entry_company\'] = $this->language->get(\'entry_company\'); \n $data[\'entry_company_id\'] = $this->language->get(\'entry_company_id\'); \n $data[\'entry_tax_id\'] = $this->language->get(\'entry_tax_id\'); \n $data[\'entry_address_1\'] = $this->language->get(\'entry_address_1\'); \n $data[\'entry_address_2\'] = $this->language->get(\'entry_address_2\'); \n $data[\'entry_postcode\'] = $this->language->get(\'entry_postcode\'); \n $data[\'entry_city\'] = $this->language->get(\'entry_city\'); \n $data[\'entry_country\'] = $this->language->get(\'entry_country\'); \n $data[\'entry_zone\'] = $this->language->get(\'entry_zone\'); \n \n $data[\'custom_fields\'] = $this->model_extension_module_so_onepagecheckout->getCustomFields($type); \n $data[\'order_data\'] = $this->model_extension_module_so_onepagecheckout->getOrder(); \n \n $data[\'addresses\'] = $this->model_account_address->getAddresses(); \n $data[\'countries\'] = $this->model_localisation_country->getCountries(); \n \n $address = $this->model_extension_module_so_onepagecheckout->getAddress($type); \n foreach ($address as $key => $value) { \n $data[$key] = $value; \n } \n \n if ($this->isLoggedIn()) { \n $data[\'is_logged_in\'] = true; \n } else { \n $data[\'is_logged_in\'] = false; \n } \n \n if (isset($setting_so_onepagecheckout_general[\'so_onepagecheckout_country_id\']) && $setting_so_onepagecheckout_general[\'so_onepagecheckout_country_id\']) { \n $data[\'country_id\'] = $setting_so_onepagecheckout_general[\'so_onepagecheckout_country_id\']; \n } \n \n if (isset($setting_so_onepagecheckout_general[\'so_onepagecheckout_zone_id\']) && $setting_so_onepagecheckout_general[\'so_onepagecheckout_zone_id\']) { \n $data[\'zone_id\'] = $setting_so_onepagecheckout_general[\'so_onepagecheckout_zone_id\']; \n } \n \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/address_form\', $data); \n } \n \n public function shipping($load = false) { \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_shipping_method\'] = $this->language->get(\'text_shipping_method\'); \n $data[\'text_title_shipping_method\'] = $this->language->get(\'text_title_shipping_method\'); \n $data[\'error_shipping_method\'] = $this->language->get(\'error_shipping_method\'); \n \n $data[\'shipping_methods\'] = $this->model_extension_module_so_onepagecheckout->getShippingMethods(); \n $shipping_methods = array(); \n if (count($data[\'shipping_methods\'])>0) { \n foreach ($data[\'shipping_methods\'] as $key=>$shipping_method) { \n if (@$setting_so_onepagecheckout_layout_setting[$key.\'_status\'] == 1) { \n $shipping_methods[] = $shipping_method; \n } \n } \n } \n $data[\'shipping_methods\'] = $shipping_methods; \n $data[\'code\'] = $this->model_extension_module_so_onepagecheckout->getShippingMethodCode(); \n \n if (!$data[\'shipping_methods\']) { \n $data[\'error_warning\'] = sprintf($this->language->get(\'error_no_shipping\'), $this->url->link(\'information/contact\', \'\', true)); \n } else { \n $data[\'error_warning\'] = \'\'; \n } \n \n if ($load) \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/shipping_methods\', $data); \n else \n return $this->response->setOutput($this->load->view(\'extension/module/so_onepagecheckout/checkout/shipping_methods\', $data)); \n \n } \n \n public function payment($load = false) { \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_payment_method\'] = $this->language->get(\'text_payment_method\'); \n $data[\'text_title_payment_method\'] = $this->language->get(\'text_title_payment_method\'); \n \n $data[\'payment_methods\'] = $this->model_extension_module_so_onepagecheckout->getPaymentMethods(); \n $payment_methods = array(); \n if (count($data[\'payment_methods\'])>0) { \n foreach ($data[\'payment_methods\'] as $key=>$payment_method) { \n if (@$setting_so_onepagecheckout_layout_setting[$key.\'_status\'] == 1) { \n $payment_methods[] = $payment_method; \n } \n } \n } \n $data[\'payment_methods\'] = $payment_methods; \n $data[\'code\'] = $this->model_extension_module_so_onepagecheckout->getPaymentMethodCode(); \n \n if (!$data[\'payment_methods\']) { \n $data[\'error_warning\'] = sprintf($this->language->get(\'error_no_payment\'), $this->url->link(\'information/contact\', \'\', true)); \n } else { \n $data[\'error_warning\'] = \'\'; \n } \n \n if ($load) \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/payment_methods\', $data); \n else \n return $this->response->setOutput($this->load->view(\'extension/module/so_onepagecheckout/checkout/payment_methods\', $data)); \n } \n \n public function change_coupon_voucher_reward() { \n $this->load->model(\'setting/setting\'); \n $this->load->language(\'checkout/cart\'); \n $this->load->language(\'checkout/checkout\'); \n $this->load->language(\'extension/module/so_onepagecheckout\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_loading\'] = $this->language->get(\'text_loading\'); \n $data[\'text_coupon_voucher\'] = $this->language->get(\'text_coupon_voucher\'); \n $data[\'text_enter_coupon_code\'] = $this->language->get(\'text_enter_coupon_code\'); \n $data[\'text_enter_voucher_code\'] = $this->language->get(\'text_enter_voucher_code\'); \n $data[\'text_apply_voucher\'] = $this->language->get(\'text_apply_voucher\'); \n $data[\'text_enter_reward_points\'] = $this->language->get(\'text_enter_reward_points\'); \n $data[\'text_apply_points\'] = $this->language->get(\'text_apply_points\'); \n \n $_data = $this->request->post; \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_guest_status\']; \n }else { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\'); \n } \n $data[\'entry_coupon\'] = $this->language->get(\'entry_coupon\'); \n $data[\'button_coupon\'] = $this->language->get(\'button_coupon\'); \n $data[\'coupon\'] = $this->getProperty($this->session->data, \'coupon\'); \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_guest_status\']; \n }else { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\'); \n } \n $data[\'entry_voucher\'] = $this->language->get(\'entry_voucher\'); \n $data[\'button_voucher\'] = $this->language->get(\'button_voucher\'); \n $data[\'voucher\'] = $this->getProperty($this->session->data, \'voucher\'); \n \n $points = $this->customer->getRewardPoints(); \n \n $points_total = 0; \n \n foreach ($this->cart->getProducts() as $product) { \n if ($product[\'points\']) { \n $points_total += $product[\'points\']; \n } \n } \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_guest_status\']; \n } \n else { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\'); \n } \n $data[\'entry_reward\'] = $this->language->get(\'entry_reward\'); \n $data[\'button_reward\'] = $this->language->get(\'button_reward\'); \n $data[\'reward\'] = $this->getProperty($this->session->data, \'reward\'); \n \n echo $this->load->view(\'extension/module/so_onepagecheckout/checkout/coupon_voucher_reward\', $data); \n exit(); \n } \n \n public function save() { \n $this->load->model(\'extension/module/so_onepagecheckout\'); \n $this->load->model(\'account/address\'); \n if ($value = $this->getProperty($this->request->post, \'shipping_address_id\')) { \n $this->session->data[\'shipping_address\'] = $this->model_account_address->getAddress($value); \n $this->model_extension_module_so_onepagecheckout->setAddress(\'shipping\', $this->session->data[\'shipping_address\']); \n } \n \n if ($value = $this->getProperty($this->request->post, \'shipping_country_id\')) { \n $this->model_extension_module_so_onepagecheckout->setAddress(\'shipping\', array( \n \'country_id\' => $value, \n \'zone_id\' => $this->getProperty($this->request->post, \'shipping_zone_id\'), \n \'postcode\' => $this->getProperty($this->request->post, \'shipping_postcode\'), \n )); \n } \n \n if ($value = $this->getProperty($this->request->post, \'shipping_method\')) { \n $shipping = explode(\'.\', $value); \n $this->session->data[\'shipping_method\'] = $this->session->data[\'shipping_methods\'][$shipping[0]][\'quote\'][$shipping[1]]; \n } \n \n if ($value = $this->getProperty($this->request->post, \'payment_address_id\')) { \n $this->session->data[\'payment_address\'] = $this->model_account_address->getAddress($value); \n $this->model_extension_module_so_onepagecheckout->setAddress(\'payment\', $this->session->data[\'payment_address\']); \n } \n \n if ($value = $this->getProperty($this->request->post, \'payment_country_id\')) { \n $this->model_extension_module_so_onepagecheckout->setAddress(\'payment\', array( \n \'country_id\' => $value, \n \'zone_id\' => $this->getProperty($this->request->post, \'payment_zone_id\'), \n \'postcode\' => $this->getProperty($this->request->post, \'payment_postcode\'), \n )); \n } \n \n if ($value = $this->getProperty($this->request->post, \'payment_method\')) { \n $this->session->data[\'payment_method\'] = $this->session->data[\'payment_methods\'][$value]; \n } \n \n $this->model_extension_module_so_onepagecheckout->save(); \n \n header(\'Content-Type: application/json\'); \n echo \'{}\'; \n \n exit; \n } \n \n private function renderCouponVoucherReward() { \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_loading\'] = $this->language->get(\'text_loading\'); \n $data[\'text_coupon_voucher\'] = $this->language->get(\'text_coupon_voucher\'); \n $data[\'text_enter_coupon_code\'] = $this->language->get(\'text_enter_coupon_code\'); \n $data[\'text_enter_voucher_code\'] = $this->language->get(\'text_enter_voucher_code\'); \n $data[\'text_apply_voucher\'] = $this->language->get(\'text_apply_voucher\'); \n $data[\'text_enter_reward_points\'] = $this->language->get(\'text_enter_reward_points\'); \n $data[\'text_apply_points\'] = $this->language->get(\'text_apply_points\'); \n \n $_data = $this->session->data; \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\') && $setting_so_onepagecheckout_layout_setting[\'coupon_guest_status\']; \n }else { \n $data[\'coupon_status\'] = $this->config->get(\'total_coupon_status\'); \n } \n $data[\'entry_coupon\'] = $this->language->get(\'entry_coupon\'); \n $data[\'button_coupon\'] = $this->language->get(\'button_coupon\'); \n $data[\'coupon\'] = $this->getProperty($this->session->data, \'coupon\'); \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\') && $setting_so_onepagecheckout_layout_setting[\'voucher_guest_status\']; \n }else { \n $data[\'voucher_status\'] = $this->config->get(\'total_voucher_status\'); \n } \n $data[\'entry_voucher\'] = $this->language->get(\'entry_voucher\'); \n $data[\'button_voucher\'] = $this->language->get(\'button_voucher\'); \n $data[\'voucher\'] = $this->getProperty($this->session->data, \'voucher\'); \n \n $points = $this->customer->getRewardPoints(); \n \n $points_total = 0; \n \n foreach ($this->cart->getProducts() as $product) { \n if ($product[\'points\']) { \n $points_total += $product[\'points\']; \n } \n } \n \n if (@$_data[\'so_checkout_account\'] == \'login\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_login_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'register\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_register_status\']; \n }else if (@$_data[\'so_checkout_account\'] == \'guest\') { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\') && $setting_so_onepagecheckout_layout_setting[\'reward_guest_status\']; \n } \n else { \n $data[\'reward_status\'] = $points && $points_total && $this->config->get(\'total_reward_status\'); \n } \n $data[\'entry_reward\'] = $this->language->get(\'entry_reward\'); \n $data[\'button_reward\'] = $this->language->get(\'button_reward\'); \n $data[\'reward\'] = $this->getProperty($this->session->data, \'reward\'); \n \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/coupon_voucher_reward\', $data); \n } \n \n public function cart($load = false) { \n $this->load->model(\'setting/setting\'); \n $this->load->model(\'extension/module/so_onepagecheckout\'); \n $this->load->language(\'checkout/cart\'); \n $this->load->language(\'checkout/checkout\'); \n $this->load->language(\'extension/module/so_onepagecheckout\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n \n $data[\'text_recurring_item\'] = $this->language->get(\'text_recurring_item\'); \n $data[\'text_payment_recurring\'] = $this->language->get(\'text_payment_recurring\'); \n $data[\'text_shopping_cart\'] = $this->language->get(\'text_shopping_cart\'); \n $data[\'text_payment_detail\'] = $this->language->get(\'text_payment_detail\'); \n \n $data[\'button_update\'] = $this->language->get(\'button_update\'); \n $data[\'button_remove\'] = $this->language->get(\'button_remove\'); \n \n $data[\'column_image\'] = $this->language->get(\'column_image\'); \n $data[\'column_name\'] = $this->language->get(\'column_name\'); \n $data[\'column_model\'] = $this->language->get(\'column_model\'); \n $data[\'column_quantity\'] = $this->language->get(\'column_quantity\'); \n $data[\'column_price\'] = $this->language->get(\'column_price\'); \n $data[\'column_total\'] = $this->language->get(\'column_total\'); \n \n $data[\'products\'] = $this->model_extension_module_so_onepagecheckout->getProducts(); \n $data[\'vouchers\'] = $this->model_extension_module_so_onepagecheckout->getVouchers(); \n $data[\'totals\'] = $this->model_extension_module_so_onepagecheckout->getTotals(); \n \n if ($value = $this->getProperty($this->session->data, \'payment_method.code\')) { \n $data[\'payment\'] = $this->load->controller(\'extension/payment/\' . $value); \n } else { \n $data[\'payment\'] = \'\'; \n } \n \n $data[\'session_data\'] = $this->session->data; \n \n if ($this->config->get(\'config_cart_weight\') && (isset($setting_so_onepagecheckout_layout_setting[\'show_product_weight\']) && $setting_so_onepagecheckout_layout_setting[\'show_product_weight\'])) { \n $data[\'weight\'] = $this->weight->format($this->cart->getWeight(), $this->config->get(\'config_weight_class_id\'), $this->language->get(\'decimal_point\'), $this->language->get(\'thousand_point\')); \n } else { \n $data[\'weight\'] = \'\'; \n } \n \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n if ($load) \n return $this->load->view(\'extension/module/so_onepagecheckout/checkout/cart\', $data); \n else \n return $this->response->setOutput($this->load->view(\'extension/module/so_onepagecheckout/checkout/cart\', $data)); \n } \n \n public function cart_update() { \n $this->load->language(\'checkout/cart\'); \n $session_update = $this->getProperty($this->request->post, \'key\'); \n $qty = $this->getProperty($this->request->post, \'quantity\'); \n $this->cart->update($session_update, $qty); \n \n $json = array(); \n \n if (!$this->checkCart()) { \n $json[\'redirect\'] = $this->url->link(\'checkout/cart\', \'\', true); \n } else { \n $json[\'total\'] = sprintf($this->language->get(\'text_items\'), $this->cart->countProducts() + (isset($this->session->data[\'vouchers\']) ? count($this->session->data[\'vouchers\']) : 0), $this->registry->get(\'currency\')->format($this->model_extension_module_so_onepagecheckout->getTotal(), $this->session->data[\'currency\'])); \n } \n \n echo json_encode($json); \n exit; \n } \n \n public function cart_delete() { \n $session_delete = $this->getProperty($this->request->post, \'key\'); \n \n $this->cart->remove($session_delete); \n \n unset($this->session->data[\'vouchers\'][$session_delete]); \n \n $json = array(); \n \n if (!$this->checkCart()) { \n $json[\'redirect\'] = $this->url->link(\'checkout/cart\', \'\', true); \n } else { \n $json[\'total\'] = sprintf($this->language->get(\'text_items\'), $this->cart->countProducts() + (isset($this->session->data[\'vouchers\']) ? count($this->session->data[\'vouchers\']) : 0), $this->registry->get(\'currency\')->format($this->model_extension_module_so_onepagecheckout->getTotal(), $this->session->data[\'currency\'])); \n } \n \n echo json_encode($json); \n exit; \n } \n \n private function checkCart() { \n // Validate cart has products and has stock. \n if ((!$this->cart->hasProducts() && empty($this->session->data[\'vouchers\'])) || (!$this->cart->hasStock() && !$this->config->get(\'config_stock_checkout\'))) { \n return false; \n } \n \n // Validate minimum quantity requirements. \n $products = $this->cart->getProducts(); \n \n foreach ($products as $product) { \n $product_total = 0; \n \n foreach ($products as $product_2) { \n if ($product_2[\'product_id\'] == $product[\'product_id\']) { \n $product_total += $product_2[\'quantity\']; \n } \n } \n \n if ($product[\'minimum\'] > $product_total) { \n return false; \n } \n } \n \n return true; \n } \n \n public function confirm() { \n /* exit if page is accessed via get method */ \n if ($this->request->server[\'REQUEST_METHOD\'] != \'POST\') { \n return; \n } \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n \n $order_data = $this->model_extension_module_so_onepagecheckout->getOrder(); \n \n $new_payment_address = null; \n $new_shipping_address = null; \n \n $register_account = $this->getProperty($this->request->post, \'account\', \'register\'); \n \n $errors = array(); \n $redirect_cart = \'\'; \n \n if (!$this->checkCart()) { \n $errors[\'cart\'] = \'\'; \n $redirect_cart = $this->url->link(\'checkout/cart\', \'\', true); \n } \n \n if ($this->isLoggedIn()) { \n // payment data \n if ($this->getProperty($this->request->post, \'payment_address\') === \'existing\') { \n $address_info = $this->model_account_address->getAddress($this->getProperty($this->request->post, \'payment_address_id\')); \n $order_data = array_replace($order_data, $this->getAddressData($address_info, \'\', \'payment_\')); \n } else { \n $new_payment_address = $this->getAddressData($this->request->post, \'payment_\', \'payment_\'); \n $order_data = array_replace($order_data, $new_payment_address); \n $errors = array_merge($errors, $this->validateAddressData($new_payment_address, \'payment_\')); \n } \n \n // shipping data \n if ($this->isShippingRequired()) { \n if ($this->getProperty($this->request->post, \'shipping_address\') === \'existing\') { \n $address_info = $this->model_account_address->getAddress($this->getProperty($this->request->post, \'shipping_address_id\')); \n $order_data = array_replace($order_data, $this->getAddressData($address_info, \'\', \'shipping_\')); \n } else { \n $new_shipping_address = $this->getAddressData($this->request->post, \'shipping_\', \'shipping_\'); \n $order_data = array_replace($order_data, $new_shipping_address); \n $errors = array_merge($errors, $this->validateAddressData($new_shipping_address, \'shipping_\')); \n } \n } \n \n // customer data \n if (!$errors) { \n $customer_info = $this->model_account_customer->getCustomer($this->customer->getId()); \n \n $order_data[\'customer_id\'] = $this->customer->getId(); \n $order_data[\'customer_group_id\'] = $customer_info[\'customer_group_id\']; \n $order_data[\'firstname\'] = $customer_info[\'firstname\']; \n $order_data[\'lastname\'] = $customer_info[\'lastname\']; \n $order_data[\'email\'] = $customer_info[\'email\']; \n $order_data[\'telephone\'] = $customer_info[\'telephone\']; \n $order_data[\'fax\'] = $customer_info[\'fax\']; \n $order_data[\'custom_field\'] = version_compare(VERSION, \'2.1\', \'>=\') ? json_decode($customer_info[\'custom_field\'], true) : unserialize($customer_info[\'custom_field\']); \n } \n } else { \n // check firstname, lastname \n $errors = array_merge($errors, $this->validateUserData($this->request->post, $register_account)); \n \n // check customer group id \n if (isset($this->request->post[\'customer_group_id\']) && is_array($this->config->get(\'config_customer_group_display\')) && in_array($this->request->post[\'customer_group_id\'], $this->config->get(\'config_customer_group_display\'))) { \n $order_data[\'customer_group_id\'] = $this->request->post[\'customer_group_id\']; \n } else { \n $order_data[\'customer_group_id\'] = $this->config->get(\'config_customer_group_id\'); \n } \n \n if (!isset($this->request->post[\'account\'])) { \n $errors[\'account\'] = array_merge($errors, array(\'Does not account exists! Please check configuration\')); \n } \n \n // check passwords if register \n if (($register_account == \'register\') && isset($this->request->post[\'account\'])) { \n $errors = array_merge($errors, $this->validatePassword($this->request->post)); \n } \n \n // check payment address \n $new_payment_address = $this->getAddressData($this->request->post, \'payment_\', \'payment_\'); \n $order_data = array_replace($order_data, $new_payment_address); \n $errors = array_merge($errors, $this->validateAddressData($new_payment_address, \'payment_\', false)); \n \n // add payment firstname and lastname \n $order_data[\'firstname\'] = $this->request->post[\'firstname\']; \n $order_data[\'lastname\'] = $this->request->post[\'lastname\']; \n $order_data[\'email\'] = $this->request->post[\'email\']; \n $order_data[\'telephone\'] = $this->request->post[\'telephone\']; \n $order_data[\'fax\'] = $this->request->post[\'fax\']; \n $order_data[\'custom_field\'] = $this->getProperty($this->request->post, \'custom_field\', array()); \n $order_data[\'payment_firstname\'] = $order_data[\'firstname\']; \n $order_data[\'payment_lastname\'] = $order_data[\'lastname\']; \n \n // check delivery address \n if ($this->isShippingRequired()) { \n if (!$this->getProperty($this->request->post, \'shipping_address\')) { \n $new_shipping_address = $this->getAddressData($this->request->post, \'shipping_\', \'shipping_\'); \n $order_data = array_replace($order_data, $new_shipping_address); \n $errors = array_merge($errors, $this->validateAddressData($new_shipping_address, \'shipping_\')); \n } else { \n $order_data = array_replace($order_data, $this->getAddressData($order_data, \'payment_\', \'shipping_\')); \n } \n } \n } \n \n // payment method \n if ($payment_method = $this->getProperty($this->session->data, \'payment_methods.\' . $this->getProperty($this->request->post, \'payment_method\') . \'.title\')) { \n $order_data[\'payment_method\'] = $payment_method; \n $order_data[\'payment_code\'] = $this->getProperty($this->request->post, \'payment_method\'); \n } else { \n $errors[\'payment_method\'] = str_replace(\'&nbsp;\', \'\', strip_tags($this->language->get(\'error_no_payment\'))); \n } \n \n // shipping method \n if ($this->isShippingRequired()) { \n $shipping = explode(\'.\', $this->getProperty($this->request->post, \'shipping_method\')); \n if (is_array($shipping) && count($shipping) > 1) { \n $shipping_method = $this->session->data[\'shipping_methods\'][$shipping[0]][\'quote\'][$shipping[1]]; \n if ($shipping_method) { \n $order_data[\'shipping_method\'] = $shipping_method[\'title\']; \n $order_data[\'shipping_code\'] = $this->getProperty($this->request->post, \'shipping_method\'); \n } else { \n $order_data[\'shipping_method\'] = \'no shipping method\'; \n $errors[\'shipping_method\'] = str_replace(\'&nbsp;\', \'\', strip_tags($this->language->get(\'error_no_shipping\'))); \n } \n } else { \n $order_data[\'shipping_method\'] = \'no shipping method\'; \n $errors[\'shipping_method\'] = str_replace(\'&nbsp;\', \'\', strip_tags($this->language->get(\'error_no_shipping\'))); \n } \n } \n \n // order totals \n $totals = array(); \n $taxes = $this->cart->getTaxes(); \n $total = 0; \n \n // Because __call can not keep var references so we put them into an array. \n $total_data = array( \n \'totals\' => &$totals, \n \'taxes\' => &$taxes, \n \'total\' => &$total \n ); \n \n $this->load->model(\'setting/extension\'); \n $results = $this->model_setting_extension->getExtensions(\'total\'); \n \n $sort_order = array(); \n \n foreach ($results as $key => $value) { \n $sort_order[$key] = $this->config->get(\'total_\'.$value[\'code\'] . \'_sort_order\'); \n } \n \n array_multisort($sort_order, SORT_ASC, $results); \n \n foreach ($results as $result) { \n if ($this->config->get(\'total_\'.$result[\'code\'] . \'_status\')) { \n $this->load->model(\'extension/total/\' . $result[\'code\']); \n \n $this->{\'model_extension_total_\' . $result[\'code\']}->getTotal($total_data); \n } \n } \n \n $sort_order = array(); \n \n foreach ($totals as $key => $value) { \n $sort_order[$key] = $value[\'sort_order\']; \n } \n \n array_multisort($sort_order, SORT_ASC, $totals); \n \n $order_data[\'totals\'] = $totals; \n $order_data[\'total\'] = $total; \n \n // order products \n $order_data[\'products\'] = array(); \n \n foreach ($this->cart->getProducts() as $product) { \n $option_data = array(); \n \n foreach ($product[\'option\'] as $option) { \n $option_data[] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value_id\' => $option[\'product_option_value_id\'], \n \'option_id\' => $option[\'option_id\'], \n \'option_value_id\' => $option[\'option_value_id\'], \n \'name\' => $option[\'name\'], \n \'value\' => $option[\'value\'], \n \'type\' => $option[\'type\'] \n ); \n } \n \n $order_data[\'products\'][] = array( \n \'product_id\' => $product[\'product_id\'], \n \'name\' => $product[\'name\'], \n \'model\' => $product[\'model\'], \n \'option\' => $option_data, \n \'download\' => $product[\'download\'], \n \'quantity\' => $product[\'quantity\'], \n \'subtract\' => $product[\'subtract\'], \n \'price\' => $product[\'price\'], \n \'total\' => $product[\'total\'], \n \'tax\' => $this->tax->getTax($product[\'price\'], $product[\'tax_class_id\']), \n \'reward\' => $product[\'reward\'] \n ); \n } \n \n // Gift Voucher \n $order_data[\'vouchers\'] = array(); \n \n if (!empty($this->session->data[\'vouchers\'])) { \n foreach ($this->session->data[\'vouchers\'] as $voucher) { \n $order_data[\'vouchers\'][] = array( \n \'description\' => $voucher[\'description\'], \n \'code\' => substr(md5(mt_rand()), 0, 10), \n \'to_name\' => $voucher[\'to_name\'], \n \'to_email\' => $voucher[\'to_email\'], \n \'from_name\' => $voucher[\'from_name\'], \n \'from_email\' => $voucher[\'from_email\'], \n \'voucher_theme_id\' => $voucher[\'voucher_theme_id\'], \n \'message\' => $voucher[\'message\'], \n \'amount\' => $voucher[\'amount\'] \n ); \n } \n } \n \n // comment + checkboxes \n $order_data[\'comment\'] = $this->getProperty($this->request->post, \'comment\'); \n if ($setting_so_onepagecheckout_layout_setting[\'require_comment_status\'] == 1 && empty($order_data[\'comment\'])) { \n $errors[\'comment\'] = $this->language->get(\'error_comment\'); \n } \n \n if (!$this->isLoggedIn() && $this->config->get(\'config_account_id\')) { \n $this->load->model(\'catalog/information\'); \n \n $information_info = $this->model_catalog_information->getInformation($this->config->get(\'config_account_id\')); \n \n if ($information_info && !isset($this->request->post[\'privacy\'])) { \n $errors[\'privacy\'] = sprintf($this->language->get(\'error_agree\'), $information_info[\'title\']); \n } \n } \n \n if ($this->config->get(\'config_checkout_id\')) { \n $this->load->model(\'catalog/information\'); \n \n $information_info = $this->model_catalog_information->getInformation($this->config->get(\'config_checkout_id\')); \n \n if ($information_info && !isset($this->request->post[\'agree\'])) { \n $errors[\'agree\'] = sprintf($this->language->get(\'error_agree\'), $information_info[\'title\']); \n } \n } \n \n if (isset($errors[\'agree\']) && empty($setting_so_onepagecheckout_layout_setting[\'show_term\'])) { \n unset($errors[\'agree\']); \n } \n \n if ($this->config->get(\'config_account_id\') == $this->config->get(\'config_checkout_id\')) { \n unset($errors[\'privacy\']); \n } \n \n $redirect = \'\'; \n \n // update order \n $this->model_extension_module_so_onepagecheckout->setOrderData($order_data); \n \n if ($this->getProperty($this->request->get, \'saveOnly\') === \'true\') { \n header(\'Content-Type: application/json\'); \n echo json_encode(array( \n \'order_data\'=> $order_data \n )); \n exit; \n } \n \n if (!$errors) { \n if ($this->isLoggedIn()) { \n // save new payment address \n if ($new_payment_address) { \n $this->model_account_address->addAddress($this->customer->getId(), $this->getAddressData($new_payment_address, \'payment_\')); \n } \n \n // save new shipping address \n if ($new_shipping_address && $new_shipping_address !== $new_payment_address) { \n $this->model_account_address->addAddress($this->customer->getId(), $this->getAddressData($new_shipping_address, \'shipping_\')); \n } \n \n $this->model_extension_module_so_onepagecheckout->updateCustomer(); \n } else if ($register_account == \'register\') { \n $redirect = $this->registerAccount(); \n $sql = \"UPDATE `\" . DB_PREFIX . \"order` SET customer_id = \'\" . (int)($this->customer->getId()) . \"\', customer_group_id = \'\" . (int)($this->customer->getGroupId()) . \"\' WHERE order_id = \'\" . (int)($this->session->data[\'order_id\']) . \"\'\"; \n $this->db->query($sql); \n } else { \n $this->session->data[\'guest\'] = $this->getAddressData($order_data, \'payment_\'); \n } \n } \n \n $this->session->data[\'so_checkout_account\'] = $this->getProperty($this->request->post, \'account\'); \n $this->session->data[\'so_checkout_shipping_address\'] = $this->getProperty($this->request->post, \'shipping_address\', \'0\'); \n \n // send response \n header(\'Content-Type: application/json\'); \n echo json_encode(array( \n \'errors\' => $errors ? $errors : null, \n \'account_status\' => $this->isLoggedIn() ? 1 : 0, \n \'redirect\' => $redirect, \n \'redirect_cart\' => $redirect_cart, \n \'order_data\'=> $order_data \n )); \n exit; \n } \n \n private function validateAddressData($data, $key, $name = true) { \n $errors = array(); \n \n if ($name) { \n // firstname \n if ((utf8_strlen(trim($data[$key . \'firstname\'])) < 1) || (utf8_strlen(trim($data[$key . \'firstname\'])) > 32)) { \n $errors[$key . \'firstname\'] = $this->language->get(\'error_firstname\'); \n } \n \n // lastname \n if ((utf8_strlen(trim($data[$key . \'lastname\'])) < 1) || (utf8_strlen(trim($data[$key . \'lastname\'])) > 32)) { \n $errors[$key . \'lastname\'] = $this->language->get(\'error_lastname\'); \n } \n } \n \n if ((utf8_strlen(trim($data[$key . \'address_1\'])) < 3) || (utf8_strlen(trim($data[$key . \'address_1\'])) > 128)) { \n $errors[$key . \'address_1\'] = $this->language->get(\'error_address_1\'); \n } \n \n if ((utf8_strlen($data[$key . \'city\']) < 2) || (utf8_strlen($data[$key . \'city\']) > 32)) { \n $errors[$key . \'city\'] = $this->language->get(\'error_city\'); \n } \n \n $country_info = $this->model_localisation_country->getCountry($data[$key . \'country_id\']); \n \n if ($country_info && $country_info[\'postcode_required\'] && (utf8_strlen(trim($data[$key . \'postcode\'])) < 2 || utf8_strlen(trim($data[$key . \'postcode\'])) > 10)) { \n $errors[$key . \'postcode\'] = $this->language->get(\'error_postcode\'); \n } \n \n if ($data[$key . \'country_id\'] == \'\') { \n $errors[$key . \'country\'] = $this->language->get(\'error_country\'); \n } \n \n if (!isset($data[$key . \'zone_id\']) || $data[$key . \'zone_id\'] == \'\' || !is_numeric($data[$key . \'zone_id\'])) { \n $errors[$key . \'zone\'] = $this->language->get(\'error_zone\'); \n } \n \n // Custom field validation \n $custom_fields = $this->model_extension_module_so_onepagecheckout->getCustomFields(); \n foreach ($custom_fields as $custom_field) { \n if (($custom_field[\'location\'] == \'address\') && $custom_field[\'required\'] && empty($data[$key . \'custom_field\'][$custom_field[\'custom_field_id\']])) { \n $errors[$key . \'custom_field\' . $custom_field[\'custom_field_id\']] = sprintf($this->language->get(\'error_custom_field\'), $custom_field[\'name\']); \n } \n } \n \n return $errors; \n } \n \n private function validateUserData($data, $register) { \n $errors = array(); \n \n // firstname \n if ((utf8_strlen(trim($data[\'firstname\'])) < 1) || (utf8_strlen(trim($data[\'firstname\'])) > 32)) { \n $errors[\'firstname\'] = $this->language->get(\'error_firstname\'); \n } \n \n // lastname \n if ((utf8_strlen(trim($data[\'lastname\'])) < 1) || (utf8_strlen(trim($data[\'lastname\'])) > 32)) { \n $errors[\'lastname\'] = $this->language->get(\'error_lastname\'); \n } \n \n // email \n if ((utf8_strlen($data[\'email\']) > 96) || !preg_match(\'/^[^\\@]+@.*.[a-z]{2,15}$/i\', $data[\'email\'])) { \n $errors[\'email\'] = $this->language->get(\'error_email\'); \n } else if ($register && $this->model_account_customer->getTotalCustomersByEmail($data[\'email\'])) { \n $errors[\'email\'] = $this->language->get(\'error_exists\'); \n } \n \n // telephone \n if ((utf8_strlen($data[\'telephone\']) < 3) || (utf8_strlen($data[\'telephone\']) > 32)) { \n $errors[\'telephone\'] = $this->language->get(\'error_telephone\'); \n } \n \n // Custom field validation \n $custom_fields = $this->model_extension_module_so_onepagecheckout->getCustomFields(); \n \n foreach ($custom_fields as $custom_field) { \n if (($custom_field[\'location\'] == \'account\') && $custom_field[\'required\'] && empty($data[\'custom_field\'][$custom_field[\'custom_field_id\']])) { \n $errors[\'custom_field\' . $custom_field[\'custom_field_id\']] = sprintf($this->language->get(\'error_custom_field\'), $custom_field[\'name\']); \n } \n } \n \n return $errors; \n } \n \n private function validatePassword($data) { \n $errors = array(); \n \n if ((utf8_strlen($data[\'password\']) < 4) || (utf8_strlen($data[\'password\']) > 20)) { \n $errors[\'password\'] = $this->language->get(\'error_password\'); \n } \n \n if ($data[\'confirm\'] != $data[\'password\']) { \n $errors[\'confirm\'] = $this->language->get(\'error_confirm\'); \n } \n \n return $errors; \n } \n \n private function getAddressData($array, $i_address = \'\', $prefix = \'\') { \n $keys = array( \n \'address_1\', \n \'address_2\', \n \'address_id\', \n \'address_format\', \n \'city\', \n \'company\', \n \'company_id\', \n \'country\', \n \'country_id\', \n \'firstname\', \n \'lastname\', \n \'method\', \n \'postcode\', \n \'tax_id\', \n \'zone\', \n \'zone_id\' \n ); \n \n $result = array(); \n \n foreach ($keys as $k) { \n $result[$prefix . $k] = $this->getProperty($array, $i_address . $k, \'\'); \n } \n \n if ($result[$prefix . \'country_id\']) { \n $country_info = $this->model_localisation_country->getCountry($result[$prefix . \'country_id\']); \n if ($country_info) { \n if (!$result[$prefix . \'country\']) { \n $result[$prefix . \'country\'] = $country_info[\'name\']; \n } \n $result[$prefix . \'address_format\'] = $country_info[\'address_format\']; \n } \n } \n \n if (!$result[$prefix . \'zone\'] && $result[$prefix . \'zone_id\']) { \n $zone_info = $this->model_localisation_zone->getZone($result[$prefix . \'zone_id\']); \n if ($zone_info) { \n $result[$prefix . \'zone\'] = $zone_info[\'name\']; \n } \n } \n \n $result[$prefix . \'custom_field\'] = $this->getProperty($array, $i_address . \'custom_field\', array()); \n \n return $result; \n } \n \n private function registerAccount() { \n $redirect = \'\'; \n \n $data = $this->getAddressData($this->request->post, \'payment_\'); \n \n $data = array_merge($data, array( \n \'firstname\' => $this->getProperty($this->request->post, \'firstname\'), \n \'lastname\' => $this->getProperty($this->request->post, \'lastname\'), \n \'customer_group_id\'=> $this->getProperty($this->request->post, \'customer_group_id\', $this->config->get(\'config_customer_group_id\')), \n \'custom_field\' => array( \n \'account\' => $this->getProperty($this->request->post, \'custom_field\'), \n \'address\' => $this->getProperty($this->request->post, \'payment_custom_field\'), \n ), \n \'email\' => $this->getProperty($this->request->post, \'email\'), \n \'telephone\' => $this->getProperty($this->request->post, \'telephone\'), \n \'fax\' => $this->getProperty($this->request->post, \'fax\'), \n \'password\' => $this->getProperty($this->request->post, \'password\'), \n \'newsletter\' => $this->getProperty($this->request->post, \'newsletter\') \n )); \n \n $customer_id = $this->model_account_customer->addCustomer($data); \n \n // Clear any previous login attempts for unregistered accounts. \n $this->model_account_customer->deleteLoginAttempts($data[\'email\']); \n \n $this->session->data[\'account\'] = \'register\'; \n \n $customer_group_info = $this->model_account_customer_group->getCustomerGroup($this->getProperty($this->request->post, \'customer_group_id\', $this->config->get(\'config_customer_group_id\'))); \n \n if ($customer_group_info && !$customer_group_info[\'approval\']) { \n $this->customer->login($data[\'email\'], $data[\'password\']); \n \n if ($this->getProperty($this->request->post, \'shipping_address\') != \'1\') { \n $this->model_account_address->addAddress($this->getAddressData($this->request->post, \'shipping_\')); \n } \n \n // Add to activity log \n $activity_data = array( \n \'customer_id\' => $customer_id, \n \'name\' => $data[\'firstname\'] . \' \' . $data[\'lastname\'] \n ); \n \n $this->model_account_activity->addActivity(\'register\', $activity_data); \n } \n else { \n $redirect = $this->url->link(\'account/success\'); \n } \n \n return $redirect; \n } \n \n public function login() { \n $json = array(); \n \n if ($this->customer->isLogged()) { \n $json[\'redirect\'] = $this->url->link(\'checkout/checkout\', \'\', true); \n } \n \n if ((!$this->cart->hasProducts() && empty($this->session->data[\'vouchers\'])) || (!$this->cart->hasStock() && !$this->config->get(\'config_stock_checkout\'))) { \n $json[\'redirect\'] = $this->url->link(\'checkout/cart\', \'\', true); \n } \n \n if (!$json) { \n $this->load->model(\'account/customer\'); \n \n // Check how many login attempts have been made. \n $login_info = $this->model_account_customer->getLoginAttempts($this->request->post[\'email\']); \n \n if ($login_info && ($login_info[\'total\'] >= $this->config->get(\'config_login_attempts\')) && strtotime(\'-1 hour\') < strtotime($login_info[\'date_modified\'])) { \n $json[\'error\'][\'warning\'] = $this->language->get(\'error_attempts\'); \n } \n \n // Check if customer has been approved. \n $customer_info = $this->model_account_customer->getCustomerByEmail($this->request->post[\'email\']); \n \n if ($customer_info && !$customer_info[\'status\']) { \n $json[\'error\'][\'warning\'] = $this->language->get(\'error_approved\'); \n } \n \n if (!isset($json[\'error\'])) { \n if (!$this->customer->login($this->request->post[\'email\'], $this->request->post[\'password\'])) { \n $json[\'error\'][\'warning\'] = $this->language->get(\'error_login\'); \n \n $this->model_account_customer->addLoginAttempt($this->request->post[\'email\']); \n } else { \n $this->model_account_customer->deleteLoginAttempts($this->request->post[\'email\']); \n } \n } \n } \n \n if (!$json) { \n unset($this->session->data[\'guest\']); \n \n $this->load->model(\'account/address\'); \n \n $address_info = $this->model_account_address->getAddress($this->customer->getAddressId()); \n \n if ($this->config->get(\'config_tax_customer\') == \'payment\') { \n $this->session->data[\'payment_address\'] = $address_info; \n } \n \n if ($this->config->get(\'config_tax_customer\') == \'shipping\') { \n $this->session->data[\'shipping_address\'] = $address_info; \n } \n \n $this->model_extension_module_so_onepagecheckout->setAddress(\'shipping\', $address_info); \n $this->model_extension_module_so_onepagecheckout->setAddress(\'payment\', $address_info); \n $this->model_extension_module_so_onepagecheckout->save(); \n \n $json[\'redirect\'] = $this->url->link(\'checkout/checkout\', \'\', true); \n \n // Add to activity log \n $this->load->model(\'account/activity\'); \n \n $activity_data = array( \n \'customer_id\' => $this->customer->getId(), \n \'name\' => $this->customer->getFirstName() . \' \' . $this->customer->getLastName() \n ); \n \n $this->model_account_activity->addActivity(\'login\', $activity_data); \n } \n \n $this->response->addHeader(\'Content-Type: application/json\'); \n $this->response->setOutput(json_encode($json)); \n } \n ]]></add> \n </operation> \n \n <operation error=\"log\"> \n <search ><![CDATA[$data[\'breadcrumbs\'] = array();]]></search> \n <add position=\"before\"><![CDATA[ \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n if (isset($setting_so_onepagecheckout) && count($setting_so_onepagecheckout)>0) { \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n if (isset($setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) && $setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) { \n $this->document->addStyle(\'catalog/view/javascript/so_onepagecheckout/css/so_onepagecheckout.css\'); \n $this->document->addScript(\'catalog/view/javascript/so_onepagecheckout/js/so_onepagecheckout.js\'); \n $this->load->model(\'localisation/country\'); \n $data[\'countries\'] = $this->model_localisation_country->getCountries(); \n } \n } \n ]]></add> \n </operation> \n \n <operation error=\"log\"> \n <search ><![CDATA[$this->response->setOutput($this->load->view(\'checkout/checkout\', $data));]]></search> \n <add position=\"before\"><![CDATA[ \n $this->load->model(\'setting/setting\'); \n $setting_so_onepagecheckout = $this->model_setting_setting->getSetting(\'so_onepagecheckout\'); \n if (isset($setting_so_onepagecheckout) && count($setting_so_onepagecheckout)>0) { \n $setting_so_onepagecheckout_general = $setting_so_onepagecheckout[\'so_onepagecheckout_general\']; \n $setting_so_onepagecheckout_layout_setting = $setting_so_onepagecheckout[\'so_onepagecheckout_layout_setting\']; \n \n if (isset($setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) && $setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) { \n if (isset($setting_so_onepagecheckout_layout_setting[\'so_onepagecheckout_account_open\']) && !empty($setting_so_onepagecheckout_layout_setting[\'so_onepagecheckout_account_open\'])) { \n $data[\'default_auth\'] = $setting_so_onepagecheckout_layout_setting[\'so_onepagecheckout_account_open\']; \n } \n else { \n $data[\'default_auth\'] = $this->getProperty($this->session->data, \'so_checkout_account\', \'register\'); \n } \n \n $data[\'setting_so_onepagecheckout\'] = $setting_so_onepagecheckout; \n $data[\'setting_so_onepagecheckout_general\'] = $setting_so_onepagecheckout_general; \n $data[\'setting_so_onepagecheckout_layout_setting\'] = $setting_so_onepagecheckout_layout_setting; \n \n $data[\'text_register\'] = $this->language->get(\'text_register\'); \n $data[\'text_guest\'] = $this->language->get(\'text_guest\'); \n $data[\'entry_email\'] = $this->language->get(\'entry_email\'); \n $data[\'entry_password\'] = $this->language->get(\'entry_password\'); \n $data[\'text_forgotten\'] = $this->language->get(\'text_forgotten\'); \n $data[\'text_loading\'] = $this->language->get(\'text_loading\'); \n $data[\'button_login\'] = $this->language->get(\'button_login\'); \n $data[\'text_i_am_returning_customer\'] = $this->language->get(\'text_i_am_returning_customer\'); \n $data[\'text_returning_customer\'] = $this->language->get(\'text_returning_customer\'); \n $data[\'text_checkout_create_account_login\'] = $this->language->get(\'text_checkout_create_account_login\'); \n \n $data[\'text_your_details\'] = $this->language->get(\'text_your_details\'); \n $data[\'entry_customer_group\'] = $this->language->get(\'entry_customer_group\'); \n $data[\'entry_firstname\'] = $this->language->get(\'entry_firstname\'); \n $data[\'entry_lastname\'] = $this->language->get(\'entry_lastname\'); \n $data[\'entry_telephone\'] = $this->language->get(\'entry_telephone\'); \n $data[\'entry_fax\'] = $this->language->get(\'entry_fax\'); \n $data[\'text_your_password\'] = $this->language->get(\'text_your_password\'); \n $data[\'entry_confirm\'] = $this->language->get(\'entry_confirm\'); \n $data[\'text_your_address\'] = $this->language->get(\'text_your_address\'); \n $data[\'entry_shipping\'] = $this->language->get(\'entry_shipping\'); \n $data[\'text_confirm_order\'] = $this->language->get(\'text_confirm_order\'); \n \n // address data \n if ($this->isLoggedIn()) { \n $data[\'is_logged_in\'] = true; \n $data[\'payment_address\'] = $this->renderAddressForm(\'payment\'); \n $data[\'shipping_address\'] = $this->renderAddressForm(\'shipping\'); \n $data[\'register_form\'] = \'\'; \n } else { \n $data[\'is_logged_in\'] = false; \n $data[\'allow_guest_checkout\'] = $this->allowGuestCheckout(); \n $data[\'register_form\'] = $this->renderRegisterForm(); \n } \n \n // shipping \n if ($this->isShippingRequired() && $setting_so_onepagecheckout_layout_setting[\'delivery_method_status\']) { \n $data[\'is_shipping_required\'] = true; \n $data[\'shipping_methods\'] = $this->shipping(true); \n } else { \n $data[\'is_shipping_required\'] = false; \n } \n \n // payment \n $data[\'payment_methods\'] = $this->payment(true); \n \n // coupon + voucher \n $data[\'coupon_voucher_reward\'] = $this->renderCouponVoucherReward(); \n \n // cart \n if (isset($setting_so_onepagecheckout_layout_setting[\'shopping_cart_status\']) && $setting_so_onepagecheckout_layout_setting[\'shopping_cart_status\']) { \n $data[\'cart\'] = $this->cart(true); \n } \n else { \n $data[\'cart\'] = \'\'; \n } \n \n // checkboxes \n if (!$this->isLoggedIn() && $this->config->get(\'config_account_id\')) { \n $this->load->model(\'catalog/information\'); \n \n $information_info = $this->model_catalog_information->getInformation($this->config->get(\'config_account_id\')); \n \n if ($information_info) { \n $data[\'text_privacy\'] = sprintf($this->language->get(\'text_agree\'), $this->url->link(\'information/information/agree\', \'information_id=\' . $this->config->get(\'config_account_id\'), true), $information_info[\'title\'], $information_info[\'title\']); \n } else { \n $data[\'text_privacy\'] = \'\'; \n } \n } else { \n $data[\'text_privacy\'] = \'\'; \n } \n \n if ($this->config->get(\'config_checkout_id\')) { \n $this->load->model(\'catalog/information\'); \n \n $information_info = $this->model_catalog_information->getInformation($this->config->get(\'config_checkout_id\')); \n \n if ($information_info) { \n $data[\'text_agree\'] = sprintf($this->language->get(\'text_agree\'), $this->url->link(\'information/information/agree\', \'information_id=\' . $this->config->get(\'config_checkout_id\'), true), $information_info[\'title\'], $information_info[\'title\']); \n } else { \n $data[\'text_agree\'] = \'\'; \n } \n } else { \n $data[\'text_agree\'] = \'\'; \n } \n \n if ($data[\'text_privacy\'] === $data[\'text_agree\']) { \n $data[\'text_privacy\'] = \'\'; \n } \n \n $data[\'text_comments\'] = $this->language->get(\'text_comments\'); \n \n if ($this->isLoggedIn()) { \n $data[\'entry_newsletter\'] = false; \n } else { \n $data[\'entry_newsletter\'] = sprintf($this->language->get(\'entry_newsletter\'), $this->config->get(\'config_name\')); \n } \n \n $data[\'comment\'] = $this->model_extension_module_so_onepagecheckout->getComment(); \n \n if (isset($this->session->data[\'error\'])) { \n $data[\'error_warning\'] = $this->session->data[\'error\']; \n unset($this->session->data[\'error\']); \n } else { \n $data[\'error_warning\'] = \'\'; \n } \n \n $data[\'customer_groups\'] = array(); \n if (is_array($this->config->get(\'config_customer_group_display\'))) { \n $this->load->model(\'account/customer_group\'); \n \n $customer_groups = $this->model_account_customer_group->getCustomerGroups(); \n \n foreach ($customer_groups as $customer_group) { \n if (in_array($customer_group[\'customer_group_id\'], $this->config->get(\'config_customer_group_display\'))) { \n $data[\'customer_groups\'][] = $customer_group; \n } \n } \n } \n if (isset($this->request->post[\'customer_group_id\'])) { \n $data[\'customer_group_id\'] = $this->request->post[\'customer_group_id\']; \n } else { \n $data[\'customer_group_id\'] = $this->config->get(\'config_customer_group_id\'); \n } \n \n \n \n //Get cart \n $this->load->model(\'tool/image\'); \n $this->load->model(\'tool/upload\'); \n \n $data[\'products\'] = array(); \n $products = $this->cart->getProducts(); \n foreach ($products as $product) { \n $product_total = 0; \n \n foreach ($products as $product_2) { \n if ($product_2[\'product_id\'] == $product[\'product_id\']) { \n $product_total += $product_2[\'quantity\']; \n } \n } \n \n if ($product[\'minimum\'] > $product_total) { \n $data[\'error_warning\'] = sprintf($this->language->get(\'error_minimum\'), $product[\'name\'], $product[\'minimum\']); \n } \n \n if ($product[\'image\']) { \n $image = $this->model_tool_image->resize($product[\'image\'], $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_cart_width\'), $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_cart_height\')); \n } else { \n $image = \'\'; \n } \n \n $option_data = array(); \n \n foreach ($product[\'option\'] as $option) { \n if ($option[\'type\'] != \'file\') { \n $value = $option[\'value\']; \n } else { \n $upload_info = $this->model_tool_upload->getUploadByCode($option[\'value\']); \n \n if ($upload_info) { \n $value = $upload_info[\'name\']; \n } else { \n $value = \'\'; \n } \n } \n \n $option_data[] = array( \n \'name\' => $option[\'name\'], \n \'value\' => (utf8_strlen($value) > 20 ? utf8_substr($value, 0, 20) . \'..\' : $value) \n ); \n } \n \n // Display prices \n if ($this->customer->isLogged() || !$this->config->get(\'config_customer_price\')) { \n $unit_price = $this->tax->calculate($product[\'price\'], $product[\'tax_class_id\'], $this->config->get(\'config_tax\')); \n \n $price = $this->currency->format($unit_price, $this->session->data[\'currency\']); \n $total = $this->currency->format($unit_price * $product[\'quantity\'], $this->session->data[\'currency\']); \n } else { \n $price = false; \n $total = false; \n } \n \n $recurring = \'\'; \n \n if ($product[\'recurring\']) { \n $frequencies = array( \n \'day\' => $this->language->get(\'text_day\'), \n \'week\' => $this->language->get(\'text_week\'), \n \'semi_month\' => $this->language->get(\'text_semi_month\'), \n \'month\' => $this->language->get(\'text_month\'), \n \'year\' => $this->language->get(\'text_year\'), \n ); \n \n if ($product[\'recurring\'][\'trial\']) { \n $recurring = sprintf($this->language->get(\'text_trial_description\'), $this->currency->format($this->tax->calculate($product[\'recurring\'][\'trial_price\'] * $product[\'quantity\'], $product[\'tax_class_id\'], $this->config->get(\'config_tax\')), $this->session->data[\'currency\']), $product[\'recurring\'][\'trial_cycle\'], $frequencies[$product[\'recurring\'][\'trial_frequency\']], $product[\'recurring\'][\'trial_duration\']) . \' \'; \n } \n \n if ($product[\'recurring\'][\'duration\']) { \n $recurring .= sprintf($this->language->get(\'text_payment_description\'), $this->currency->format($this->tax->calculate($product[\'recurring\'][\'price\'] * $product[\'quantity\'], $product[\'tax_class_id\'], $this->config->get(\'config_tax\')), $this->session->data[\'currency\']), $product[\'recurring\'][\'cycle\'], $frequencies[$product[\'recurring\'][\'frequency\']], $product[\'recurring\'][\'duration\']); \n } else { \n $recurring .= sprintf($this->language->get(\'text_payment_cancel\'), $this->currency->format($this->tax->calculate($product[\'recurring\'][\'price\'] * $product[\'quantity\'], $product[\'tax_class_id\'], $this->config->get(\'config_tax\')), $this->session->data[\'currency\']), $product[\'recurring\'][\'cycle\'], $frequencies[$product[\'recurring\'][\'frequency\']], $product[\'recurring\'][\'duration\']); \n } \n } \n \n $data[\'products\'][] = array( \n \'cart_id\' => $product[\'cart_id\'], \n \'thumb\' => $image, \n \'name\' => $product[\'name\'], \n \'model\' => $product[\'model\'], \n \'option\' => $option_data, \n \'recurring\' => $recurring, \n \'quantity\' => $product[\'quantity\'], \n \'stock\' => $product[\'stock\'] ? true : !(!$this->config->get(\'config_stock_checkout\') || $this->config->get(\'config_stock_warning\')), \n \'reward\' => ($product[\'reward\'] ? sprintf($this->language->get(\'text_points\'), $product[\'reward\']) : \'\'), \n \'price\' => $price, \n \'total\' => $total, \n \'href\' => $this->url->link(\'product/product\', \'product_id=\' . $product[\'product_id\']) \n ); \n } \n \n // Gift Voucher \n $data[\'vouchers\'] = array(); \n \n if (!empty($this->session->data[\'vouchers\'])) { \n foreach ($this->session->data[\'vouchers\'] as $key => $voucher) { \n $data[\'vouchers\'][] = array( \n \'key\' => $key, \n \'description\' => $voucher[\'description\'], \n \'amount\' => $this->currency->format($voucher[\'amount\'], $this->session->data[\'currency\']), \n \'remove\' => $this->url->link(\'checkout/cart\', \'remove=\' . $key) \n ); \n } \n } \n \n // Totals \n $this->load->model(\'setting/extension\'); \n \n $totals = array(); \n $taxes = $this->cart->getTaxes(); \n $total = 0; \n \n // Because __call can not keep var references so we put them into an array. \n $total_data = array( \n \'totals\' => &$totals, \n \'taxes\' => &$taxes, \n \'total\' => &$total \n ); \n \n // Display prices \n if ($this->customer->isLogged() || !$this->config->get(\'config_customer_price\')) { \n $sort_order = array(); \n \n $results = $this->model_setting_extension->getExtensions(\'total\'); \n \n foreach ($results as $key => $value) { \n $sort_order[$key] = $this->config->get(\'total_\'.$value[\'code\'] . \'_sort_order\'); \n } \n \n array_multisort($sort_order, SORT_ASC, $results); \n \n foreach ($results as $result) { \n if ($this->config->get(\'total_\'.$result[\'code\'] . \'_status\')) { \n $this->load->model(\'extension/total/\' . $result[\'code\']); \n \n // We have to put the totals in an array so that they pass by reference. \n $this->{\'model_extension_total_\' . $result[\'code\']}->getTotal($total_data); \n } \n } \n \n $sort_order = array(); \n \n foreach ($totals as $key => $value) { \n $sort_order[$key] = $value[\'sort_order\']; \n } \n \n array_multisort($sort_order, SORT_ASC, $totals); \n } \n \n $data[\'totals\'] = array(); \n \n foreach ($totals as $total) { \n $data[\'totals\'][] = array( \n \'title\' => $total[\'title\'], \n \'text\' => $this->currency->format($total[\'value\'], $this->session->data[\'currency\']) \n ); \n } \n } \n } \n ]]></add> \n </operation> \n \n <operation error=\"log\"> \n <search ><![CDATA[$this->response->setOutput($this->load->view(\'checkout/checkout\', $data));]]></search> \n <add position=\"replace\"><![CDATA[ \n if (isset($setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) && $setting_so_onepagecheckout_general[\'so_onepagecheckout_enabled\']) { \n $data[\'forgotten\'] = $this->url->link(\'account/forgotten\', \'\', true); \n $this->model_extension_module_so_onepagecheckout->save(); \n if ($setting_so_onepagecheckout_general[\'so_onepagecheckout_layout\'] == 1) \n $this->response->setOutput($this->load->view(\'extension/module/so_onepagecheckout/default\', $data)); \n else if ($setting_so_onepagecheckout_general[\'so_onepagecheckout_layout\'] == 2) \n $this->response->setOutput($this->load->view(\'extension/module/so_onepagecheckout/default2\', $data)); \n } \n else { \n $this->response->setOutput($this->load->view(\'checkout/checkout\', $data)); \n } \n ]]></add> \n </operation> \n </file> \n</modification>',1,'2017-08-25 14:32:08'),(16,39,'Simple Blog','simpleblog','OpenCartWorks - OpenCartWorks.com','3.1.0','http://www.opencartworks.com/','<?xml version=\"1.0\" encoding=\"utf-8\"?> \n<modification> \n <name><![CDATA[Simple Blog]]></name> \n <code>simpleblog</code> \n <version><![CDATA[3.1.0]]></version> \n <author><![CDATA[OpenCartWorks - OpenCartWorks.com]]></author> \n \n <link><![CDATA[http://www.opencartworks.com/]]></link> \n <file path=\"admin/controller/common/column_left.php\"> \n <operation> \n <search><![CDATA[$report = array();]]></search> \n <add position=\"before\"><![CDATA[ \n // Simple Blog \n $simpleblog = array(); \n \n if ($this->user->hasPermission(\'access\', \'extension/module/simple_blog/author\')) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_author\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog/author\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n } \n \n if ($this->user->hasPermission(\'access\', \'extension/module/simple_blog/article\')) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_article\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog/article\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n } \n \n if ($this->user->hasPermission(\'access\', \'extension/module/simple_blog/category\')) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_category\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog/category\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n } \n \n if ($this->user->hasPermission(\'access\', \'extension/module/simple_blog/comment\')) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_article_comment\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog/comment\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n } \n \n if ($this->user->hasPermission(\'access\', \'extension/module/simple_blog/report\')) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_view_report\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog/report\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n } \n \n $simpleblogsettings = array(); \n \n $simpleblogsettings[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_general_setting\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n \n $simpleblogsettings[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_category_setting\'), \n \'href\' => $this->url->link(\'extension/module/simple_blog_category\', \'user_token=\' . $this->session->data[\'user_token\'], true), \n \'children\' => array() \n ); \n \n if ($simpleblogsettings) { \n $simpleblog[] = array( \n \'name\' => $this->language->get(\'text_simple_blog_setting\'), \n \'href\' => \'\', \n \'children\' => $simpleblogsettings \n ); \n } \n \n if ($simpleblog) { \n $data[\'menus\'][] = array( \n \'id\' => \'menu-simpleblog\', \n \'icon\' => \'fa-file-text-o\', \n \'name\' => $this->language->get(\'text_simple_blogs\'), \n \'href\' => \'\', \n \'children\' => $simpleblog \n ); \n } \n ]]></add> \n </operation> \n </file> \n \n <file path=\"admin/language/*/common/column_left.php\"> \n <operation> \n <search><![CDATA[$_[\'text_other_status\']]]></search> \n <add position=\"after\"><![CDATA[ \n $_[\'text_simple_blogs\'] = \'Simple Blog\'; \n $_[\'text_simple_blog_author\'] = \'Author\'; \n $_[\'text_simple_blog_category\'] = \'Category\'; \n $_[\'text_simple_blog_article\'] = \'Article\'; \n $_[\'text_simple_blog_article_comment\'] = \'Article Comment\'; \n $_[\'text_simple_blog_setting\'] = \'Setting\'; \n $_[\'text_simple_blog_general_setting\'] = \'General Setting\'; \n $_[\'text_simple_blog_category_setting\'] = \'Category Setting\'; \n $_[\'text_simple_blog_view_report\'] = \'Report\'; \n ]]></add> \n </operation> \n </file> \n <!-- End admin/controller--> \n \n <!--catalog/controller/common--> \n <file path=\"catalog/controller/startup/seo_url.php\"> \n <operation> \n <search><![CDATA[if ($query->row[\'query\'] && $url[0] != \'information_id\' && $url[0] != \'manufacturer_id\' && $url[0] != \'category_id\' && $url[0] != \'product_id\') {]]></search> \n <add position=\"replace\"><![CDATA[ \n if ($query->row[\'query\'] && $url[0] != \'information_id\' && $url[0] != \'manufacturer_id\' && $url[0] != \'category_id\' && $url[0] != \'product_id\' && $url[0] != \'simple_blog_article_id\' && $url[0] != \'simple_blog_category_id\' && $url[0] != \'simple_blog_author_id\') { \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[if ($url[0] == \'category_id\') {]]></search> \n <add position=\"before\"><![CDATA[ \n if($url[0] == \'simple_blog_article_id\') { \n $this->request->get[\'simple_blog_article_id\'] = $url[1]; \n } \n if($url[0] == \'simple_blog_author_id\') { \n $this->request->get[\'simple_blog_author_id\'] = $url[1]; \n } \n if ($url[0] == \'simple_blog_category_id\') { \n $this->request->get[\'simple_blog_category_id\'] = $url[1]; \n } \n ]]></add> \n </operation> \n \n <operation> \n <search><![CDATA[$this->request->get[\'route\'] = \'error/not_found\']]></search> \n <add position=\"replace\"><![CDATA[ \n if (($this->config->has(\'simple_blog_seo_keyword\')) && ($this->db->escape($part) == $this->config->get(\'simple_blog_seo_keyword\'))) { \n \n } else if($this->db->escape($part) == \'simple-blog\') { \n \n } else { \n $this->request->get[\'route\'] = \'error/not_found\'; \n break; \n } \n ]]></add> \n </operation> \n \n <operation> \n <search><![CDATA[$this->request->get[\'route\'] = \'information/information\';]]></search> \n <add position=\"replace\"><![CDATA[ \n $this->request->get[\'route\'] = \'information/information\'; \n } else if (isset($this->request->get[\'simple_blog_article_id\'])) { \n $this->request->get[\'route\'] = \'extension/simple_blog/article/view\'; \n } else if (isset($this->request->get[\'simple_blog_author_id\'])) { \n $this->request->get[\'route\'] = \'extension/simple_blog/author\'; \n } else if (isset($this->request->get[\'simple_blog_category_id\'])) { \n $this->request->get[\'route\'] = \'extension/simple_blog/category\'; \n } else { \n if(($this->config->has(\'simple_blog_seo_keyword\'))) { \n if($this->request->get[\'_route_\'] == $this->config->get(\'simple_blog_seo_keyword\')) { \n $this->request->get[\'route\'] = \'extension/simple_blog/article\'; \n } \n }else { \n $this->request->get[\'route\'] = \'extension/simple_blog/article\'; \n } \n ]]></add> \n </operation> \n \n <operation> \n <search><![CDATA[} elseif ($key == \'path\') {]]></search> \n <add position=\"replace\"><![CDATA[ \n } else if($data[\'route\'] == \'extension/simple_blog/article/view\' && $key == \'simple_blog_article_id\') { \n $query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"seo_url WHERE `query` = \'\" . $this->db->escape($key . \'=\' . (int)$value) . \"\' AND store_id = \'\" . (int)$this->config->get(\'config_store_id\') . \"\' AND language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\"); \n \n if ($query->num_rows) { \n $url .= \'/\' . $query->row[\'keyword\']; \n unset($data[$key]); \n } \n } else if($data[\'route\'] == \'extension/simple_blog/author\' && $key == \'simple_blog_author_id\') { \n $query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"seo_url WHERE `query` = \'\" . $this->db->escape($key . \'=\' . (int)$value) . \"\' AND store_id = \'\" . (int)$this->config->get(\'config_store_id\') . \"\' AND language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\"); \n \n if ($query->num_rows) { \n $url .= \'/\' . $query->row[\'keyword\']; \n unset($data[$key]); \n } \n } else if($data[\'route\'] == \'extension/simple_blog/category\' && $key == \'simple_blog_category_id\') { \n $query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"seo_url WHERE `query` = \'\" . $this->db->escape($key . \'=\' . (int)$value) . \"\' AND store_id = \'\" . (int)$this->config->get(\'config_store_id\') . \"\' AND language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\"); \n \n if ($query->num_rows) { \n $url .= \'/\' . $query->row[\'keyword\']; \n unset($data[$key]); \n } \n } else if($data[\'route\'] == \'extension/simple_blog/search\') { \n if(isset($key) && ($key == \'blog_search\')) { \n $url .= \'/search&blog_search=\' . $value; \n } \n } else if(isset($data[\'route\']) && $data[\'route\'] == \'extension/simple_blog/article\' && $key != \'simple_blog_article_id\' && $key != \'simple_blog_author_id\' && $key != \'simple_blog_category_id\' && $key != \'page\') { \n if($this->config->has(\'simple_blog_seo_keyword\')) { \n $url .= \'/\' . $this->config->get(\'simple_blog_seo_keyword\'); \n } \n else { \n $url .= \'/simple-blog\'; \n } \n } elseif ($key == \'path\') { \n \n ]]></add> \n </operation> \n \n </file> \n \n <file path=\"catalog/controller/common/header.php\"> \n <!--changes for Blog--> \n <operation> \n <search><![CDATA[$categories = $this->model_catalog_category->getCategories(0);]]></search> \n <add position=\"after\"><![CDATA[ \n /***blog changes***/ \n $data[\'blog_link_status\'] = 1; \n $data[\'blog_link_url\'] = \'index.php?route=simple_blog/article\'; \n if(isset($this->request->get[\'route\'])) { \n $route = $this->request->get[\'route\']; \n } else { \n $route = \'common/home\'; \n } \n \n $route = explode(\"/\", $route); \n \n if($this->config->get(\'simple_blog_status\')) { \n $this->load->model(\'simple_blog/article\'); \n \n $count_blog_categories = $this->model_simple_blog_article->getTotalCategories(0); \n } \n \n if (isset($count_blog_categories) && $this->config->get(\'simple_blog_display_category\') && $this->config->get(\'simple_blog_status\')) { \n \n $categories = $this->model_simple_blog_article->getCategories(0); \n \n foreach ($categories as $category) { \n if ($category[\'top\']) { \n // Level 2 \n $children_data = array(); \n \n $children = $this->model_simple_blog_article->getCategories($category[\'simple_blog_category_id\']); \n \n foreach ($children as $child) { \n \n $article_total = $this->model_simple_blog_article->getTotalArticles($child[\'simple_blog_category_id\']); \n if ($child[\'image\']) { \n $this->load->model(\'tool/image\'); \n \n $image = $this->model_tool_image->resize($child[\'image\'], 205, 130); \n } else { \n $image = false; \n } \n \n $children_data[] = array( \n \'image\' => $image, \n \'external_link\' => $child[\'external_link\'], \n \'name\' => $child[\'name\'], \n \'href\' => $this->url->link(\'simple_blog/category\', \'simple_blog_category_id=\' . $category[\'simple_blog_category_id\'] . \'_\' . $child[\'simple_blog_category_id\']) \n ); \n } \n \n $menu_class = \'simple_blog\'; \n \n // Level 1 \n $data[\'categories\'][] = array( \n \'name\' => $category[\'name\'], \n \'external_link\' => $category[\'external_link\'], \n \'children\' => $children_data, \n \'menu_class\' => $menu_class, \n \'column\' => $category[\'blog_category_column\'] ? $category[\'blog_category_column\'] : 1, \n \'href\' => $this->url->link(\'simple_blog/category\', \'simple_blog_category_id=\' . $category[\'simple_blog_category_id\']) \n ); \n } \n } \n } \n $categories = $this->model_catalog_category->getCategories(0); \n /***end blog changes***/ \n ]]></add> \n </operation> \n </file> \n</modification> ',1,'2017-08-25 14:32:27'),(17,41,'So Tools','So-Tools','OpenCartWorks','1.1.1','http://www.opencartworks.com/','<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<modification>\n <name>So Tools</name>\n <code>So-Tools</code>\n <version>1.1.1</version>\n <author>OpenCartWorks</author>\n <link>http://www.opencartworks.com/</link>\n \n <file path=\"catalog/controller/product/product.php\">\n <operation>\n <search><![CDATA[$this->load->model(\'catalog/manufacturer\');]]></search>\n <add position=\"after\"><![CDATA[\n $so_recent_products = array();\n if (isset($this->request->cookie[\'sorecentproduct\'])) {\n $so_recent_products = explode(\',\', $this->request->cookie[\'sorecentproduct\']);\n } else if (isset($this->session->data[\'sorecentproduct\'])) {\n $so_recent_products = $this->session->data[\'sorecentproduct\'];\n }\n \n if (isset($this->request->get[\'route\']) && $this->request->get[\'route\'] == \'product/product\') {\n $product_id = $this->request->get[\'product_id\']; \n $so_recent_products = array_diff($so_recent_products, array($product_id));\n array_unshift($so_recent_products, $product_id);\n setcookie(\'sorecentproduct\', implode(\',\', $so_recent_products), time() + 60 * 60 * 24 * 30, \'/\', $this->request->server[\'HTTP_HOST\']);\n if (!isset($this->session->data[\'sorecentproduct\']) || $this->session->data[\'sorecentproduct\'] != $so_recent_products) {\n $this->session->data[\'sorecentproduct\'] = $so_recent_products;\n }\n }\n ]]></add>\n </operation>\n </file>\n\n</modification> ',1,'2017-09-04 13:48:52'),(18,43,'So Mobile - Opencart 3.x','so-mobile','OpenCartWorks','1.1.0','http://www.opencartworks.com/','<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<modification>\n <name><![CDATA[So Mobile - Opencart 3.x]]></name>\n <code>so-mobile</code>\n <version><![CDATA[1.1.0]]></version>\n <author><![CDATA[OpenCartWorks]]></author>\n <link>http://www.opencartworks.com/</link>\n \n <!--========Catalog/controller/common=============-->\n <file path=\"catalog/controller/common/home.php\">\n <operation >\n <search ><![CDATA[$this->response->setOutput($this->load->view(\'common/home\', $data));]]></search>\n <add position=\"replace\"><![CDATA[\n $soconfig = $this->soconfig;\n $platforms_mobile = $soconfig->get_settings(\'platforms_mobile\');\n if($this->session->data[\'device\']==\'mobile\' && $platforms_mobile) $this->response->redirect($this->url->link(\'extension/mobile/home\'));\n else $this->response->setOutput($this->load->view(\'common/home\', $data));\n ]]></add>\n </operation>\n </file>\n \n <file path=\"catalog/controller/common/header.php\">\n <operation >\n <search ><![CDATA[return $this->load->view(\'common/header\', $data)]]></search>\n <add position=\"before\"><![CDATA[\n $this->load->language(\'extension/soconfig/somobile\');\n $data[\'objlang\'] = $this->language;\n $data[\'lang_id\'] = $this->config->get(\'config_language_id\');\n $data[\'menu_search\'] = $this->url->link(\'product/search\', \'\', true);\n $data[\'mobile\'] = $this->soconfig;\n $http = $_SERVER[\"HTTPS\"] ? \'https://\' : \'http://\';\n $data[\'actual_link\'] = $http.\"$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]\";\n $data[\'text_items\'] = sprintf($this->language->get(\'text_itemcount\'), $this->cart->countProducts() + (isset($this->session->data[\'vouchers\']) ? count($this->session->data[\'vouchers\']) : 0));\n if($this->session->data[\'device\']==\'mobile\'){\n $data[\'home\'] = $this->url->link(\'extension/mobile/home\');\n }else{\n $data[\'home\'] = $this->url->link(\'common/home\');\n }\n \n ]]></add>\n </operation>\n </file>\n \n <file path=\"catalog/controller/common/footer.php\">\n <operation>\n <search ><![CDATA[return $this->load->view(\'common/footer\', $data); ]]></search>\n <add position=\"before\"><![CDATA[\n // Menu Mobile\n $this->load->model(\'catalog/category\');\n $this->load->model(\'catalog/product\');\n $this->load->language(\'extension/soconfig/somobile\');\n $data[\'objlang\'] = $this->language;\n $data[\'categories\'] = array();\n $data[\'mobile\'] = $this->soconfig;\n $data[\'lang_id\'] = $this->config->get(\'config_language_id\');\n $data[\'text_account\'] = $this->language->get(\'text_account\');\n $data[\'text_register\'] = $this->language->get(\'text_register\');\n $data[\'text_login\'] = $this->language->get(\'text_login\');\n \n $categories = $this->model_catalog_category->getCategories(0);\n \n \n foreach ($categories as $category) {\n if ($category[\'top\']) {\n // Level 2\n $children_data = array();\n\n $children = $this->model_catalog_category->getCategories($category[\'category_id\']);\n\n foreach ($children as $child) {\n $filter_data = array(\n \'filter_category_id\' => $child[\'category_id\'],\n \'filter_sub_category\' => true\n );\n\n $children_data[] = array(\n \'name\' => $child[\'name\'] . ($this->config->get(\'config_product_count\') ? \' (\' . $this->model_catalog_product->getTotalProducts($filter_data) . \')\' : \'\'),\n \'href\' => $this->url->link(\'product/category\', \'path=\' . $category[\'category_id\'] . \'_\' . $child[\'category_id\'])\n );\n }\n\n // Level 1\n $data[\'categories\'][] = array(\n \'name\' => $category[\'name\'],\n \'children\' => $children_data,\n \'column\' => $category[\'column\'] ? $category[\'column\'] : 1,\n \'href\' => $this->url->link(\'product/category\', \'path=\' . $category[\'category_id\'])\n );\n }\n }\n\n $data[\'language\'] = $this->load->controller(\'common/language\');\n $data[\'currency\'] = $this->load->controller(\'common/currency\');\n $data[\'search\'] = $this->load->controller(\'common/search\');\n $data[\'cart\'] = $this->load->controller(\'common/cart\');\n $data[\'wishlist\'] = $this->url->link(\'account/wishlist\', \'\', true);\n $data[\'compare\'] = $this->url->link(\'product/compare\', \'\', \'SSL\');\n $data[\'text_compare\'] = sprintf($this->language->get(\'text_compare\'),(isset($this->session->data[\'compare\']) ? count($this->session->data[\'compare\']) : 0));\n $data[\'logged\'] = $this->customer->isLogged();\n $data[\'account\'] = $this->url->link(\'account/account\', \'\', true);\n $data[\'register\'] = $this->url->link(\'account/register\', \'\', true);\n $data[\'login\'] = $this->url->link(\'account/login\', \'\', true);\n //Decodes HTML Entities\n $data[\'customfooter_text\'] = html_entity_decode($data[\'soconfig\']->get_settings(\'customfooter_text\'), ENT_QUOTES, \'UTF-8\');\n \n ]]></add>\n </operation>\n \n </file>\n <!--End Catalog/controller/common-->\n \n <!--Catalog/controller/product-->\n <file path=\"catalog/controller/product/category.php\">\n <operation>\n <search ><![CDATA[$data[\'heading_title\'] = $category_info[\'name\']]]></search>\n <add position=\"before\"><![CDATA[$data[\'mobile\'] =$this->soconfig;]]></add>\n </operation>\n </file>\n <file path=\"catalog/controller/product/{search,special,manufacturer}*.php\">\n <operation>\n <search ><![CDATA[$this->load->model(\'tool/image\')]]></search>\n <add position=\"after\"><![CDATA[$data[\'mobile\'] = $this->soconfig;]]></add>\n </operation> \n \n </file>\n \n <!--End Catalog/controller/product-->\n \n</modification> ',1,'2017-09-14 09:03:07'),(19,44,'So Color Swatch','So-color-swatch','OpenCartWorks','1.0.1','http://www.opencartworks.com/','<?xml version=\"1.0\" encoding=\"utf-8\"?> \n<modification> \n <name>So Color Swatch</name> \n <code>So-color-swatch</code> \n <version>1.0.1</version> \n <author>OpenCartWorks</author> \n <link>http://www.opencartworks.com/</link> \n \n <file path=\"admin/controller/catalog/product.php\"> \n <operation> \n <search><![CDATA[$data[\'layouts\'] = $this->model_design_layout->getLayouts();]]></search> \n <add position=\"before\"><![CDATA[ \n $data[\'entry_default_image_color\'] = $this->language->get(\'entry_default_image_color\'); \n $data[\'entry_color\'] = $this->language->get(\'entry_color\'); \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[$data[\'layouts\'] = $this->model_design_layout->getLayouts();]]></search> \n <add position=\"after\"><![CDATA[ \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $data[\'color_swatch\'] = $this->model_extension_module_so_color_swatches_pro->getColorSwatch(); \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[$data[\'product_images\']]]></search> \n <add position=\"before\"><![CDATA[ \n if(isset($product_image[\'default_of_color\'])){ \n $default_of_color = $product_image[\'default_of_color\']; \n }else{ \n $default_of_color = array(); \n } \n ]]></add> \n</operation> \n<operation> \n <search><![CDATA[\'sort_order\' => $product_image[\'sort_order\']]]></search> \n <add position=\"replace\"><![CDATA[ \n \'sort_order\' => $product_image[\'sort_order\'], \n \'default_of_color\' => $default_of_color, \n ]]></add> \n</operation> \n </file> \n <file path=\"admin/view/template/catalog/product_form.twig\"> \n <operation> \n <search><![CDATA[<td class=\"text-right\">{{ entry_sort_order }}</td>]]></search> \n <add position=\"before\"><![CDATA[ \n <td class=\"text-right\">{{ entry_default_image_color }}</td> \n ]]> \n </add> \n </operation> \n <operation> \n <search><![CDATA[<td class=\"text-right\"><input type=\"text\" name=\"product_image[{{ image_row }}][sort_order]\" value=\"{{ product_image.sort_order }}\" placeholder=\"{{ entry_sort_order }}\" class=\"form-control\" /></td>]]></search> \n <add position=\"before\"><![CDATA[ \n <td class=\"text-right\"> \n <select name=\"product_image[{{ image_row }}][default_of_color]\" class=\"default-color-selector\"> \n <option value=\"0\">----------</option> \n {% for color in color_swatch %} \n {% if color.option_value_id == product_image.default_of_color %} \n <option value=\"{{ color.option_value_id }}\" selected=\"selected\">{{ color.name }}</option> \n {% else %} \n <option value=\"{{ color.option_value_id }}\">{{ color.name }}</option> \n {% endif %} \n {% endfor %} \n </select> \n </td> \n ]]> \n </add> \n </operation> \n <operation> \n <search><![CDATA[{{ footer }}]]></search> \n <add position=\"before\"><![CDATA[ \n <script type=\"text/javascript\"><!-- \n jQuery(document).ready(function($){ \n $(\'.default-color-selector\').change(function(){ \n var value = $(this).val(); \n $(\'.default-color-selector\').not(this).each(function(){ \n if($(this).val()==value) \n $(this).val(\'0\'); \n }); \n }) \n }); \n //--></script> \n ]]></add> \n </operation> \n <operation> \n <search index=\"2\"><![CDATA[<td colspan=\"2\"></td>]]></search> \n <add position=\"replace\"><![CDATA[ \n <td colspan=\"3\"></td> \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[html += \' <td class=\"text-right\"><input type=\"text\" name=\"product_image[\' + image_row + \'][sort_order]\" value=\"\" placeholder=\"{{ entry_sort_order }}\" class=\"form-control\" /></td>\';]]></search> \n <add position=\"before\"><![CDATA[ \n html += \' <td class=\"text-right\">\'; \n html += \' <select name=\"product_image[\' + image_row + \'][default_of_color]\" class=\"default-color-selector\">\'; \n html += \' <option value=\"0\">----------</option>\'; \n {% for color in color_swatch %} \n html += \' <option value=\"{{ color.option_value_id }}>\">{{ color.name }}</option>\'; \n {% endfor %} \n html += \' </select>\'; \n html += \' </td>\'; \n ]]></add> \n </operation> \n </file> \n <file path=\"admin/model/catalog/product.php\"> \n <operation> \n <search><![CDATA[$this->db->query(\"INSERT INTO \" . DB_PREFIX . \"product_image SET product_id = \'\" . (int)$product_id . \"\', image = \'\" . $this->db->escape($product_image[\'image\']) . \"\', sort_order = \'\" . (int)$product_image[\'sort_order\'] . \"\'\");]]></search> \n <add position=\"replace\"><![CDATA[ \n if ($this->checkProductImageColumnExist()) { \n $this->db->query(\"INSERT INTO \" . DB_PREFIX . \"product_image SET product_id = \'\" . (int)$product_id . \"\', image = \'\" . $this->db->escape($product_image[\'image\']) . \"\', sort_order = \'\" . (int)$product_image[\'sort_order\'] . \"\', default_of_color = \'\". (int)$product_image[\'default_of_color\'] .\"\'\"); \n } \n else { \n $this->db->query(\"INSERT INTO \" . DB_PREFIX . \"product_image SET product_id = \'\" . (int)$product_id . \"\', image = \'\" . $this->db->escape($product_image[\'image\']) . \"\', sort_order = \'\" . (int)$product_image[\'sort_order\'] . \"\'\"); \n } \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[public function getTotalProductsByTaxClassId($tax_class_id) {]]></search> \n <add position=\"before\"><![CDATA[ \n public function checkProductImageColumnExist() { \n $sql = \"SHOW COLUMNS FROM \" .DB_PREFIX. \"product_image LIKE \'default_of_color\'\"; \n $query = $this->db->query($sql); \n return count($query->rows)>0 ? true : false; \n } \n ]]></add> \n </operation> \n </file> \n <file path=\"admin/language/*/catalog/product.php\"> \n <operation> \n <search><![CDATA[// Entry]]></search> \n <add position=\"after\"><![CDATA[ \n $_[\'entry_default_image_color\'] = \'Default Image For Color\'; \n $_[\'entry_color\'] = \'Color\'; \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/controller/product/category.php\"> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array(]]></search> \n <add position=\"before\"><![CDATA[ \n $option_data = array(); \n $image_data = array(); \n if ($this->config->get(\'module_so_color_swatches_pro_status\') && $this->config->get(\'module_so_color_swatches_pro_enable_product_list\')) { \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $data[\'width_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_width_product_list\'); \n if ($data[\'width_product_list\'] == 0) { \n $data[\'width_product_list\'] = 15; \n } \n $data[\'height_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_height_product_list\'); \n if ($data[\'height_product_list\'] == 0) { \n $data[\'height_product_list\'] = 15; \n } \n $data[\'colorswatch_type\'] = $this->config->get(\'module_so_color_swatches_pro_type\'); \n $this->document->addStyle(\'catalog/view/javascript/so_color_swatches_pro/css/style.css\'); \n \n $options = $this->model_extension_module_so_color_swatches_pro->getProductOptions($result[\'product_id\']); \n foreach ($options as $option) { \n $product_option_value_data = array(); \n foreach ($option[\'product_option_value\'] as $option_value) { \n if (!$option_value[\'subtract\'] || ($option_value[\'quantity\'] > 0)) { \n $p_image = $this->model_extension_module_so_color_swatches_pro->getProductImages($result[\'product_id\'], $option_value[\'option_value_id\']); \n if (isset($p_image[\'image\']) && $p_image[\'image\']) { \n $pimage = $this->model_tool_image->resize($p_image[\'image\'], $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_product_width\'), $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_product_height\')); \n } else { \n $pimage = \'\'; \n } \n if (isset($p_image[\'product_image_id\']) && $p_image[\'product_image_id\']) { \n $product_image_id = $p_image[\'product_image_id\']; \n } \n else { \n $product_image_id = \'\'; \n } \n $product_option_value_data[] = array( \n \'product_option_value_id\' => $option_value[\'product_option_value_id\'], \n \'option_value_id\' => $option_value[\'option_value_id\'], \n \'name\' => $option_value[\'name\'], \n \'image\' => $this->model_tool_image->resize($option_value[\'image\'], $data[\'width_product_list\'], $data[\'height_product_list\']), \n \'price\' => $price, \n \'price_prefix\' => $option_value[\'price_prefix\'], \n \'color_image\' => $pimage, \n \'product_image_id\' => $product_image_id \n ); \n } \n } \n $option_data[] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value\' => $product_option_value_data, \n \'option_id\' => $option[\'option_id\'], \n \'name\' => $option[\'name\'], \n \'type\' => $option[\'type\'], \n \'value\' => $option[\'value\'], \n \'required\' => $option[\'required\'] \n ); \n } \n } \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array]]></search> \n <add position=\"after\" trim=\"true\" offset=\"1\"><![CDATA[ \n \'option\' => $option_data, \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/controller/product/{search,manufacturer,special}*.php\"> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array(]]></search> \n <add position=\"before\"><![CDATA[ \n $option_data = array(); \n $image_data = array(); \n if ($this->config->get(\'module_so_color_swatches_pro_status\')) { \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $data[\'width_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_width_product_list\'); \n if ($data[\'width_product_list\'] == 0) { \n $data[\'width_product_list\'] = 15; \n } \n $data[\'height_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_height_product_list\'); \n if ($data[\'height_product_list\'] == 0) { \n $data[\'height_product_list\'] = 15; \n } \n $data[\'colorswatch_type\'] = $this->config->get(\'module_so_color_swatches_pro_type\'); \n $this->document->addStyle(\'catalog/view/javascript/so_color_swatches_pro/css/style.css\'); \n \n $options = $this->model_extension_module_so_color_swatches_pro->getProductOptions($result[\'product_id\']); \n foreach ($options as $option) { \n $product_option_value_data = array(); \n foreach ($option[\'product_option_value\'] as $option_value) { \n if (!$option_value[\'subtract\'] || ($option_value[\'quantity\'] > 0)) { \n $p_image = $this->model_extension_module_so_color_swatches_pro->getProductImages($result[\'product_id\'], $option_value[\'option_value_id\']); \n if (isset($p_image[\'image\']) && $p_image[\'image\']) { \n $pimage = $this->model_tool_image->resize($p_image[\'image\'], $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_product_width\'), $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_product_height\')); \n } else { \n $pimage = \'\'; \n } \n if (isset($p_image[\'product_image_id\']) && $p_image[\'product_image_id\']) { \n $product_image_id = $p_image[\'product_image_id\']; \n } \n else { \n $product_image_id = \'\'; \n } \n $product_option_value_data[] = array( \n \'product_option_value_id\' => $option_value[\'product_option_value_id\'], \n \'option_value_id\' => $option_value[\'option_value_id\'], \n \'name\' => $option_value[\'name\'], \n \'image\' => $this->model_tool_image->resize($option_value[\'image\'], $data[\'width_product_list\'], $data[\'height_product_list\']), \n \'price\' => $price, \n \'price_prefix\' => $option_value[\'price_prefix\'], \n \'color_image\' => $pimage, \n \'product_image_id\' => $product_image_id \n ); \n } \n } \n $option_data[] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value\' => $product_option_value_data, \n \'option_id\' => $option[\'option_id\'], \n \'name\' => $option[\'name\'], \n \'type\' => $option[\'type\'], \n \'value\' => $option[\'value\'], \n \'required\' => $option[\'required\'] \n ); \n } \n } \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array]]></search> \n <add position=\"after\" trim=\"true\" offset=\"1\"><![CDATA[ \n \'option\' => $option_data, \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/view/theme/*/template/product/{category,search,manufacturer,special}*.twig\"> \n <operation> \n <search><![CDATA[<img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-1 img-responsive\" />]]></search> \n <add position=\"replace\"><![CDATA[ \n <img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-responsive\" id=\"product-image-{{ product.product_id }}\" /> \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[<h4><a href=\"{{ product.href }}\">{{ product.name }} </a></h4>]]></search> \n <add position=\"after\"><![CDATA[ \n {% if product.option %} \n <ul class=\"so-productlist-colorswatch\" id=\"colorswatch-{{ product.product_id }}\"> \n {% for option in product.option %} \n {% if option.type == \'select\' %} \n {% for option_value in option.product_option_value %} \n <li class=\"colorswatch{{option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\"> \n <a href=\"javascript:void(0);\" title=\"{{ option_value.name }}\" style=\"width: {{ width_product_list }}px; height: {{ height_product_list }}px; background-image: url(\'{{ option_value.image }}\')\"></a> \n <script type=\"text/javascript\"> \n jQuery(document).ready(function($) { \n var $window_width = $(window).width(); \n {% if colorswatch_type == \'click\' %} \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n {% else %} \n if ($window_width > 1199) { \n $(\'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\').hover(function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n else { \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n {% endif %} \n }) \n </script> \n </li> \n {% endfor %} \n {% endif %} \n {% endfor %} \n </ul> \n {% endif %} \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/view/theme/*/template/soconfig/listing.twig\"> \n <operation> \n <search><![CDATA[<img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-1 img-responsive\" />]]></search> \n <add position=\"replace\"><![CDATA[ \n <img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-responsive\" id=\"product-image-{{ product.product_id }}\" /> \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[<h4><a href=\"{{ product.href }}\">{{ product.name }} </a></h4>]]></search> \n <add position=\"before\"><![CDATA[ \n {% if product.option %} \n <ul class=\"so-productlist-colorswatch\" id=\"colorswatch-{{ product.product_id }}\"> \n {% for option in product.option %} \n {% if option.type == \'select\' %} \n {% for option_value in option.product_option_value %} \n <li class=\"colorswatch{{option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\"> \n <a href=\"javascript:void(0);\" title=\"{{ option_value.name }}\" style=\"width: {{ width_product_list }}px; height: {{ height_product_list }}px; background-image: url(\'{{ option_value.image }}\')\"></a> \n <script type=\"text/javascript\"> \n jQuery(document).ready(function($) { \n var $window_width = $(window).width(); \n {% if colorswatch_type == \'click\' %} \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n {% else %} \n if ($window_width > 1199) { \n $(\'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\').hover(function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n else { \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n {% endif %} \n }) \n </script> \n </li> \n {% endfor %} \n {% endif %} \n {% endfor %} \n </ul> \n {% endif %} \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/controller/product/product.php\"> \n <operation> \n <search><![CDATA[$data[\'products\'] = array();]]></search> \n <add position=\"before\"><![CDATA[ \n $data[\'option_data\'] = array(); \n if ($this->config->get(\'module_so_color_swatches_pro_status\') && $this->config->get(\'module_so_color_swatches_pro_enable_product_page\')) { \n $data[\'width_product_page\'] = $this->config->get(\'module_so_color_swatches_pro_width_product_page\'); \n if ($data[\'width_product_page\'] == 0) { \n $data[\'width_product_page\'] = 20; \n } \n $data[\'height_product_page\'] = $this->config->get(\'module_so_color_swatches_pro_height_product_page\'); \n if ($data[\'height_product_page\'] == 0) { \n $data[\'height_product_page\'] = 20; \n } \n $data[\'colorswatch_type\'] = $this->config->get(\'module_so_color_swatches_pro_type\'); \n $this->document->addStyle(\'catalog/view/javascript/so_color_swatches_pro/css/style.css\'); \n \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $option_selected = $this->config->get(\'module_so_color_swatches_pro_option\'); \n $product_option = $this->model_extension_module_so_color_swatches_pro->getProductOptionsByOptionId($this->request->get[\'product_id\'], $option_selected); \n if ($product_option) { \n $data[\'product_option_id\'] = $product_option[\'product_option_id\']; \n } \n $data[\'option_selected\'] = $option_selected; \n \n $options = $this->model_extension_module_so_color_swatches_pro->getProductOptions($this->request->get[\'product_id\']); \n foreach ($options as $option) { \n $product_option_value_data = array(); \n foreach ($option[\'product_option_value\'] as $option_value) { \n if (!$option_value[\'subtract\'] || ($option_value[\'quantity\'] > 0)) { \n $p_image = $this->model_extension_module_so_color_swatches_pro->getProductImages($result[\'product_id\'], $option_value[\'option_value_id\']); \n if (isset($p_image[\'image\']) && $p_image[\'image\']) { \n $pimage = $this->model_tool_image->resize($p_image[\'image\'], $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_popup_width\'), $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_popup_height\')); \n $p_thumbimage = $this->model_tool_image->resize($p_image[\'image\'], $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_thumb_width\'), $this->config->get(\'theme_\'.$this->config->get(\'config_theme\') . \'_image_thumb_height\')); \n } else { \n $pimage = \'\'; \n $p_thumbimage = \'\'; \n } \n if (isset($p_image[\'product_image_id\']) && $p_image[\'product_image_id\']) { \n $product_image_id = $p_image[\'product_image_id\']; \n } \n else { \n $product_image_id = \'\'; \n } \n $product_option_value_data[] = array( \n \'product_option_value_id\' => $option_value[\'product_option_value_id\'], \n \'option_value_id\' => $option_value[\'option_value_id\'], \n \'name\' => $option_value[\'name\'], \n \'image\' => $this->model_tool_image->resize($option_value[\'image\'], $data[\'width_product_page\'], $data[\'height_product_page\']), \n \'price\' => $price, \n \'price_prefix\' => $option_value[\'price_prefix\'], \n \'color_image\' => $pimage, \n \'color_thumb_image\' => $p_thumbimage, \n \'product_image_id\' => $product_image_id \n ); \n } \n } \n $data[\'option_data\'][] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value\' => $product_option_value_data, \n \'option_id\' => $option[\'option_id\'], \n \'name\' => $option[\'name\'], \n \'type\' => $option[\'type\'], \n \'value\' => $option[\'value\'], \n \'required\' => $option[\'required\'] \n ); \n } \n } \n $data[\'option_data\'] = array_shift($data[\'option_data\']); \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/view/theme/*/template/product/product.twig\"> \n <operation> \n <search><![CDATA[<h3>{{ text_option }}</h3>]]></search> \n <add position=\"after\"><![CDATA[ \n {% if option_data and option_data.product_option_value is defined and option_data.product_option_value %} \n <ul id=\"so-colorswatch-selector-{{ product_id }}\" class=\'so-colorswatch-productpage-icons\'> \n {% for option_value in option_data.product_option_value %} \n <li class=\"option-item\"> \n <a class=\"\" \n data-product-option-value-id=\"{{ option_value.product_option_value_id }}\" \n data-option-value-id=\"{{ option_value.option_value_id }}\" \n data-color-image=\"{{ option_value.color_image }}\" \n data-color-thumb-image=\"{{ option_value.color_thumb_image }}\" \n style=\"width: {{ width_product_page }}px; height: {{ height_product_page }}px; background-image: url(\'{{ option_value.image }}\')\"> \n </a> \n </li> \n {% endfor %} \n <li class=\"selected-option\"><span></span></li> \n </ul> \n <script type=\"text/javascript\"> \n var $window_width = $(window).width(); \n var ProductOptionId = \'{{ product_option_id }}\'; \n var default_image = $(\'.large-image img\').attr(\'src\'); \n jQuery(document).ready(function($) { \n $(\'#input-option{{ product_option_id }}\').parent().hide(); \n \n $(\'#input-option{{ product_option_id}} option\').each(function(){ \n var text = $(this).text().replace(/\\s{2,}/g, \' \'); \n var val = $(this).attr(\'value\'); \n $(\'.so-colorswatch-productpage-icons li a\').each(function(index, el){ \n if($(el).data(\'product-option-value-id\')== val){ \n $(el).attr(\'title\', text); \n } \n }) \n }) \n \n {% if colorswatch_type == \'click\' %} \n $(document).on(\'click\', \'.so-colorswatch-productpage-icons li.option-item\', function(e){ \n e.preventDefault(); \n var option_value_id = $(this).children(\'a\').data(\'product-option-value-id\'); \n var option_id = $(this).children(\'a\').data(\'option-value-id\'); \n \n if ($(this).hasClass(\'checked\')) { \n $(\'.so-colorswatch-productpage-icons li.option-item\').removeClass(\'checked\'); \n $(this).removeClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(\'\').trigger(\'change\'); \n $(\'.so-colorswatch-productpage-icons li.selected-option > span\').html(\'\'); \n \n $(\'.large-image img\').attr(\'src\', default_image); \n } \n else { \n $(\'.so-colorswatch-productpage-icons li.option-item\').removeClass(\'checked\'); \n $(this).removeClass(\'checked\').addClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(option_value_id).trigger(\'change\'); \n $(\'.so-colorswatch-productpage-icons li.selected-option > span\').html($(this).children(\'a\').attr(\'title\')); \n \n if ($(this).children(\'a\').data(\'color-image\') != \'\') { \n $(\'.large-image img\').attr(\'src\', $(this).children(\'a\').data(\'color-image\')); \n } \n else { \n $(\'.large-image img\').attr(\'src\', default_image); \n } \n if ($(this).children(\'a\').data(\'color-thumb-image\') != \'\') { \n $(\'#thumb-slider ul li a.thumbnail\').removeClass(\'active\'); \n $( \'#thumb-slider ul li a.thumbnail img[ src=\"\'+$(this).children(\'a\').data(\'color-thumb-image\')+\'\" ]\' ).parent(\'a\').addClass(\'active\'); \n } \n else { \n $(\'#thumb-slider ul li a.thumbnail\').removeClass(\'active\'); \n $(\'#thumb-slider ul li:first-child a.thumbnail\').addClass(\'active\'); \n } \n } \n }) \n {% else %} \n if ($window_width > 1199) { \n $(\'.so-colorswatch-productpage-icons li.option-item\').hover(function(e){ \n e.preventDefault(); \n var option_value_id = $(this).children(\'a\').data(\'product-option-value-id\'); \n var option_id = $(this).children(\'a\').data(\'option-value-id\'); \n \n $(\'.so-colorswatch-productpage-icons li.option-item\').removeClass(\'checked\'); \n if ($(this).hasClass(\'checked\')) { \n $(this).removeClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(\'\').trigger(\'change\'); \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', default_image); \n } \n else { \n $(this).removeClass(\'checked\').addClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(option_value_id).trigger(\'change\'); \n $(\'.so-colorswatch-productpage-icons li.selected-option > span\').html($(this).children(\'a\').attr(\'title\')); \n \n if ($(this).data(\'color-image\') != \'\') { \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', $(this).children(\'a\').data(\'color-image\')); \n } \n else { \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', default_image); \n } \n } \n }); \n } \n else { \n $(document).on(\'click\', \'.so-colorswatch-productpage-icons li.option-item\', function(e){ \n e.preventDefault(); \n var option_value_id = $(this).children(\'a\').data(\'product-option-value-id\'); \n var option_id = $(this).children(\'a\').data(\'option-value-id\'); \n \n if ($(this).hasClass(\'checked\')) { \n $(\'.so-colorswatch-productpage-icons li.option-item\').removeClass(\'checked\'); \n $(this).removeClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(\'\').trigger(\'change\'); \n $(\'.so-colorswatch-productpage-icons li.selected-option > span\').html(\'\'); \n \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', default_image); \n } \n else { \n $(\'.so-colorswatch-productpage-icons li.option-item\').removeClass(\'checked\'); \n $(this).removeClass(\'checked\').addClass(\'checked\'); \n $(\'#input-option{{ product_option_id }}\').val(option_value_id).trigger(\'change\'); \n $(\'.so-colorswatch-productpage-icons li.selected-option > span\').html($(this).children(\'a\').attr(\'title\')); \n \n if ($(this).data(\'color-image\') != \'\') { \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', $(this).children(\'a\').data(\'color-image\')); \n } \n else { \n $(\'ul.thumbnails li:not(.image-additional) a.thumbnail img\').attr(\'src\', default_image); \n } \n } \n }) \n } \n {% endif %} \n }) \n </script> \n {% endif %} \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[var element = $(\'#input-option\' + i.replace(\'_\', \'-\'));]]></search> \n <add position=\"after\"><![CDATA[ \n {% if option_data %} \n if(ProductOptionId != undefined && ProductOptionId==i.replace(\'_\', \'-\')){ \n $(\'.so-colorswatch-productpage-icons\').after(\'<div class=\"text-danger\">\' + json[\'error\'][\'option\'][i] + \'</div>\'); \n } \n {% endif %} \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/controller/extension/module/featured.php\"> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array(]]></search> \n <add position=\"before\"><![CDATA[ \n $option_data = array(); \n $image_data = array(); \n if ($this->config->get(\'module_so_color_swatches_pro_status\')) { \n $data[\'color_swatch_status\'] = $this->config->get(\'module_so_color_swatches_pro_status\'); \n $data[\'enable_product_list\'] = $this->config->get(\'module_so_color_swatches_pro_enable_product_list\'); \n $data[\'width_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_width_product_list\'); \n if ($data[\'width_product_list\'] == 0) { \n $data[\'width_product_list\'] = 15; \n } \n $data[\'height_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_height_product_list\'); \n if ($data[\'height_product_list\'] == 0) { \n $data[\'height_product_list\'] = 15; \n } \n $data[\'colorswatch_type\'] = $this->config->get(\'module_so_color_swatches_pro_type\'); \n $this->document->addStyle(\'catalog/view/javascript/so_color_swatches_pro/css/style.css\'); \n \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $options = $this->model_extension_module_so_color_swatches_pro->getProductOptions($product_info[\'product_id\']); \n foreach ($options as $option) { \n $product_option_value_data = array(); \n foreach ($option[\'product_option_value\'] as $option_value) { \n if (!$option_value[\'subtract\'] || ($option_value[\'quantity\'] > 0)) { \n $p_image = $this->model_extension_module_so_color_swatches_pro->getProductImages($product_info[\'product_id\'], $option_value[\'option_value_id\']); \n if (isset($p_image[\'image\']) && $p_image[\'image\']) { \n $pimage = $this->model_tool_image->resize($p_image[\'image\'], $setting[\'width\'], $setting[\'height\']); \n } else { \n $pimage = \'\'; \n } \n if (isset($p_image[\'product_image_id\']) && $p_image[\'product_image_id\']) { \n $product_image_id = $p_image[\'product_image_id\']; \n } \n else { \n $product_image_id = \'\'; \n } \n $product_option_value_data[] = array( \n \'product_option_value_id\' => $option_value[\'product_option_value_id\'], \n \'option_value_id\' => $option_value[\'option_value_id\'], \n \'name\' => $option_value[\'name\'], \n \'image\' => $this->model_tool_image->resize($option_value[\'image\'], $data[\'width_product_list\'], $data[\'height_product_list\']), \n \'price\' => $price, \n \'price_prefix\' => $option_value[\'price_prefix\'], \n \'color_image\' => $pimage, \n \'product_image_id\' => $product_image_id \n ); \n } \n } \n $option_data[] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value\' => $product_option_value_data, \n \'option_id\' => $option[\'option_id\'], \n \'name\' => $option[\'name\'], \n \'type\' => $option[\'type\'], \n \'value\' => $option[\'value\'], \n \'required\' => $option[\'required\'] \n ); \n } \n } \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[\'product_id\' => $product_info[\'product_id\'],]]></search> \n <add position=\"after\"><![CDATA[ \n \'option\' => $option_data, \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/controller/extension/module/{bestseller,latest,special}*.php\"> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array(]]></search> \n <add position=\"before\"><![CDATA[ \n $option_data = array(); \n $image_data = array(); \n if ($this->config->get(\'module_so_color_swatches_pro_status\')) { \n $data[\'color_swatch_status\'] = $this->config->get(\'module_so_color_swatches_pro_status\'); \n $data[\'enable_product_list\'] = $this->config->get(\'module_so_color_swatches_pro_enable_product_list\'); \n $data[\'width_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_width_product_list\'); \n if ($data[\'width_product_list\'] == 0) { \n $data[\'width_product_list\'] = 15; \n } \n $data[\'height_product_list\'] = (int)$this->config->get(\'module_so_color_swatches_pro_height_product_list\'); \n if ($data[\'height_product_list\'] == 0) { \n $data[\'height_product_list\'] = 15; \n } \n $data[\'colorswatch_type\'] = $this->config->get(\'module_so_color_swatches_pro_type\'); \n $this->document->addStyle(\'catalog/view/javascript/so_color_swatches_pro/css/style.css\'); \n \n $this->load->model(\'extension/module/so_color_swatches_pro\'); \n $options = $this->model_extension_module_so_color_swatches_pro->getProductOptions($result[\'product_id\']); \n foreach ($options as $option) { \n $product_option_value_data = array(); \n foreach ($option[\'product_option_value\'] as $option_value) { \n if (!$option_value[\'subtract\'] || ($option_value[\'quantity\'] > 0)) { \n $p_image = $this->model_extension_module_so_color_swatches_pro->getProductImages($result[\'product_id\'], $option_value[\'option_value_id\']); \n if (isset($p_image[\'image\']) && $p_image[\'image\']) { \n $pimage = $this->model_tool_image->resize($p_image[\'image\'], $setting[\'width\'], $setting[\'height\']); \n } else { \n $pimage = \'\'; \n } \n if (isset($p_image[\'product_image_id\']) && $p_image[\'product_image_id\']) { \n $product_image_id = $p_image[\'product_image_id\']; \n } \n else { \n $product_image_id = \'\'; \n } \n $product_option_value_data[] = array( \n \'product_option_value_id\' => $option_value[\'product_option_value_id\'], \n \'option_value_id\' => $option_value[\'option_value_id\'], \n \'name\' => $option_value[\'name\'], \n \'image\' => $this->model_tool_image->resize($option_value[\'image\'], $data[\'width_product_list\'], $data[\'height_product_list\']), \n \'price\' => $price, \n \'price_prefix\' => $option_value[\'price_prefix\'], \n \'color_image\' => $pimage, \n \'product_image_id\' => $product_image_id \n ); \n } \n } \n $option_data[] = array( \n \'product_option_id\' => $option[\'product_option_id\'], \n \'product_option_value\' => $product_option_value_data, \n \'option_id\' => $option[\'option_id\'], \n \'name\' => $option[\'name\'], \n \'type\' => $option[\'type\'], \n \'value\' => $option[\'value\'], \n \'required\' => $option[\'required\'] \n ); \n } \n } \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[$data[\'products\'][] = array]]></search> \n <add position=\"after\" trim=\"true\" offset=\"1\"><![CDATA[ \n \'option\' => $option_data, \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/view/theme/*/template/extension/module/{featured,bestseller,latest,special}*.twig\"> \n <operation> \n <search><![CDATA[<img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-responsive\" />]]></search> \n <add position=\"replace\"><![CDATA[ \n <img src=\"{{ product.thumb }}\" alt=\"{{ product.name }}\" title=\"{{ product.name }}\" class=\"img-responsive\" id=\"product-image-{{ product.product_id }}\" /> \n ]]></add> \n </operation> \n <operation> \n <search><![CDATA[<h4><a href=\"{{ product.href }}\">{{ product.name }}</a></h4>]]></search> \n <add position=\"after\"><![CDATA[ \n {% if product.option %} \n <ul class=\"so-productlist-colorswatch\" id=\"colorswatch-{{ product.product_id }}\"> \n {% for option in product.option %} \n {% if option.type == \'select\' %} \n {% for option_value in option.product_option_value %} \n <li class=\"colorswatch{{option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\"> \n <a href=\"javascript:void(0);\" title=\"{{ option_value.name }}\" style=\"width: {{ width_product_list }}px; height: {{ height_product_list }}px; background-image: url(\'{{ option_value.image }}\')\"></a> \n <script type=\"text/javascript\"> \n jQuery(document).ready(function($) { \n var $window_width = $(window).width(); \n {% if colorswatch_type == \'click\' %} \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n {% else %} \n if ($window_width > 1199) { \n $(\'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\').hover(function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n else { \n $(document).on(\'click\', \'.so-productlist-colorswatch li.colorswatch{{ option_value.product_option_value_id~option_value.option_value_id~product.product_id }}\', function(e) { \n e.preventDefault(); \n {% if option_value.color_image %} \n jQuery(\'img#product-image-{{product.product_id }}\').attr(\'src\', \'{{ option_value.color_image }}\'); \n {% endif %} \n \n $(\'.so-productlist-colorswatch li\').removeClass(\'actived\'); \n $(this).removeClass(\'actived\').addClass(\'actived\'); \n }); \n } \n {% endif %} \n }) \n </script> \n </li> \n {% endfor %} \n {% endif %} \n {% endfor %} \n </ul> \n {% endif %} \n ]]></add> \n </operation> \n </file> \n \n</modification> ',1,'2017-09-21 16:00:53'),(20,0,'Bug Fixing OC-3.x','ocmod-bugfix','OpencartWorks','3.0.0','http://www.OpencartWorks.com','<?xml version=\"1.0\" encoding=\"utf-8\"?> \n<modification> \n <name><![CDATA[Bug Fixing OC-3.x]]></name> \n <code>ocmod-bugfix</code> \n <version><![CDATA[3.0.0]]></version> \n <author><![CDATA[OpencartWorks]]></author> \n <link>http://www.OpencartWorks.com</link> \n \n \n \n <!--========Catalog/controller/common=============--> \n <file path=\"catalog/controller/information/contact.php\"> \n <operation > \n <search ><![CDATA[$this->load->language(\'information/contact\')]]></search> \n <add position=\"after\"><![CDATA[ \n $data[\'text_message\'] = $this->language->get(\'text_success\'); \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/language/*/common/cart.php\"> \n <operation > \n <search ><![CDATA[$_[\'text_empty\']]]></search> \n <add position=\"replace\"><![CDATA[ \n $_[\'text_empty_cart\'] \n ]]></add> \n </operation> \n </file> \n <file path=\"catalog/view/theme/*/template/common/cart.twig\"> \n <operation > \n <search ><![CDATA[text_empty]]></search> \n <add position=\"replace\"><![CDATA[ \n text_empty_cart \n ]]></add> \n </operation> \n </file> \n</modification> \n  ',1,'2017-10-24 11:44:00'),(21,11,'Export/Import Pro Easy (V3.20) for OpenCart 3.x','Export/Import Pro Easy (V3.20) for OpenCart 3.x','http://opencartlabs.net/','3.x-3.20 PHP 7.2 or higher','http://opencartlabs.net/','<modification>\n	<name>Export/Import Pro Easy (V3.20) for OpenCart 3.x</name>\n	<code>Export/Import Pro Easy (V3.20) for OpenCart 3.x</code>\n	<version>3.x-3.20 PHP 7.2 or higher</version>\n	<author>http://opencartlabs.net/</author>\n	<link>http://opencartlabs.net/</link>\n	\n	\n	<file path=\"admin/controller/common/column_left.php\">\n		<operation>\n			<search><![CDATA[// Design]]></search>\n			<add position=\"before\"><![CDATA[\n			$data[\'menus\'][] = array(\n				\'id\'       => \'\',\n				\'name\'	   => $this->language->get(\'text_export_import\'),\n				\'icon\'	   => \'fa-edit\', \n				\'href\'     => $this->url->link(\'extension/export_import\', \'user_token=\' . $this->session->data[\'user_token\'], true),\n				\'children\' => array()		\n			);\n			\n			]]></add>\n		</operation>\n	</file>\n	<file path=\"admin/language/*/common/column_left.php\">\n		<operation>\n			<search><![CDATA[$_[\'text_backup\']]]></search>\n			<add position=\"after\"><![CDATA[\n$_[\'text_export_import\']             = \'Export / Import\';\n			]]></add>\n		</operation>\n	</file>\n</modification>\n',1,'2021-02-03 08:11:19'),(22,13,'<b style=\"color:#4170bd\">ADV Products Report</b>','adv_products_report','ADV Reports and Statistics','<b style=\"color:#4170bd\">4.4</b>','http://www.opencartreports.com','<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<modification>\r\n	<name><![CDATA[<b style=\"color:#4170bd\">ADV Products Report</b>]]></name>\r\n	<version><![CDATA[<b style=\"color:#4170bd\">4.4</b>]]></version>\r\n	<code>adv_products_report</code>\r\n	<link>http://www.opencartreports.com</link>\r\n	<author>ADV Reports and Statistics</author>	\r\n	\r\n	<file path=\"admin/controller/common/column_left.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n$report = array();\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n			if ($this->user->hasPermission(\'access\', \'extension/report/adv_products\')) {\r\n				$report[] = array(\r\n					\'name\'	   => $this->language->get(\'text_report_adv_products\'),\r\n					\'href\'     => $this->url->link(\'extension/report/adv_products\', \'user_token=\' . $this->session->data[\'user_token\'], true),\r\n					\'children\' => array()\r\n				);\r\n			}				\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n\r\n	<file path=\"admin/language/*/common/column_left.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n<?php\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n$_[\'text_report_adv_products\']    				= \'ADV Products\';\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n			\r\n	<file path=\"admin/controller/extension/module/adv_reports_products.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\npublic function index() {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n$data[\'adv_current_version\'] = \'4.4\';\r\n            ]]></add>\r\n        </operation>	\r\n        <operation>\r\n            <search><![CDATA[\r\n$this->document->setTitle($this->language->get(\'heading_title_main\'));\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		$data[\'adv_text_ext_name\'] = $this->language->get(\'adv_text_ext_name\');\r\n		$data[\'adv_ext_name\'] = $this->language->get(\'adv_ext_name\');\r\n		$data[\'adv_ext_short_name\'] = \'adv_products\';\r\n		$data[\'adv_text_instal_version\'] = $this->language->get(\'adv_text_instal_version\');\r\n		$data[\'adv_text_latest_version\'] = $this->language->get(\'adv_text_latest_version\');\r\n		$data[\'adv_ext_version\'] = $this->language->get(\'adv_ext_version\');\r\n		$data[\'adv_ext_type\'] = $this->language->get(\'adv_ext_type\');\r\n		$data[\'adv_text_ext_compatibility\'] = $this->language->get(\'adv_text_ext_compatibility\');\r\n		$data[\'adv_ext_compatibility\'] = $this->language->get(\'adv_ext_compatibility\');\r\n		$data[\'adv_text_ext_url\'] = $this->language->get(\'adv_text_ext_url\');\r\n		$data[\'adv_ext_url\'] = \'https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=3688\';\r\n		$data[\'adv_all_ext_url\'] = \'https://www.opencart.com/index.php?route=marketplace/extension&filter_member=cmerry\';\r\n		$data[\'adv_help_url\'] = \'http://www.opencartreports.com/documentation/pp/index.html#support\';\r\n		$data[\'adv_legal_notice_url\'] = \'http://www.opencartreports.com/documentation/pp/index.html#terms\';		\r\n		$data[\'adv_text_reg_info\'] = $this->language->get(\'adv_text_reg_info\');\r\n		$data[\'adv_text_reg_status\'] = $this->language->get(\'adv_text_reg_status\');\r\n		$data[\'adv_text_ext_support\'] = $this->language->get(\'adv_text_ext_support\');\r\n		$data[\'adv_ext_support\'] = $this->language->get(\'adv_ext_support\');\r\n		$data[\'adv_ext_subject\'] = sprintf($this->language->get(\'adv_ext_subject\'), $this->language->get(\'adv_ext_name\'));\r\n		$data[\'adv_text_ext_legal\'] = $this->language->get(\'adv_text_ext_legal\');	\r\n		$data[\'adv_text_copyright\'] = $this->language->get(\'adv_text_copyright\');\r\n		$data[\'auth\'] = TRUE;\r\n		$data[\'ldata\'] = FALSE;		\r\n		$data[\'servers\'] = \'\';	\r\n            ]]></add>\r\n        </operation>	\r\n        <operation>\r\n            <search><![CDATA[\r\n$this->response->setOutput($this->load->view(\'extension/module/adv_reports_products\', $data));\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		$adv_check = curl_init();\r\n 		     // Set URL to download\r\n		curl_setopt($adv_check, CURLOPT_URL,\"http://opencartreports.com/version/adv_pp_version.xml\");\r\n 		    // Include header in result? (0 = yes, 1 = no)\r\n		curl_setopt($adv_check, CURLOPT_HEADER, 0);\r\n     		// Should cURL return or print out the data? (true = return, false = print)\r\n		curl_setopt($adv_check, CURLOPT_RETURNTRANSFER, true);\r\n 		    // Timeout in seconds\r\n		curl_setopt($adv_check, CURLOPT_TIMEOUT, 10);\r\n 		    // Download the given URL, and return output\r\n		$adv_output = curl_exec($adv_check);\r\n    		// Close the cURL resource, and free system resources\r\n 		curl_close($adv_check);\r\n		$adv_analyse = simplexml_load_string($adv_output,null);\r\n		if ($adv_output != FALSE) {				\r\n		$data[\'version\'] = $adv_analyse->children()->version;\r\n		$data[\'whats_new\'] = html_entity_decode(str_replace(\"@@@\",\"<br>\",$adv_analyse->children()->whats_new), ENT_QUOTES, \"UTF-8\");\r\n		}\r\n            ]]></add>\r\n        </operation>			\r\n	</file>	\r\n\r\n	<file path=\"admin/controller/extension/extension/module.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n$extensions = $this->model_setting_extension->getInstalled(\'module\');\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		if (isset($this->session->data[\'error_pp\'])) {\r\n			$data[\'error_warning\'] = $this->session->data[\'error_pp\'];\r\n\r\n			unset($this->session->data[\'error_pp\']);\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n	\r\n	<file path=\"admin/language/*/extension/module/adv_reports_products.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n<?php\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n$_[\'adv_text_ext_name\']					= \'Extension name:\';\r\n$_[\'adv_ext_name\']						= \'ADV Products Report\';\r\n$_[\'adv_text_instal_version\']			= \'Installed version:\';\r\n$_[\'adv_text_latest_version\']			= \'Latest version:\';\r\n$_[\'adv_ext_version\']					= \'4.4\';\r\n$_[\'adv_ext_type\']						= \'OCMod\';\r\n$_[\'adv_text_ext_compatibility\']		= \'Extension compatibility:\';\r\n$_[\'adv_ext_compatibility\']				= \'OpenCart v3.0.2.x, v3.0.3.x\';\r\n$_[\'adv_text_ext_url\']					= \'Extension URL:\';\r\n$_[\'adv_text_ext_support\']				= \'Extension support:\';\r\n$_[\'adv_text_reg_status\']				= \'License status:\';\r\n$_[\'adv_text_reg_info\']					= \'License data:\';\r\n$_[\'adv_ext_support\']					= \'opencart.reports@gmail.com\';\r\n$_[\'adv_ext_subject\']      				= \'%s support needed\';\r\n$_[\'adv_text_ext_legal\']				= \'Extension legal notice:\';\r\n$_[\'adv_text_copyright\']				= \'ADV Reports &amp; Statistics &copy; 2011-\' . date(\'Y\');\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n		\r\n	<file path=\"admin/view/template/extension/module/adv_reports_products.tpl\">\r\n        <operation>\r\n            <search><![CDATA[\r\n<div class=\"panel-body\">\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[<?php if (file_exists(DIR_APPLICATION . \'model/extension/module/adv_settings.php\')) { include(DIR_APPLICATION . \'model/extension/module/adv_settings.php\'); } ?><?php if (!$ldata) { include(DIR_APPLICATION . \'view/image/adv_reports/line.png\'); } ?>]]></add>\r\n        </operation>		\r\n        <operation>\r\n            <search><![CDATA[\r\n<div id=\"adv_products\"></div>\r\n            ]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n	<div style=\"background-color:#edf6ff; border:thin solid #69F; margin-bottom:10px;\">\r\n      <table class=\"table table-bordered\">\r\n       <tr>\r\n        <td style=\"width:20%;\"><?php echo $adv_text_ext_name; ?></td>\r\n        <td style=\"width:80%;\"><span style=\"font-size:small; font-weight:bold;\"><?php echo $adv_ext_name; ?></span></td>\r\n       </tr>\r\n       <tr>\r\n        <td><?php echo $adv_text_instal_version; ?></td>\r\n        <td><b><?php echo $adv_ext_version; ?></b> [ <?php echo $adv_ext_type; ?> ]</td>\r\n       </tr>\r\n<?php if ($version) { ?>\r\n<?php if ($version != $adv_current_version) { ?>  \r\n       <tr>\r\n        <td><span style=\"color:red\"><strong><?php echo $adv_text_latest_version; ?></strong></span></td>\r\n        <td><div id=\"adv_new_version\"></div> <div id=\"adv_what_is_new\"></div></td>\r\n       </tr>	\r\n<?php } ?>\r\n<?php } ?>\r\n       <tr>\r\n        <td><?php echo $adv_text_ext_compatibility; ?></td>\r\n        <td><?php echo $adv_ext_compatibility; ?></td>\r\n       </tr>\r\n       <tr>\r\n        <td><?php echo $adv_text_ext_url; ?></td>\r\n        <td><span class=\"wrap-url\"><a href=\"<?php echo $adv_ext_url; ?>\" target=\"_blank\"><?php echo $adv_ext_url ?></a></span><br />\r\n		  <label class=\"control-label\">We would appreciate it very much if you could rate the extension once you\'ve had a chance to try it out. Why not tell everybody how great this extension is by leaving a comment as well.</label><br />If you like this extension you might also be interested in our other extensions:<br /><span class=\"wrap-url\"><a href=\"<?php echo $adv_all_ext_url; ?>\" target=\"_blank\"><?php echo $adv_all_ext_url ?></a></span>\r\n		  </td>\r\n       </tr>\r\n        <td><?php echo $adv_text_ext_support; ?></td>\r\n        <td>\r\n          <a href=\"mailto:<?php echo $adv_ext_support; ?>?subject=<?php echo $adv_ext_subject; ?>\" target=\"_blank\"><?php echo $adv_ext_support; ?></a>&nbsp;&nbsp;|&nbsp;&nbsp;\r\n          <a href=\"<?php echo $adv_help_url; ?>\" target=\"_blank\"><i class=\"fa fa-exclamation-triangle fa-lg\" aria-hidden=\"true\"></i> <?php echo $text_asking_help; ?></a>\r\n        </td>\r\n       </tr>\r\n<?php if ($servers) { ?>\r\n       <tr>\r\n        <td><?php echo $adv_text_reg_status; ?></td>\r\n        <td><?php echo $lstatus; ?></td>\r\n       </tr>	\r\n<?php if ($llicense) { ?>	   	   	   \r\n       <tr>\r\n        <td><?php echo $adv_text_reg_info; ?></td>\r\n        <td><?php echo $llicense; ?><?php echo $ldomain; ?></td>\r\n       </tr>		    \r\n<?php } ?>\r\n<?php } ?>	   \r\n       <tr>\r\n        <td><?php echo $adv_text_ext_legal; ?></td>\r\n        <td><?php echo $adv_text_copyright; ?>&nbsp;&nbsp;|&nbsp;&nbsp;\r\n          <a href=\"<?php echo $adv_legal_notice_url; ?>\" target=\"_blank\"><?php echo $text_terms; ?></a><br />\r\n		  <label class=\"control-label\">Please be aware that this product has a per-domain license, meaning you can use it only on a single domain. You will need to purchase a separate license for each domain you wish to use this extension on.</label>\r\n		</td>\r\n       </tr>\r\n      </table>\r\n	 </div>\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n<?php echo $footer; ?>\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[			\r\n<?php if ($version) { ?>\r\n<?php if ($version != $adv_current_version) { ?>   \r\n<script type=\"text/javascript\">\r\n$(\'#about\').append(\'&nbsp;<i class=\\\"fa fa-exclamation-circle\\\"></i>\'); \r\n$(\'#about\').css({\'background-color\': \'#FFD1D1\',\'border\': \'1px solid #F8ACAC\',\'color\': \'red\',\'text-decoration\': \'blink\'});\r\n$(\'#adv_new_version\').append(\'<span style=\"color:red\"><strong><?php echo $version; ?></strong></span>\');\r\n$(\'#adv_what_is_new\').append(\'<?php echo html_entity_decode(str_replace(\"@@@\",\"<br>\",$whats_new), ENT_QUOTES, \"UTF-8\"); ?> \');\r\n</script>\r\n<?php } ?>\r\n<?php } ?>\r\n            ]]></add>\r\n        </operation>				\r\n	</file>\r\n	\r\n    <file path=\"admin/controller/common/login.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n            public function index() {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		if (isset($_GET[\'cron\']) && ($_GET[\'cron\'] == 1) && $this->config->get(\'advpp\' . $_GET[\'user_id\'] . \'cron_setting\')) {\r\n			$cron_settings = unserialize($this->config->get(\'advpp\' . $_GET[\'user_id\'] . \'cron_setting\'));\r\n			foreach ($cron_settings as $cron_setting) {\r\n            	if (isset($_GET[\'cron_token\']) && ($_GET[\'cron_token\'] == $cron_setting[\'cron_token\']) && isset($_GET[\'cron_id\']) && ($_GET[\'cron_id\'] == $cron_setting[\'cron_id\'])) {\r\n					$this->session->data[\'user_token\'] = md5(mt_rand());\r\n					$this->request->get[\'user_token\'] = $this->session->data[\'user_token\'];\r\n					$cron_route = (isset($_GET[\'cron_route\']) ? $_GET[\'cron_route\'] : \'common/logout\');\r\n					$this->user->login($cron_setting[\'cron_user\'], base64_decode(base64_decode($cron_setting[\'cron_pass\'])));\r\n					$this->response->redirect($this->url->link($cron_route, \'user_id=\'.$cron_setting[\'cron_user_id\'].\'&user_token=\'.$this->session->data[\'user_token\'].\'&cron_id=\'.$cron_setting[\'cron_id\'].\'&cron=2\', \'SSL\'));\r\n				}\r\n			}\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n    </file>\r\n	\r\n	<file path=\"admin/controller/common/header.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n            public function index() {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		if (isset($_GET[\'cron\']) && ($_GET[\'cron\'] == 2)) {\r\n			unset($this->session->data[\'user_token\']);\r\n			$this->user->logout();\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n    </file>			\r\n</modification>',1,'2021-02-03 08:15:31'),(23,14,'<b style=\"color:#4170bd\">ADV Extended Customer Information</b>','adv_extended_cust_info','ADV Reports and Statistics','<b style=\"color:#4170bd\">3.0</b>','http://www.opencartreports.com','<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<modification>\r\n	<name><![CDATA[<b style=\"color:#4170bd\">ADV Extended Customer Information</b>]]></name>\r\n	<version><![CDATA[<b style=\"color:#4170bd\">3.0</b>]]></version>\r\n	<code>adv_extended_cust_info</code>\r\n	<link>http://www.opencartreports.com</link>\r\n	<author>ADV Reports and Statistics</author>\r\n	\r\n	<file path=\"admin/controller/customer/customer.php\">	\r\n        <operation>\r\n            <search><![CDATA[\r\n$data[\'customers\'][] = array(\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n				\'total_orders\' 	 => $this->config->get(\'adveci_clist_orders_status\') == \'1\' ? ($result[\'total_orders\'] ? $result[\'total_orders\'] : 0) : \'\',\r\n				\'total_value\' 	 => $this->config->get(\'adveci_clist_total_value_status\') == \'1\' ? ($this->currency->format($result[\'total_value\'], $this->config->get(\'config_currency\'))) : \'\',\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n$data[\'sort_date_added\'] = $this->url->link(\'customer/customer\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&sort=c.date_added\' . $url, true);\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n        $data[\'laccess\'] = FALSE;\r\n		$data[\'sort_total_orders\'] = $this->url->link(\'customer/customer\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&sort=total_orders\' . $url, true);\r\n		$data[\'sort_total_value\'] = $this->url->link(\'customer/customer\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&sort=total_value\' . $url, true);\r\n		\r\n		$data[\'adveci_clist_orders_status\'] = $this->config->get(\'adveci_clist_orders_status\');\r\n		$data[\'adveci_clist_total_value_status\'] = $this->config->get(\'adveci_clist_total_value_status\');\r\n		if (!file_exists(DIR_CONFIG . \'include/adv_access.php\')) {\r\n			$this->response->redirect($this->url->link(\'extension/module/adv_extended_cust_info\', \'user_token=\' . $this->session->data[\'user_token\'], true));\r\n		}\r\n		$data[\'adv_ext_name\'] = $this->language->get(\'adv_ext_name\');\r\n		$data[\'adv_ext_short_name\'] = \'adv_extended_cust_info\';\r\n		$data[\'adv_ext_version\'] = $this->language->get(\'adv_ext_version\');	\r\n		$data[\'adv_ext_url\'] = \'https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=3292\';	\r\n		include(DIR_CONFIG . \'include/adv_access.php\');\r\n		$data[\'access_permission2\'] = $this->user->hasPermission(\'access\', \'extension/module/adv_extended_cust_info\');\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n$customer_info = $this->model_customer_customer->getCustomer($this->request->get[\'customer_id\']);\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		$customer_note = $this->model_customer_customer->getCustomerNote($this->request->get[\'customer_id\']);\r\n            ]]></add>\r\n        </operation>	\r\n        <operation>\r\n            <search><![CDATA[\r\nif (isset($this->request->post[\'password\'])) {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		if (isset($this->request->post[\'note\'])) {\r\n			$data[\'note\'] = $this->request->post[\'note\'];\r\n		} elseif (!empty($customer_note)) {\r\n			$data[\'note\'] = $customer_note[\'note\'];\r\n		} else {\r\n			$data[\'note\'] = \'\';\r\n		}\r\n            ]]></add>\r\n        </operation>				     \r\n        <operation>\r\n            <search><![CDATA[\r\nprotected function getForm() {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n	public function filter_orders() {\r\n	  $data[\'customer_id\'] = isset($this->request->get[\'customer_id\']);	\r\n			\r\n	  if (isset($this->request->get[\'customer_id\'])) {\r\n		\r\n		$json = array();\r\n\r\n		$data[\'user_token\'] = $this->session->data[\'user_token\'];\r\n\r\n		if (isset($this->request->get[\'filter_orders_date_start\'])) {\r\n			$filter_orders_date_start = $this->request->get[\'filter_orders_date_start\'];\r\n		} else {\r\n			$filter_orders_date_start = \'\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_orders_date_end\'])) {\r\n			$filter_orders_date_end = $this->request->get[\'filter_orders_date_end\'];\r\n		} else {\r\n			$filter_orders_date_end = \'\';\r\n		}\r\n		\r\n		$data[\'ranges_orders\'] = array();\r\n		\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_custom\'),\r\n			\'value\' => \'custom\',\r\n			\'style\' => \'color:#666\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_today\'),\r\n			\'value\' => \'today\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n			\'value\' => \'yesterday\',\r\n			\'style\' => \'color:#090\',\r\n		);		\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_week\'),\r\n			\'value\' => \'week\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_month\'),\r\n			\'value\' => \'month\',\r\n			\'style\' => \'color:#090\',\r\n		);					\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_quarter\'),\r\n			\'value\' => \'quarter\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_year\'),\r\n			\'value\' => \'year\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_week\'),\r\n			\'value\' => \'current_week\',\r\n			\'style\' => \'color:#06C\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_month\'),\r\n			\'value\' => \'current_month\',\r\n			\'style\' => \'color:#06C\',\r\n		);	\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n			\'value\' => \'current_quarter\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_year\'),\r\n			\'value\' => \'current_year\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_week\'),\r\n			\'value\' => \'last_week\',\r\n			\'style\' => \'color:#F90\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_month\'),\r\n			\'value\' => \'last_month\',\r\n			\'style\' => \'color:#F90\',\r\n		);	\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n			\'value\' => \'last_quarter\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_year\'),\r\n			\'value\' => \'last_year\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_all_time\'),\r\n			\'value\' => \'all_time\',\r\n			\'style\' => \'color:#F00\',\r\n		);\r\n		\r\n		if (isset($this->request->get[\'filter_orders_range\'])) {\r\n			$filter_orders_range = $this->request->get[\'filter_orders_range\'];\r\n		} else {\r\n			$filter_orders_range = \'all_time\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_orders_order_status\'])) {\r\n			$filter_orders_order_status = explode(\'_\', $this->request->get[\'filter_orders_order_status\']);\r\n		} else {\r\n			$filter_orders_order_status = 0;\r\n		}\r\n		\r\n		if (isset($this->request->get[\'sort_orders\'])) {\r\n			$sort_orders = $this->request->get[\'sort_orders\'];\r\n		} else {\r\n			$sort_orders = \'order_id\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'order_orders\'])) {\r\n			$order_orders = $this->request->get[\'order_orders\'];\r\n		} else {\r\n			$order_orders = \'DESC\';\r\n		}\r\n				\r\n		if (isset($this->request->get[\'page_orders\'])) {\r\n			$page_orders = $this->request->get[\'page_orders\'];\r\n		} else {\r\n			$page_orders = 1;\r\n		}\r\n				\r\n		$json[\'customer_order\'] = array();\r\n		\r\n		$filter_data = array(\r\n			\'filter_orders_date_start\'	  		=> $filter_orders_date_start, \r\n			\'filter_orders_date_end\'	  		=> $filter_orders_date_end, \r\n			\'filter_orders_range\'	  	  		=> $filter_orders_range, \r\n			\'filter_orders_order_status\'	  	=> $filter_orders_order_status,\r\n			\'sort_orders\'            			=> $sort_orders,\r\n			\'order_orders\'           			=> $order_orders,\r\n			\'start_orders\'           	  		=> ($page_orders - 1) * $this->config->get(\'config_limit_admin\'),\r\n			\'limit_orders\'           	  		=> $this->config->get(\'config_limit_admin\')			\r\n		);\r\n		\r\n		$this->load->model(\'customer/customer\');\r\n		\r\n		$data[\'order_statuses\'] = $this->model_customer_customer->getOrderStatuses(); \r\n		\r\n		$customer_orders_total = $this->model_customer_customer->getCustomerOrdersTotal($filter_data, $this->request->get[\'customer_id\']);\r\n		\r\n		$customer_orders = $this->model_customer_customer->getCustomerOrders($filter_data, $this->request->get[\'customer_id\']);\r\n		\r\n		foreach ($customer_orders as $order) {\r\n		\r\n			$json[\'customer_order\'][] = array(\r\n				\'date_added\' 			=> date($this->config->get(\'adveci_date_format\') == \'DDMMYYYY\' ? \'d/m/Y\' : \'m/d/Y\', strtotime($order[\'date_added\'])),\r\n				\'order_id\'    			=> $order[\'order_id\'],\r\n				\'order_id_url\' 			=> $this->url->link(\'sale/order/info\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&order_id=\' . $order[\'order_id\'], true),\r\n				\'inv_no\'     			=> $order[\'invoice_prefix\'] . $order[\'invoice_no\'],\r\n				\'shipping_method\'     	=> strip_tags($order[\'shipping_method\']),\r\n				\'payment_method\'     	=> strip_tags($order[\'payment_method\']),\r\n				\'os_name\'     			=> $order[\'os_name\'],												\r\n				\'store_name\'    		=> $order[\'store_name\'],\r\n				\'currency\'     			=> $order[\'currency_code\'],\r\n				\'products\'    			=> $order[\'products\'],						\r\n				\'sub_total\'    			=> $this->currency->format($order[\'sub_total\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'shipping\'    			=> $this->currency->format($order[\'shipping\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'tax\'    				=> $this->currency->format($order[\'tax\'], $order[\'currency_code\'], $order[\'currency_value\']),						\r\n				\'total\'    				=> $this->currency->format($order[\'total\'], $order[\'currency_code\'], $order[\'currency_value\']),												\r\n				\'total_products\'   		=> $order[\'total_products\'],	\r\n				\'total_sub_total\'   	=> $this->currency->format($order[\'total_sub_total\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_shipping\'   		=> $this->currency->format($order[\'total_shipping\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_tax\'   			=> $this->currency->format($order[\'total_tax\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_value\'   		=> $this->currency->format($order[\'total_value\'], $order[\'currency_code\'], $order[\'currency_value\'])\r\n			);\r\n		}\r\n\r\n		$pagination_orders = new Pagination();\r\n		$pagination_orders->total = $customer_orders_total;\r\n		$pagination_orders->page = $page_orders;\r\n		$pagination_orders->limit = $this->config->get(\'config_limit_admin\');\r\n		$pagination_orders->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_orders={page}\', true);\r\n			\r\n		$json[\'pagination_orders\'] = $pagination_orders->render();\r\n			\r\n		$json[\'results_orders\'] = sprintf($this->language->get(\'text_pagination\'), ($customer_orders_total) ? (($page_orders - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_orders - 1) * $this->config->get(\'config_limit_admin\')) > ($customer_orders_total - $this->config->get(\'config_limit_admin\'))) ? $customer_orders_total : ((($page_orders - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $customer_orders_total, ceil($customer_orders_total / $this->config->get(\'config_limit_admin\')));\r\n		\r\n		$this->response->addHeader(\'Content-Type: application/json\');\r\n		$this->response->setOutput(json_encode($json));\r\n	  }\r\n	}	\r\n	\r\n	public function filter_products() {\r\n	  $data[\'customer_id\'] = isset($this->request->get[\'customer_id\']);	\r\n			\r\n	  if (isset($this->request->get[\'customer_id\'])) {\r\n		\r\n		$json = array();\r\n\r\n		$data[\'user_token\'] = $this->session->data[\'user_token\'];\r\n\r\n		if (isset($this->request->get[\'filter_products_date_start\'])) {\r\n			$filter_products_date_start = $this->request->get[\'filter_products_date_start\'];\r\n		} else {\r\n			$filter_products_date_start = \'\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_products_date_end\'])) {\r\n			$filter_products_date_end = $this->request->get[\'filter_products_date_end\'];\r\n		} else {\r\n			$filter_products_date_end = \'\';\r\n		}\r\n		\r\n		$data[\'ranges_products\'] = array();\r\n		\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_custom\'),\r\n			\'value\' => \'custom\',\r\n			\'style\' => \'color:#666\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_today\'),\r\n			\'value\' => \'today\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n			\'value\' => \'yesterday\',\r\n			\'style\' => \'color:#090\',\r\n		);		\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_week\'),\r\n			\'value\' => \'week\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_month\'),\r\n			\'value\' => \'month\',\r\n			\'style\' => \'color:#090\',\r\n		);					\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_quarter\'),\r\n			\'value\' => \'quarter\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_year\'),\r\n			\'value\' => \'year\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_week\'),\r\n			\'value\' => \'current_week\',\r\n			\'style\' => \'color:#06C\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_month\'),\r\n			\'value\' => \'current_month\',\r\n			\'style\' => \'color:#06C\',\r\n		);	\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n			\'value\' => \'current_quarter\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_year\'),\r\n			\'value\' => \'current_year\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_week\'),\r\n			\'value\' => \'last_week\',\r\n			\'style\' => \'color:#F90\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_month\'),\r\n			\'value\' => \'last_month\',\r\n			\'style\' => \'color:#F90\',\r\n		);	\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n			\'value\' => \'last_quarter\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_year\'),\r\n			\'value\' => \'last_year\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_all_time\'),\r\n			\'value\' => \'all_time\',\r\n			\'style\' => \'color:#F00\',\r\n		);\r\n		\r\n		if (isset($this->request->get[\'filter_products_range\'])) {\r\n			$filter_products_range = $this->request->get[\'filter_products_range\'];\r\n		} else {\r\n			$filter_products_range = \'all_time\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_products_order_status\'])) {\r\n			$filter_products_order_status = explode(\'_\', $this->request->get[\'filter_products_order_status\']);\r\n		} else {\r\n			$filter_products_order_status = 0;\r\n		}\r\n		\r\n		if (isset($this->request->get[\'sort_products\'])) {\r\n			$sort_products = $this->request->get[\'sort_products\'];\r\n		} else {\r\n			$sort_products = \'quantity\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'order_products\'])) {\r\n			$order_products = $this->request->get[\'order_products\'];\r\n		} else {\r\n			$order_products = \'DESC\';\r\n		}\r\n				\r\n		if (isset($this->request->get[\'page_products\'])) {\r\n			$page_products = $this->request->get[\'page_products\'];\r\n		} else {\r\n			$page_products = 1;\r\n		}\r\n				\r\n		$json[\'customer_product\'] = array();\r\n		\r\n		$filter_data = array(\r\n			\'filter_products_date_start\'	  	=> $filter_products_date_start, \r\n			\'filter_products_date_end\'	  		=> $filter_products_date_end, \r\n			\'filter_products_range\'	  	  		=> $filter_products_range, \r\n			\'filter_products_order_status\'	  	=> $filter_products_order_status,\r\n			\'sort_products\'            			=> $sort_products,\r\n			\'order_products\'           			=> $order_products,\r\n			\'start_products\'           	  		=> ($page_products - 1) * $this->config->get(\'config_limit_admin\'),\r\n			\'limit_products\'           	  		=> $this->config->get(\'config_limit_admin\')			\r\n		);\r\n		\r\n		$this->load->model(\'customer/customer\');\r\n		$this->load->model(\'tool/image\');\r\n		\r\n		$data[\'order_statuses\'] = $this->model_customer_customer->getOrderStatuses(); \r\n		\r\n		$customer_products_total = $this->model_customer_customer->getCustomerProductsTotal($filter_data, $this->request->get[\'customer_id\']);\r\n		$counter = 0;\r\n		foreach ($customer_products_total as $total) {\r\n			$counter += count(explode(\',\',$total[\'counter\'],0));\r\n		}\r\n		$total = $counter;\r\n			\r\n		$customer_products = $this->model_customer_customer->getCustomerProducts($filter_data, $this->request->get[\'customer_id\']);\r\n		\r\n		foreach ($customer_products as $product) {\r\n			\r\n			if ($product[\'image\'] && file_exists(DIR_IMAGE . $product[\'image\'])) {\r\n				$image_product = $this->model_tool_image->resize($product[\'image\'], 40, 40);\r\n			} else {\r\n				$image_product = $this->model_tool_image->resize(\'no_image.jpg\', 40, 40);\r\n			}\r\n									\r\n			$json[\'customer_product\'][] = array(\r\n				\'product_id\' 						=> $product[\'product_id\'],	\r\n				\'product_id_url\' 					=> $this->url->link(\'catalog/product/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&product_id=\' . $product[\'product_id\'], true),\r\n				\'image\'      						=> $image_product,\r\n				\'sku\'    							=> $product[\'sku\'],\r\n				\'model\'    							=> $product[\'model\'],\r\n				\'name\'     							=> $product[\'name\'],\r\n				\'product_option\'    				=> html_entity_decode($product[\'product_option\']),	\r\n				\'manufacturer\'  					=> $product[\'manufacturer\'],\r\n				\'categories\'  						=> $product[\'categories\'],\r\n				\'quantity\' 							=> $product[\'quantity\'],\r\n				\'total_excl_vat\'  				  	=> $this->currency->format($product[\'total_excl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'prod_tax\'    						=> $this->currency->format($product[\'prod_tax\'], $this->config->get(\'config_currency\')),												\r\n				\'total_incl_vat\'   				 	=> $this->currency->format($product[\'total_incl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'product_order_ord_id\'     			=> $product[\'product_order_ord_id\'],\r\n				\'product_order_ord_idc\'     		=> $product[\'product_order_ord_idc\'],\r\n				\'product_order_date\'    			=> $product[\'product_order_date\'],\r\n				\'product_order_inv_no\'     			=> $product[\'product_order_inv_no\'],\r\n				\'product_order_shipping_method\' 	=> strip_tags($product[\'product_order_shipping_method\'], \'<br>\'),\r\n				\'product_order_payment_method\'  	=> strip_tags($product[\'product_order_payment_method\'], \'<br>\'),\r\n				\'product_order_status\'  			=> $product[\'product_order_status\'],\r\n				\'product_order_store\'      			=> $product[\'product_order_store\'],	\r\n				\'product_order_currency\' 			=> $product[\'product_order_currency\'],\r\n				\'product_order_price\' 				=> $product[\'product_order_price\'],\r\n				\'product_order_quantity\' 			=> $product[\'product_order_quantity\'],\r\n				\'product_order_total_excl_vat\'  	=> $product[\'product_order_total_excl_vat\'],				\r\n				\'product_order_tax\'  				=> $product[\'product_order_tax\'],				\r\n				\'product_order_total_incl_vat\'  	=> $product[\'product_order_total_incl_vat\'],\r\n				\'total_quantity\' 					=> $product[\'total_quantity\'],\r\n				\'total_total_excl_vat\' 				=> $this->currency->format($product[\'total_total_excl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'total_prod_tax\' 					=> $this->currency->format($product[\'total_prod_tax\'], $this->config->get(\'config_currency\')),\r\n				\'total_total_incl_vat\' 				=> $this->currency->format($product[\'total_total_incl_vat\'], $this->config->get(\'config_currency\'))\r\n			);\r\n		}\r\n\r\n		$pagination_products = new Pagination();\r\n		$pagination_products->total = $total;\r\n		$pagination_products->page = $page_products;\r\n		$pagination_products->limit = $this->config->get(\'config_limit_admin\');\r\n		$pagination_products->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_products={page}\', true);\r\n			\r\n		$json[\'pagination_products\'] = $pagination_products->render();\r\n			\r\n		$json[\'results_products\'] = sprintf($this->language->get(\'text_pagination\'), ($total) ? (($page_products - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_products - 1) * $this->config->get(\'config_limit_admin\')) > ($total - $this->config->get(\'config_limit_admin\'))) ? $total : ((($page_products - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $total, ceil($total / $this->config->get(\'config_limit_admin\')));\r\n		\r\n		$this->response->addHeader(\'Content-Type: application/json\');\r\n		$this->response->setOutput(json_encode($json));\r\n	  }\r\n	}\r\n					\r\n	public function filter_track() {\r\n		$data[\'customer_id\'] = isset($this->request->get[\'customer_id\']);	\r\n			\r\n		if (isset($this->request->get[\'customer_id\'])) {\r\n		\r\n			$json = array();\r\n\r\n			$data[\'user_token\'] = $this->session->data[\'user_token\'];\r\n\r\n			if (isset($this->request->get[\'filter_start_date\'])) {\r\n				$filter_start_date = $this->request->get[\'filter_start_date\'];\r\n			} else {\r\n				$filter_start_date = \'\';\r\n			}\r\n\r\n			if (isset($this->request->get[\'filter_end_date\'])) {\r\n				$filter_end_date = $this->request->get[\'filter_end_date\'];\r\n			} else {\r\n				$filter_end_date = \'\';\r\n			}\r\n		\r\n			$data[\'ranges\'] = array();\r\n		\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_custom\'),\r\n				\'value\' => \'custom\',\r\n				\'style\' => \'color:#666\',\r\n			);			\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_today\'),\r\n				\'value\' => \'today\',\r\n				\'style\' => \'color:#090\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n				\'value\' => \'yesterday\',\r\n				\'style\' => \'color:#090\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_week\'),\r\n				\'value\' => \'week\',\r\n				\'style\' => \'color:#090\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_month\'),\r\n				\'value\' => \'month\',\r\n				\'style\' => \'color:#090\',\r\n			);					\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_quarter\'),\r\n				\'value\' => \'quarter\',\r\n				\'style\' => \'color:#090\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_year\'),\r\n				\'value\' => \'year\',\r\n				\'style\' => \'color:#090\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_current_week\'),\r\n				\'value\' => \'current_week\',\r\n				\'style\' => \'color:#06C\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_current_month\'),\r\n				\'value\' => \'current_month\',\r\n				\'style\' => \'color:#06C\',\r\n			);	\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n				\'value\' => \'current_quarter\',\r\n				\'style\' => \'color:#06C\',\r\n			);			\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_current_year\'),\r\n				\'value\' => \'current_year\',\r\n				\'style\' => \'color:#06C\',\r\n			);			\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_last_week\'),\r\n				\'value\' => \'last_week\',\r\n				\'style\' => \'color:#F90\',\r\n			);\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_last_month\'),\r\n				\'value\' => \'last_month\',\r\n				\'style\' => \'color:#F90\',\r\n			);	\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n				\'value\' => \'last_quarter\',\r\n				\'style\' => \'color:#F90\',\r\n			);			\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_last_year\'),\r\n				\'value\' => \'last_year\',\r\n				\'style\' => \'color:#F90\',\r\n			);			\r\n			$data[\'ranges\'][] = array(\r\n				\'text\'  => $this->language->get(\'stat_all_time\'),\r\n				\'value\' => \'all_time\',\r\n				\'style\' => \'color:#F00\',\r\n			);\r\n		\r\n			if (isset($this->request->get[\'filter_range\'])) {\r\n				$filter_range = $this->request->get[\'filter_range\'];\r\n			} else {\r\n				$filter_range = \'all_time\'; //show All Time in Statistical Range by default\r\n			}\r\n\r\n			if (isset($this->request->get[\'sort_track\'])) {\r\n				$sort_track = $this->request->get[\'sort_track\'];\r\n			} else {\r\n				$sort_track = \'access_time\';\r\n			}\r\n\r\n			if (isset($this->request->get[\'order_track\'])) {\r\n				$order_track = $this->request->get[\'order_track\'];\r\n			} else {\r\n				$order_track = \'DESC\';\r\n			}\r\n				\r\n			if (isset($this->request->get[\'page_track\'])) {\r\n				$page_track = $this->request->get[\'page_track\'];\r\n			} else {\r\n				$page_track = 1;\r\n			}\r\n				\r\n			$json[\'customer_track\'] = array();\r\n		\r\n			$filter_data = array(\r\n				\'filter_range\'			=>	$filter_range,\r\n				\'filter_start_date\'		=>	$filter_start_date, \r\n				\'filter_end_date\'		=>	$filter_end_date,\r\n				\'sort_track\'           	=>	$sort_track,\r\n				\'order_track\'          	=>	$order_track,\r\n				\'start_track\'          	=>	($page_track - 1) * $this->config->get(\'config_limit_admin\'),\r\n				\'limit_track\'          	=>	$this->config->get(\'config_limit_admin\')					\r\n			);\r\n		\r\n			$this->load->model(\'customer/customer\');\r\n		\r\n			$customer_tracks_total = $this->model_customer_customer->getCustomerTrackTotal($filter_data, $this->request->get[\'customer_id\']);\r\n			\r\n			$customer_tracks = $this->model_customer_customer->getCustomerTrack($filter_data, $this->request->get[\'customer_id\']);\r\n\r\n			foreach ($customer_tracks as $track) {\r\n				$json[\'customer_track\'][] = array(\r\n					\'ip_address\'    			=> $track[\'ip_address\'],\r\n					\'agent_type\'    			=> $track[\'agent_type\'],\r\n					\'route\' 					=> $track[\'route\'],\r\n					\'current_url\'    			=> htmlspecialchars_decode($track[\'current_url\']),					\r\n					\'referrer\'    				=> htmlspecialchars_decode($track[\'referrer\']),\r\n					\'visit_date\'  				=> date($this->config->get(\'adveci_date_format\') == \'DDMMYYYY\' ? \'d/m/Y\' : \'m/d/Y\', strtotime($track[\'access_time\'])),\r\n					\'visit_time\'    			=> date($this->config->get(\'adveci_hour_format\') == \'24\' ? \'H:i:s\' : \'g:i:s A\', strtotime($track[\'access_time\']))\r\n				);\r\n			}\r\n					\r\n			$pagination_track = new Pagination();\r\n			$pagination_track->total = $customer_tracks_total;\r\n			$pagination_track->page = $page_track;\r\n			$pagination_track->limit = $this->config->get(\'config_limit_admin\');\r\n			$pagination_track->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_track={page}\', true);\r\n			\r\n			$json[\'pagination_track\'] = $pagination_track->render();\r\n			\r\n			$json[\'results_track\'] = sprintf($this->language->get(\'text_pagination\'), ($customer_tracks_total) ? (($page_track - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_track - 1) * $this->config->get(\'config_limit_admin\')) > ($customer_tracks_total - $this->config->get(\'config_limit_admin\'))) ? $customer_tracks_total : ((($page_track - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $customer_tracks_total, ceil($customer_tracks_total / $this->config->get(\'config_limit_admin\')));\r\n		\r\n			$this->response->addHeader(\'Content-Type: application/json\');\r\n			$this->response->setOutput(json_encode($json));\r\n	  	}\r\n	}	\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\nprotected function getList() {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		if (!$this->IsInstalled()) {		\r\n			$this->session->data[\'error_eci\'] = $this->language->get(\'error_installed\');\r\n			$this->response->redirect($this->url->link(\'marketplace/extension\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&type=module\', true));		\r\n		}	\r\n            ]]></add>\r\n        </operation>		\r\n        <operation>\r\n            <search><![CDATA[\r\nprotected function getForm() {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		if (!$this->IsInstalled()) {		\r\n			$this->session->data[\'error_eci\'] = $this->language->get(\'error_installed\');\r\n			$this->response->redirect($this->url->link(\'marketplace/extension\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&type=module\', true));		\r\n		}\r\n\r\n	   	$this->document->addScript(\'view/javascript/jquery/jquery.tmpl.min.js\');\r\n		$this->document->addScript(\'view/javascript/bootstrap/js/bootstrap-multiselect.js\');\r\n	   	$this->document->addStyle(\'view/javascript/bootstrap/css/bootstrap-multiselect.css\');\r\n		$this->document->addScript(\'view/javascript/bootstrap/js/bootstrap-select.min.js\');\r\n		$this->document->addStyle(\'view/javascript/bootstrap/css/bootstrap-select.css\');\r\n		$data[\'laccess\'] = FALSE;\r\n		if (!file_exists(DIR_CONFIG . \'include/adv_access.php\')) {\r\n			$this->response->redirect($this->url->link(\'extension/module/adv_extended_cust_info\', \'user_token=\' . $this->session->data[\'user_token\'], true));\r\n		}\r\n		$data[\'adv_ext_name\'] = $this->language->get(\'adv_ext_name\');\r\n		$data[\'adv_ext_short_name\'] = \'adv_extended_cust_info\';\r\n		$data[\'adv_ext_version\'] = $this->language->get(\'adv_ext_version\');	\r\n		$data[\'adv_ext_url\'] = \'https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=3292\';	\r\n		include(DIR_CONFIG . \'include/adv_access.php\');\r\n		\r\n		$data[\'customer_id\'] = isset($this->request->get[\'customer_id\']);	\r\n			\r\n		if (isset($this->request->get[\'customer_id\'])) {\r\n			$data[\'customer_id\'] = $this->request->get[\'customer_id\'];	\r\n			$data[\'access_permission1\'] = $this->user->hasPermission(\'modify\', \'customer/customer\');\r\n			$data[\'access_permission2\'] = $this->user->hasPermission(\'access\', \'extension/module/adv_extended_cust_info\');\r\n			$data[\'url_product\'] = $this->url->link(\'catalog/product/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&product_id=\', true);\r\n\r\n		if (isset($this->request->get[\'filter_orders_date_start\'])) {\r\n			$filter_orders_date_start = $this->request->get[\'filter_orders_date_start\'];\r\n		} else {\r\n			$filter_orders_date_start = \'\';\r\n		}\r\n						\r\n		if (isset($this->request->get[\'filter_orders_date_end\'])) {\r\n			$filter_orders_date_end = $this->request->get[\'filter_orders_date_end\'];\r\n		} else {\r\n			$filter_orders_date_end = \'\';\r\n		}\r\n		\r\n		$data[\'ranges_orders\'] = array();\r\n		\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_custom\'),\r\n			\'value\' => \'custom\',\r\n			\'style\' => \'color:#666\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_today\'),\r\n			\'value\' => \'today\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n			\'value\' => \'yesterday\',\r\n			\'style\' => \'color:#090\',\r\n		);		\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_week\'),\r\n			\'value\' => \'week\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_month\'),\r\n			\'value\' => \'month\',\r\n			\'style\' => \'color:#090\',\r\n		);					\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_quarter\'),\r\n			\'value\' => \'quarter\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_year\'),\r\n			\'value\' => \'year\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_week\'),\r\n			\'value\' => \'current_week\',\r\n			\'style\' => \'color:#06C\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_month\'),\r\n			\'value\' => \'current_month\',\r\n			\'style\' => \'color:#06C\',\r\n		);	\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n			\'value\' => \'current_quarter\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_year\'),\r\n			\'value\' => \'current_year\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_week\'),\r\n			\'value\' => \'last_week\',\r\n			\'style\' => \'color:#F90\',\r\n		);\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_month\'),\r\n			\'value\' => \'last_month\',\r\n			\'style\' => \'color:#F90\',\r\n		);	\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n			\'value\' => \'last_quarter\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_year\'),\r\n			\'value\' => \'last_year\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_orders\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_all_time\'),\r\n			\'value\' => \'all_time\',\r\n			\'style\' => \'color:#F00\',\r\n		);\r\n		\r\n		if (isset($this->request->get[\'filter_orders_range\'])) {\r\n			$filter_orders_range = $this->request->get[\'filter_orders_range\'];\r\n		} else {\r\n			$filter_orders_range = \'all_time\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_orders_order_status\'])) {\r\n			$filter_orders_order_status = explode(\'_\', $this->request->get[\'filter_orders_order_status\']);\r\n		} else {\r\n			$filter_orders_order_status = 0;\r\n		}\r\n		\r\n		if (isset($this->request->get[\'sort_orders\'])) {\r\n			$sort_orders = $this->request->get[\'sort_orders\'];\r\n		} else {\r\n			$sort_orders = \'order_id\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'order_orders\'])) {\r\n			$order_orders = $this->request->get[\'order_orders\'];\r\n		} else {\r\n			$order_orders = \'DESC\';\r\n		}\r\n				\r\n		if (isset($this->request->get[\'page_orders\'])) {\r\n			$page_orders = $this->request->get[\'page_orders\'];\r\n		} else {\r\n			$page_orders = 1;\r\n		}\r\n\r\n		$data[\'sort_orders\'] = $sort_orders;\r\n		$data[\'order_orders\'] = $order_orders;\r\n		$data[\'page_orders\'] = $page_orders;\r\n														\r\n		$data[\'customer_order\'] = array();\r\n				\r\n		$filter_data = array(\r\n			\'filter_orders_date_start\'	  		=> $filter_orders_date_start, \r\n			\'filter_orders_date_end\'	  		=> $filter_orders_date_end, \r\n			\'filter_orders_range\'	  	  		=> $filter_orders_range, \r\n			\'filter_orders_order_status\'	  	=> $filter_orders_order_status,\r\n			\'sort_orders\'            			=> $sort_orders,\r\n			\'order_orders\'           			=> $order_orders,\r\n			\'start_orders\'           	  		=> ($page_orders - 1) * $this->config->get(\'config_limit_admin\'),\r\n			\'limit_orders\'           	  		=> $this->config->get(\'config_limit_admin\')	\r\n		);\r\n\r\n		$this->load->model(\'customer/customer\');\r\n					\r\n		$data[\'order_statuses\'] = $this->model_customer_customer->getOrderStatuses(); \r\n		\r\n		$customer_orders_total = $this->model_customer_customer->getCustomerOrdersTotal($filter_data, $this->request->get[\'customer_id\']);\r\n		\r\n		$customer_orders = $this->model_customer_customer->getCustomerOrders($filter_data, $this->request->get[\'customer_id\']);\r\n\r\n		foreach ($customer_orders as $order) {\r\n				\r\n			$data[\'customer_order\'][] = array(\r\n				\'date_added\' 			=> date($this->config->get(\'adveci_date_format\') == \'DDMMYYYY\' ? \'d/m/Y\' : \'m/d/Y\', strtotime($order[\'date_added\'])),\r\n				\'order_id\'    			=> $order[\'order_id\'],\r\n				\'order_id_url\' 			=> $this->url->link(\'sale/order/info\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&order_id=\' . $order[\'order_id\'], true),\r\n				\'inv_no\'     			=> $order[\'invoice_prefix\'] . $order[\'invoice_no\'],\r\n				\'shipping_method\'     	=> strip_tags($order[\'shipping_method\']),\r\n				\'payment_method\'     	=> strip_tags($order[\'payment_method\']),\r\n				\'os_name\'     			=> $order[\'os_name\'],												\r\n				\'store_name\'    		=> $order[\'store_name\'],\r\n				\'currency\'     			=> $order[\'currency_code\'],\r\n				\'products\'    			=> $order[\'products\'],						\r\n				\'sub_total\'    			=> $this->currency->format($order[\'sub_total\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'shipping\'    			=> $this->currency->format($order[\'shipping\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'tax\'    				=> $this->currency->format($order[\'tax\'], $order[\'currency_code\'], $order[\'currency_value\']),						\r\n				\'total\'    				=> $this->currency->format($order[\'total\'], $order[\'currency_code\'], $order[\'currency_value\']),												\r\n				\'total_products\'   		=> $order[\'total_products\'],	\r\n				\'total_sub_total\'   	=> $this->currency->format($order[\'total_sub_total\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_shipping\'   		=> $this->currency->format($order[\'total_shipping\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_tax\'   			=> $this->currency->format($order[\'total_tax\'], $order[\'currency_code\'], $order[\'currency_value\']),\r\n				\'total_value\'   		=> $this->currency->format($order[\'total_value\'], $order[\'currency_code\'], $order[\'currency_value\'])\r\n			);\r\n		}\r\n		\r\n		$url = \'\';\r\n\r\n		if (isset($this->request->get[\'filter_orders_date_start\'])) {\r\n			$url .= \'&filter_orders_date_start=\' . $this->request->get[\'filter_orders_date_start\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_orders_date_end\'])) {\r\n			$url .= \'&filter_orders_date_end=\' . $this->request->get[\'filter_orders_date_end\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_orders_range\'])) {\r\n			$url .= \'&filter_orders_range=\' . $this->request->get[\'filter_orders_range\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_orders_order_status\'])) {\r\n			$url .= \'&filter_orders_order_status=\' . $this->request->get[\'filter_orders_order_status\'];\r\n		}\r\n										\r\n		if ($order_orders == \'ASC\') {\r\n			$url .= \'&order_orders=DESC\';\r\n		} else {\r\n			$url .= \'&order_orders=ASC\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'page_orders\'])) {\r\n			$url .= \'&page_orders=\' . $this->request->get[\'page_orders\'];\r\n		}\r\n								\r\n		$data[\'sort_orders_order_id\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.order_id\' . $url, true);\r\n		$data[\'sort_orders_date_added\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.date_added\' . $url, true);\r\n		$data[\'sort_orders_inv_no\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=inv_number\' . $url, true);\r\n		$data[\'sort_orders_shipping_method\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.shipping_method\' . $url, true);		\r\n		$data[\'sort_orders_payment_method\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.payment_method\' . $url, true);\r\n		$data[\'sort_orders_order_status\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=os_name\' . $url, true);		\r\n		$data[\'sort_orders_store\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.store_name\' . $url, true);\r\n		$data[\'sort_orders_currency\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.currency_code\' . $url, true);\r\n		$data[\'sort_orders_quantity\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=products\' . $url, true);		\r\n		$data[\'sort_orders_sub_total\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=sub_total\' . $url, true);\r\n		$data[\'sort_orders_shipping\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=shipping\' . $url, true);\r\n		$data[\'sort_orders_tax\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=tax\' . $url, true);\r\n		$data[\'sort_orders_value\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_orders=o.total\' . $url, true);\r\n\r\n		$pagination_orders = new Pagination();\r\n		$pagination_orders->total = $customer_orders_total;\r\n		$pagination_orders->page = $page_orders;\r\n		$pagination_orders->limit = $this->config->get(\'config_limit_admin\');\r\n		$pagination_orders->text = $this->language->get(\'text_pagination\');\r\n		$pagination_orders->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_orders={page}\', true);\r\n			\r\n		$data[\'pagination_orders\'] = $pagination_orders->render();\r\n\r\n		$data[\'results_orders\'] = sprintf($this->language->get(\'text_pagination\'), ($customer_orders_total) ? (($page_orders - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_orders - 1) * $this->config->get(\'config_limit_admin\')) > ($customer_orders_total - $this->config->get(\'config_limit_admin\'))) ? $customer_orders_total : ((($page_orders - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $customer_orders_total, ceil($customer_orders_total / $this->config->get(\'config_limit_admin\')));\r\n										\r\n		$data[\'filter_orders_date_start\'] = $filter_orders_date_start; \r\n		$data[\'filter_orders_date_end\'] = $filter_orders_date_end; 		\r\n		$data[\'filter_orders_range\'] = $filter_orders_range; \r\n		$data[\'filter_orders_order_status\'] = $filter_orders_order_status;	\r\n		\r\n		$data[\'sort_orders\'] = $sort_orders;\r\n		$data[\'order_orders\'] = $order_orders;\r\n\r\n			\r\n		if (isset($this->request->get[\'filter_products_date_start\'])) {\r\n			$filter_products_date_start = $this->request->get[\'filter_products_date_start\'];\r\n		} else {\r\n			$filter_products_date_start = \'\';\r\n		}\r\n						\r\n		if (isset($this->request->get[\'filter_products_date_end\'])) {\r\n			$filter_products_date_end = $this->request->get[\'filter_products_date_end\'];\r\n		} else {\r\n			$filter_products_date_end = \'\';\r\n		}\r\n		\r\n		$data[\'ranges_products\'] = array();\r\n		\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_custom\'),\r\n			\'value\' => \'custom\',\r\n			\'style\' => \'color:#666\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_today\'),\r\n			\'value\' => \'today\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n			\'value\' => \'yesterday\',\r\n			\'style\' => \'color:#090\',\r\n		);		\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_week\'),\r\n			\'value\' => \'week\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_month\'),\r\n			\'value\' => \'month\',\r\n			\'style\' => \'color:#090\',\r\n		);					\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_quarter\'),\r\n			\'value\' => \'quarter\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_year\'),\r\n			\'value\' => \'year\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_week\'),\r\n			\'value\' => \'current_week\',\r\n			\'style\' => \'color:#06C\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_month\'),\r\n			\'value\' => \'current_month\',\r\n			\'style\' => \'color:#06C\',\r\n		);	\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n			\'value\' => \'current_quarter\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_year\'),\r\n			\'value\' => \'current_year\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_week\'),\r\n			\'value\' => \'last_week\',\r\n			\'style\' => \'color:#F90\',\r\n		);\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_month\'),\r\n			\'value\' => \'last_month\',\r\n			\'style\' => \'color:#F90\',\r\n		);	\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n			\'value\' => \'last_quarter\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_year\'),\r\n			\'value\' => \'last_year\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges_products\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_all_time\'),\r\n			\'value\' => \'all_time\',\r\n			\'style\' => \'color:#F00\',\r\n		);\r\n		\r\n		if (isset($this->request->get[\'filter_products_range\'])) {\r\n			$filter_products_range = $this->request->get[\'filter_products_range\'];\r\n		} else {\r\n			$filter_products_range = \'all_time\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_products_order_status\'])) {\r\n			$filter_products_order_status = explode(\'_\', $this->request->get[\'filter_products_order_status\']);\r\n		} else {\r\n			$filter_products_order_status = 0;\r\n		}\r\n		\r\n		if (isset($this->request->get[\'sort_products\'])) {\r\n			$sort_products = $this->request->get[\'sort_products\'];\r\n		} else {\r\n			$sort_products = \'quantity\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'order_products\'])) {\r\n			$order_products = $this->request->get[\'order_products\'];\r\n		} else {\r\n			$order_products = \'DESC\';\r\n		}\r\n				\r\n		if (isset($this->request->get[\'page_products\'])) {\r\n			$page_products = $this->request->get[\'page_products\'];\r\n		} else {\r\n			$page_products = 1;\r\n		}\r\n\r\n		$data[\'sort_products\'] = $sort_products;\r\n		$data[\'order_products\'] = $order_products;\r\n		$data[\'page_products\'] = $page_products;\r\n														\r\n		$data[\'customer_product\'] = array();\r\n				\r\n		$filter_data = array(\r\n			\'filter_products_date_start\'	  	=> $filter_products_date_start, \r\n			\'filter_products_date_end\'	  		=> $filter_products_date_end, \r\n			\'filter_products_range\'	  	  		=> $filter_products_range, \r\n			\'filter_products_order_status\'	  	=> $filter_products_order_status,\r\n			\'sort_products\'            			=> $sort_products,\r\n			\'order_products\'           			=> $order_products,\r\n			\'start_products\'           	  		=> ($page_products - 1) * $this->config->get(\'config_limit_admin\'),\r\n			\'limit_products\'           	  		=> $this->config->get(\'config_limit_admin\')	\r\n		);\r\n\r\n		$this->load->model(\'customer/customer\');\r\n		$this->load->model(\'tool/image\');\r\n					\r\n		$data[\'order_statuses\'] = $this->model_customer_customer->getOrderStatuses(); \r\n		\r\n		$customer_products_total = $this->model_customer_customer->getCustomerProductsTotal($filter_data, $this->request->get[\'customer_id\']);\r\n		$counter = 0;\r\n		foreach ($customer_products_total as $total) {\r\n			$counter += count(explode(\',\',$total[\'counter\'],0));\r\n		}\r\n		$total = $counter;\r\n				\r\n		$customer_products = $this->model_customer_customer->getCustomerProducts($filter_data, $this->request->get[\'customer_id\']);\r\n\r\n		foreach ($customer_products as $product) {\r\n			\r\n			if ($product[\'image\'] && file_exists(DIR_IMAGE . $product[\'image\'])) {\r\n				$image_product = $this->model_tool_image->resize($product[\'image\'], 40, 40);\r\n			} else {\r\n				$image_product = $this->model_tool_image->resize(\'no_image.jpg\', 40, 40);\r\n			}\r\n			\r\n			$data[\'customer_product\'][] = array(\r\n				\'product_id\' 						=> $product[\'product_id\'],\r\n				\'product_id_url\' 					=> $this->url->link(\'catalog/product/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&product_id=\' . $product[\'product_id\'], true),\r\n				\'image\'      						=> $image_product,\r\n				\'sku\'    							=> $product[\'sku\'],\r\n				\'model\'    							=> $product[\'model\'],\r\n				\'name\'     							=> $product[\'name\'],\r\n				\'product_option\'    				=> html_entity_decode($product[\'product_option\']),	\r\n				\'manufacturer\'  					=> $product[\'manufacturer\'],\r\n				\'categories\'  						=> $product[\'categories\'],\r\n				\'quantity\' 							=> $product[\'quantity\'],\r\n				\'total_excl_vat\'  				  	=> $this->currency->format($product[\'total_excl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'prod_tax\'    						=> $this->currency->format($product[\'prod_tax\'], $this->config->get(\'config_currency\')),												\r\n				\'total_incl_vat\'   		 			=> $this->currency->format($product[\'total_incl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'product_order_ord_id\'     			=> $product[\'product_order_ord_id\'],\r\n				\'product_order_ord_idc\'     		=> $product[\'product_order_ord_idc\'],\r\n				\'product_order_date\'    			=> $product[\'product_order_date\'],\r\n				\'product_order_inv_no\'     			=> $product[\'product_order_inv_no\'],\r\n				\'product_order_shipping_method\' 	=> strip_tags($product[\'product_order_shipping_method\'], \'<br>\'),\r\n				\'product_order_payment_method\'  	=> strip_tags($product[\'product_order_payment_method\'], \'<br>\'),\r\n				\'product_order_status\'  			=> $product[\'product_order_status\'],\r\n				\'product_order_store\'      			=> $product[\'product_order_store\'],	\r\n				\'product_order_currency\' 			=> $product[\'product_order_currency\'],\r\n				\'product_order_price\' 				=> $product[\'product_order_price\'],\r\n				\'product_order_quantity\' 			=> $product[\'product_order_quantity\'],\r\n				\'product_order_total_excl_vat\'  	=> $product[\'product_order_total_excl_vat\'],				\r\n				\'product_order_tax\'  				=> $product[\'product_order_tax\'],				\r\n				\'product_order_total_incl_vat\'  	=> $product[\'product_order_total_incl_vat\'],\r\n				\'total_quantity\' 					=> $product[\'total_quantity\'],\r\n				\'total_total_excl_vat\' 				=> $this->currency->format($product[\'total_total_excl_vat\'], $this->config->get(\'config_currency\')),\r\n				\'total_prod_tax\' 					=> $this->currency->format($product[\'total_prod_tax\'], $this->config->get(\'config_currency\')),\r\n				\'total_total_incl_vat\' 				=> $this->currency->format($product[\'total_total_incl_vat\'], $this->config->get(\'config_currency\'))\r\n			);\r\n		}\r\n\r\n		$url = \'\';\r\n\r\n		if (isset($this->request->get[\'filter_products_date_start\'])) {\r\n			$url .= \'&filter_products_date_start=\' . $this->request->get[\'filter_products_date_start\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_products_date_end\'])) {\r\n			$url .= \'&filter_products_date_end=\' . $this->request->get[\'filter_products_date_end\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_products_range\'])) {\r\n			$url .= \'&filter_products_range=\' . $this->request->get[\'filter_products_range\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_products_order_status\'])) {\r\n			$url .= \'&filter_products_order_status=\' . $this->request->get[\'filter_products_order_status\'];\r\n		}\r\n										\r\n		if ($order_products == \'ASC\') {\r\n			$url .= \'&order_products=DESC\';\r\n		} else {\r\n			$url .= \'&order_products=ASC\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'page_products\'])) {\r\n			$url .= \'&page_products=\' . $this->request->get[\'page_products\'];\r\n		}\r\n								\r\n		$data[\'sort_products_sku\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=sku\' . $url, true);\r\n		$data[\'sort_products_model\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=op.model\' . $url, true);\r\n		$data[\'sort_products_product\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=op.name\' . $url, true);\r\n		$data[\'sort_products_category\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=categories\' . $url, true);\r\n		$data[\'sort_products_manufacturer\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=manufacturer\' . $url, true);		\r\n		$data[\'sort_products_quantity\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=quantity\' . $url, true);\r\n		$data[\'sort_products_total_excl_vat\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=total_excl_vat\' . $url, true);\r\n		$data[\'sort_products_prod_tax\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=prod_tax\' . $url, true);		\r\n		$data[\'sort_products_total_incl_vat\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_products=total_incl_vat\' . $url, true);\r\n\r\n		$pagination_products = new Pagination();\r\n		$pagination_products->total = $total;\r\n		$pagination_products->page = $page_products;\r\n		$pagination_products->limit = $this->config->get(\'config_limit_admin\');\r\n		$pagination_products->text = $this->language->get(\'text_pagination\');\r\n		$pagination_products->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_products={page}\', true);\r\n			\r\n		$data[\'pagination_products\'] = $pagination_products->render();\r\n\r\n		$data[\'results_products\'] = sprintf($this->language->get(\'text_pagination\'), ($total) ? (($page_products - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_products - 1) * $this->config->get(\'config_limit_admin\')) > ($total - $this->config->get(\'config_limit_admin\'))) ? $total : ((($page_products - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $total, ceil($total / $this->config->get(\'config_limit_admin\')));\r\n										\r\n		$data[\'filter_products_date_start\'] = $filter_products_date_start; \r\n		$data[\'filter_products_date_end\'] = $filter_products_date_end; 		\r\n		$data[\'filter_products_range\'] = $filter_products_range; \r\n		$data[\'filter_products_order_status\'] = $filter_products_order_status;	\r\n		\r\n		$data[\'sort_products\'] = $sort_products;\r\n		$data[\'order_products\'] = $order_products;\r\n		\r\n		\r\n		if (isset($this->request->get[\'filter_start_date\'])) {\r\n			$filter_start_date = $this->request->get[\'filter_start_date\'];\r\n		} else {\r\n			$filter_start_date = \'\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'filter_end_date\'])) {\r\n			$filter_end_date = $this->request->get[\'filter_end_date\'];\r\n		} else {\r\n			$filter_end_date = \'\';\r\n		}\r\n	\r\n		$data[\'ranges\'] = array();\r\n		\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_custom\'),\r\n			\'value\' => \'custom\',\r\n			\'style\' => \'color:#666\',\r\n		);			\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_today\'),\r\n			\'value\' => \'today\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_yesterday\'),\r\n			\'value\' => \'yesterday\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_week\'),\r\n			\'value\' => \'week\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_month\'),\r\n			\'value\' => \'month\',\r\n			\'style\' => \'color:#090\',\r\n		);					\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_quarter\'),\r\n			\'value\' => \'quarter\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_year\'),\r\n			\'value\' => \'year\',\r\n			\'style\' => \'color:#090\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_week\'),\r\n			\'value\' => \'current_week\',\r\n			\'style\' => \'color:#06C\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_month\'),\r\n			\'value\' => \'current_month\',\r\n			\'style\' => \'color:#06C\',\r\n		);	\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_quarter\'),\r\n			\'value\' => \'current_quarter\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_current_year\'),\r\n			\'value\' => \'current_year\',\r\n			\'style\' => \'color:#06C\',\r\n		);			\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_week\'),\r\n			\'value\' => \'last_week\',\r\n			\'style\' => \'color:#F90\',\r\n		);\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_month\'),\r\n			\'value\' => \'last_month\',\r\n			\'style\' => \'color:#F90\',\r\n		);	\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_quarter\'),\r\n			\'value\' => \'last_quarter\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_last_year\'),\r\n			\'value\' => \'last_year\',\r\n			\'style\' => \'color:#F90\',\r\n		);			\r\n		$data[\'ranges\'][] = array(\r\n			\'text\'  => $this->language->get(\'stat_all_time\'),\r\n			\'value\' => \'all_time\',\r\n			\'style\' => \'color:#F00\',\r\n		);\r\n		\r\n		if (isset($this->request->get[\'filter_range\'])) {\r\n			$filter_range = $this->request->get[\'filter_range\'];\r\n		} else {\r\n			$filter_range = \'all_time\'; //show All Time in Statistical Range by default\r\n		}\r\n\r\n		if (isset($this->request->get[\'sort_track\'])) {\r\n			$sort_track = $this->request->get[\'sort_track\'];\r\n		} else {\r\n			$sort_track = \'access_time\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'order_track\'])) {\r\n			$order_track = $this->request->get[\'order_track\'];\r\n		} else {\r\n			$order_track = \'DESC\';\r\n		}\r\n				\r\n		if (isset($this->request->get[\'page_track\'])) {\r\n			$page_track = $this->request->get[\'page_track\'];\r\n		} else {\r\n			$page_track = 1;\r\n		}\r\n\r\n		$data[\'sort_track\'] = $sort_track;\r\n		$data[\'order_track\'] = $order_track;\r\n		$data[\'page_track\'] = $page_track;\r\n								\r\n		$data[\'customer_track\'] = array();	\r\n					\r\n		$filter_data = array(\r\n			\'filter_range\'			=>	$filter_range,\r\n			\'filter_start_date\'		=>	$filter_start_date, \r\n			\'filter_end_date\'		=>	$filter_end_date,\r\n			\'sort_track\'           	=>	$sort_track,\r\n			\'order_track\'          	=>	$order_track,\r\n			\'start_track\'          	=>	($page_track - 1) * $this->config->get(\'config_limit_admin\'),\r\n			\'limit_track\'          	=>	$this->config->get(\'config_limit_admin\')					\r\n		);\r\n\r\n		$this->load->model(\'customer/customer\');\r\n						\r\n		$customer_tracks_total = $this->model_customer_customer->getCustomerTrackTotal($filter_data, $this->request->get[\'customer_id\']);\r\n			\r\n		$customer_tracks = $this->model_customer_customer->getCustomerTrack($filter_data, $this->request->get[\'customer_id\']); \r\n					\r\n		foreach ($customer_tracks as $track) {\r\n			$data[\'customer_track\'][] = array(\r\n				\'ip_address\'    			=> $track[\'ip_address\'],\r\n				\'agent_type\'    			=> $track[\'agent_type\'],\r\n				\'route\' 					=> $track[\'route\'],\r\n				\'current_url\'    			=> htmlspecialchars_decode($track[\'current_url\']),					\r\n				\'referrer\'    				=> htmlspecialchars_decode($track[\'referrer\']),\r\n				\'visit_date\'  				=> date($this->config->get(\'adveci_date_format\') == \'DDMMYYYY\' ? \'d/m/Y\' : \'m/d/Y\', strtotime($track[\'access_time\'])),\r\n				\'visit_time\'    			=> date($this->config->get(\'adveci_hour_format\') == \'24\' ? \'H:i:s\' : \'g:i:s A\', strtotime($track[\'access_time\']))\r\n			);\r\n		}\r\n		\r\n		$furl = \'\';\r\n\r\n		if (isset($this->request->get[\'filter_start_date\'])) {\r\n			$furl .= \'&filter_start_date=\' . $this->request->get[\'filter_start_date\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_end_date\'])) {\r\n			$furl .= \'&filter_end_date=\' . $this->request->get[\'filter_end_date\'];\r\n		}\r\n		\r\n		if (isset($this->request->get[\'filter_range\'])) {\r\n			$furl .= \'&filter_range=\' . $this->request->get[\'filter_range\'];\r\n		}\r\n										\r\n		if ($order_track == \'ASC\') {\r\n			$furl .= \'&order_track=DESC\';\r\n		} else {\r\n			$furl .= \'&order_track=ASC\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'page_track\'])) {\r\n			$furl .= \'&page_track=\' . $this->request->get[\'page_track\'];\r\n		}\r\n								\r\n		$data[\'sort_track_page\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_track=route\' . $furl, true);\r\n		$data[\'sort_track_url\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_track=current_url\' . $furl, true);\r\n		$data[\'sort_track_referrer\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_track=referrer\' . $furl, true);\r\n		$data[\'sort_track_visit\'] = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&sort_track=access_time\' . $furl, true);		\r\n		\r\n		$pagination_track = new Pagination();\r\n		$pagination_track->total = $customer_tracks_total;\r\n		$pagination_track->page = $page_track;\r\n		$pagination_track->limit = $this->config->get(\'config_limit_admin\');\r\n		$pagination_track->url = $this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . \'&page_track={page}\', true);\r\n			\r\n		$data[\'pagination_track\'] = $pagination_track->render();\r\n		\r\n		$data[\'results_track\'] = sprintf($this->language->get(\'text_pagination\'), ($customer_tracks_total) ? (($page_track - 1) * $this->config->get(\'config_limit_admin\')) + 1 : 0, ((($page_track - 1) * $this->config->get(\'config_limit_admin\')) > ($customer_tracks_total - $this->config->get(\'config_limit_admin\'))) ? $customer_tracks_total : ((($page_track - 1) * $this->config->get(\'config_limit_admin\')) + $this->config->get(\'config_limit_admin\')), $customer_tracks_total, ceil($customer_tracks_total / $this->config->get(\'config_limit_admin\')));\r\n								\r\n		$data[\'filter_range\'] = $filter_range;\r\n		$data[\'filter_start_date\'] = $filter_start_date;\r\n		$data[\'filter_end_date\'] = $filter_end_date;	\r\n	\r\n		$data[\'sort_track\'] = $sort_track;\r\n		$data[\'order_track\'] = $order_track;\r\n		$data[\'page_track\'] = $page_track;\r\n					\r\n\r\n						\r\n 		if (isset($this->error[\'warning\'])) {\r\n			$data[\'error_warning\'] = $this->error[\'warning\'];\r\n		} else {\r\n			$data[\'error_warning\'] = \'\';\r\n		}\r\n\r\n		if (isset($this->request->get[\'delete_wishlist\'])) {\r\n			$this->delete_wishlist();\r\n		}\r\n		\r\n		$data[\'wishlist_products\'] = array();		\r\n		$cust_wishlists = $this->model_customer_customer->getCustomerWishList($this->request->get[\'customer_id\']);\r\n		$this->load->model(\'catalog/product\');\r\n		$this->load->model(\'tool/image\');			\r\n			\r\n		foreach ($cust_wishlists as $cust_wishlist) {\r\n		  $product_info = $this->model_catalog_product->getProduct($cust_wishlist[\'product_id\']);\r\n		  if ($product_info) {\r\n		  \r\n				if (isset($product_info[\'name\'])) {\r\n					if ($product_info[\'image\']) {\r\n						$image_wishlist = $this->model_tool_image->resize($product_info[\'image\'], 40, 40);\r\n					} else {\r\n						$image_wishlist = $this->model_tool_image->resize(\'no_image.jpg\', 40, 40);\r\n					}	\r\n\r\n			$special = false;\r\n\r\n			$product_specials = $this->model_catalog_product->getProductSpecials($product_info[\'product_id\']);\r\n\r\n			foreach ($product_specials  as $product_special) {\r\n				if (($product_special[\'date_start\'] == \'0000-00-00\' || strtotime($product_special[\'date_start\']) < time()) && ($product_special[\'date_end\'] == \'0000-00-00\' || strtotime($product_special[\'date_end\']) > time())) {\r\n					$special = $product_special[\'price\'];\r\n\r\n					break;\r\n				}\r\n			}\r\n									\r\n					$data[\'wishlist_products\'][] = array(\r\n						\'image\'      			=> $image_wishlist,															   \r\n						\'product_name\'			=> $product_info[\'name\'],\r\n						\'product_sku\'			=> $product_info[\'sku\'],\r\n						\'product_model\'			=> $product_info[\'model\'],\r\n						\'product_price\'			=> $this->currency->format($product_info[\'price\'], $this->config->get(\'config_currency\')),\r\n						\'product_special\'    	=> $special,\r\n						\'product_id\'			=> $product_info[\'product_id\'],\r\n						\'product_id_url\' 		=> $this->url->link(\'catalog/product/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&product_id=\' . $product_info[\'product_id\'], true)\r\n					);\r\n				} else {\r\n					$data[\'error_wishlist_product\'] = $this->language->get(\'error_wishlist_product\');\r\n				}\r\n		  } else {\r\n			  $this->model_customer_customer->deleteCustomerWishList($this->request->get[\'customer_id\']);\r\n		  }	\r\n		}\r\n		\r\n		if (isset($this->request->get[\'clear_cart\'])) {\r\n			$this->clear_cart();\r\n		}\r\n		\r\n		$data[\'cart_products\'] = array();		\r\n		$cust_carts = $this->model_customer_customer->getCustomerCart($this->request->get[\'customer_id\']);\r\n		$this->load->model(\'tool/image\');\r\n			\r\n		foreach ($cust_carts as $cust_cart) {\r\n			$stock = true;\r\n				\r\n			$product_query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"product_to_store p2s LEFT JOIN \" . DB_PREFIX . \"product p ON (p2s.product_id = p.product_id) LEFT JOIN \" . DB_PREFIX . \"product_description pd ON (p.product_id = pd.product_id) WHERE p2s.store_id = \'\" . (int)$this->config->get(\'config_store_id\') . \"\' AND p2s.product_id = \'\" . (int)$cust_cart[\'product_id\'] . \"\' AND pd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\' AND p.date_available <= NOW() AND p.status = \'1\'\");\r\n\r\n			if ($product_query->num_rows && ($cust_cart[\'quantity\'] > 0)) {		\r\n				$option_price = 0;\r\n				$option_data = array();\r\n					foreach (json_decode($cust_cart[\'option\']) as $product_option_id => $value) {\r\n						$option_query = $this->db->query(\"SELECT po.product_option_id, po.option_id, od.name, o.type FROM \" . DB_PREFIX . \"product_option po LEFT JOIN `\" . DB_PREFIX . \"option` o ON (po.option_id = o.option_id) LEFT JOIN \" . DB_PREFIX . \"option_description od ON (o.option_id = od.option_id) WHERE po.product_option_id = \'\" . (int)$product_option_id . \"\' AND po.product_id = \'\" . (int)$cust_cart[\'product_id\'] . \"\' AND od.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\");\r\n						if ($option_query->num_rows) {\r\n							if ($option_query->row[\'type\'] == \'select\' || $option_query->row[\'type\'] == \'radio\' || $option_query->row[\'type\'] == \'image\') {\r\n								$option_value_query = $this->db->query(\"SELECT pov.option_value_id, ovd.name, pov.quantity, pov.subtract, pov.price, pov.price_prefix, pov.points, pov.points_prefix, pov.weight, pov.weight_prefix FROM \" . DB_PREFIX . \"product_option_value pov LEFT JOIN \" . DB_PREFIX . \"option_value ov ON (pov.option_value_id = ov.option_value_id) LEFT JOIN \" . DB_PREFIX . \"option_value_description ovd ON (ov.option_value_id = ovd.option_value_id) WHERE pov.product_option_value_id = \'\" . (int)$value . \"\' AND pov.product_option_id = \'\" . (int)$product_option_id . \"\' AND ovd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\");\r\n							\r\n								if ($option_value_query->num_rows) {\r\n									if ($option_value_query->row[\'price_prefix\'] == \'+\') {\r\n										$option_price += $option_value_query->row[\'price\'];\r\n									} elseif ($option_value_query->row[\'price_prefix\'] == \'-\') {\r\n										$option_price -= $option_value_query->row[\'price\'];\r\n									}\r\n																	\r\n									$option_data[] = array(\r\n										\'name\'                    => $option_query->row[\'name\'],\r\n										\'option_value\'            => $option_value_query->row[\'name\'],\r\n										\'price\'                   => $option_value_query->row[\'price\'],\r\n										\'price_prefix\'            => $option_value_query->row[\'price_prefix\']\r\n									);\r\n								}\r\n							} elseif ($option_query->row[\'type\'] == \'checkbox\' && is_array($value)) {\r\n								foreach ($value as $product_option_value_id) {\r\n									$option_value_query = $this->db->query(\"SELECT pov.option_value_id, ovd.name, pov.quantity, pov.subtract, pov.price, pov.price_prefix, pov.points, pov.points_prefix, pov.weight, pov.weight_prefix FROM \" . DB_PREFIX . \"product_option_value pov LEFT JOIN \" . DB_PREFIX . \"option_value ov ON (pov.option_value_id = ov.option_value_id) LEFT JOIN \" . DB_PREFIX . \"option_value_description ovd ON (ov.option_value_id = ovd.option_value_id) WHERE pov.product_option_value_id = \'\" . (int)$product_option_value_id . \"\' AND pov.product_option_id = \'\" . (int)$product_option_id . \"\' AND ovd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\");\r\n									\r\n									if ($option_value_query->num_rows) {\r\n										if ($option_value_query->row[\'price_prefix\'] == \'+\') {\r\n											$option_price += $option_value_query->row[\'price\'];\r\n										} elseif ($option_value_query->row[\'price_prefix\'] == \'-\') {\r\n											$option_price -= $option_value_query->row[\'price\'];\r\n										}\r\n																			\r\n										$option_data[] = array(\r\n											\'name\'                    => $option_query->row[\'name\'],\r\n											\'option_value\'            => $option_value_query->row[\'name\'],\r\n											\'price\'                   => $option_value_query->row[\'price\'],\r\n											\'price_prefix\'            => $option_value_query->row[\'price_prefix\']\r\n										);\r\n									}\r\n								}\r\n							} elseif ($option_query->row[\'type\'] == \'text\' || $option_query->row[\'type\'] == \'textarea\' || $option_query->row[\'type\'] == \'file\' || $option_query->row[\'type\'] == \'date\' || $option_query->row[\'type\'] == \'datetime\' || $option_query->row[\'type\'] == \'time\') {\r\n							\r\n								$option_data[] = array(\r\n									\'name\'                    => $option_query->row[\'name\'],\r\n									\'option_value\'            => $value,\r\n									\'price\'                   => \'\',\r\n									\'price_prefix\'            => \'\'\r\n								);\r\n							}\r\n						}\r\n					}\r\n					\r\n					$customer_info = $this->model_customer_customer->getCustomer($this->request->get[\'customer_id\']);\r\n					$price = $product_query->row[\'price\'];\r\n					\r\n					// Product Discounts\r\n					$discount_quantity = 0;\r\n\r\n					$cust_cart_2_query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"cart WHERE customer_id = \'\" . $this->request->get[\'customer_id\'] . \"\'\");\r\n\r\n					foreach ($cust_cart_2_query->rows as $cust_cart_2) {\r\n						if ($cust_cart_2[\'product_id\'] == $cust_cart[\'product_id\']) {\r\n							$discount_quantity += $cust_cart_2[\'quantity\'];\r\n						}\r\n					}\r\n\r\n					$product_discount_query = $this->db->query(\"SELECT price FROM \" . DB_PREFIX . \"product_discount WHERE product_id = \'\" . (int)$cust_cart[\'product_id\'] . \"\' AND customer_group_id = \'\" . (int)$this->config->get(\'config_customer_group_id\') . \"\' AND quantity <= \'\" . (int)$discount_quantity . \"\' AND ((date_start = \'0000-00-00\' OR date_start < NOW()) AND (date_end = \'0000-00-00\' OR date_end > NOW())) ORDER BY quantity DESC, priority ASC, price ASC LIMIT 1\");\r\n\r\n					if ($product_discount_query->num_rows) {\r\n						$price = $product_discount_query->row[\'price\'];\r\n					}\r\n\r\n					// Product Specials\r\n					$product_special_query = $this->db->query(\"SELECT price FROM \" . DB_PREFIX . \"product_special WHERE product_id = \'\" . (int)$cust_cart[\'product_id\'] . \"\' AND customer_group_id = \'\" . (int)$this->config->get(\'config_customer_group_id\') . \"\' AND ((date_start = \'0000-00-00\' OR date_start < NOW()) AND (date_end = \'0000-00-00\' OR date_end > NOW())) ORDER BY priority ASC, price ASC LIMIT 1\");\r\n\r\n					if ($product_special_query->num_rows) {\r\n						$price = $product_special_query->row[\'price\'];\r\n					}\r\n					\r\n					// Stock\r\n					if (!$product_query->row[\'quantity\'] || ($product_query->row[\'quantity\'] < $cust_cart[\'quantity\'])) {\r\n						$stock = false;\r\n					}\r\n\r\n					if (isset($product_query->row[\'name\'])) {\r\n						if ($product_query->row[\'image\']) {\r\n							$image_cart = $this->model_tool_image->resize($product_query->row[\'image\'], 40, 40);\r\n						} else {\r\n							$image_cart = $this->model_tool_image->resize(\'no_image.jpg\', 40, 40);\r\n						}	\r\n\r\n						$data[\'cart_products\'][] = array(\r\n							\'image\'      			=> $image_cart,\r\n							\'product_name\'			=> $product_query->row[\'name\'],\r\n							\'product_sku\'			=> $product_query->row[\'sku\'],\r\n							\'product_model\'			=> $product_query->row[\'model\'],						\r\n							\'product_id\'			=> $product_query->row[\'product_id\'],\r\n							\'product_id_url\' 		=> $this->url->link(\'catalog/product/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&product_id=\' . $product_query->row[\'product_id\'], true),\r\n							\'product_options\'		=> $option_data,\r\n							\'quantity\'				=> $cust_cart[\'quantity\'],\r\n							\'price\'           		=> $this->currency->format(($price + $option_price), $this->config->get(\'config_currency\')),\r\n							\'total\'           		=> $this->currency->format(($price + $option_price) * $cust_cart[\'quantity\'], $this->config->get(\'config_currency\'))\r\n						);\r\n					} else {\r\n						$data[\'error_cart_product\'] = $this->language->get(\'error_cart_product\');\r\n					}\r\n																				\r\n				} else {\r\n					$this->model_customer_customer->clearCustomerCart($this->request->get[\'customer_id\']);\r\n				}\r\n		   }\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\nprotected function validateForm() {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n	public function delete_track() {\r\n		$this->load->language(\'customer/customer\');\r\n		$this->load->model(\'customer/customer\');\r\n		$this->model_customer_customer->deleteCustomerTrack($this->request->get[\'customer_id\']);\r\n		$furl = \'\';\r\n		$this->response->redirect($this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . $furl, true));\r\n	}\r\n	\r\n  	public function clear_cart() {\r\n		$this->load->language(\'customer/customer\');\r\n		$this->load->model(\'customer/customer\');\r\n		$this->model_customer_customer->clearCustomerCart($this->request->get[\'customer_id\']);\r\n		$curl = \'\';\r\n		$this->response->redirect($this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . $curl, true));\r\n	}\r\n	\r\n  	public function delete_wishlist() {\r\n		$this->load->language(\'customer/customer\');\r\n		$this->load->model(\'customer/customer\');\r\n		$this->model_customer_customer->deleteCustomerWishList($this->request->get[\'customer_id\']);\r\n		$wurl = \'\';\r\n		$this->response->redirect($this->url->link(\'customer/customer/edit\', \'user_token=\' . $this->session->data[\'user_token\'] . \'&customer_id=\' . $this->request->get[\'customer_id\'] . $wurl, true));\r\n	}	\r\n	\r\n	public function IsInstalled() {\r\n		$query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"extension WHERE code = \'adv_extended_cust_info\'\");\r\n		if (empty($query->num_rows)) {\r\n			return false;\r\n		}\r\n		return true;\r\n	}	\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search index=\"1\"><![CDATA[\r\n$results = $this->model_customer_customer->getCustomers($filter_data);\r\n            ]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n$results = $this->model_customer_customer->getCustomersForAutocomplete($filter_data);\r\n            ]]></add>\r\n        </operation>					\r\n	</file>\r\n\r\n	<file path=\"admin/controller/extension/extension/module.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n$extensions = $this->model_setting_extension->getInstalled(\'module\');\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		if (isset($this->session->data[\'error_eci\'])) {\r\n			$data[\'error_warning\'] = $this->session->data[\'error_eci\'];\r\n\r\n			unset($this->session->data[\'error_eci\']);\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n	\r\n	<file path=\"admin/language/*/customer/customer.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\n<?php\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n$_[\'adv_ext_name\']						= \'ADV Extended Customer Information\';\r\n$_[\'adv_ext_version\']					= \'3.0\';			\r\n$_[\'text_confirm_reset\']	  			= \'Delete track for this customer?\\nAre you sure?\';\r\n$_[\'text_confirm_wdelete\']	  			= \'Delete wishlist for this customer?\\nAre you sure?\';\r\n$_[\'text_confirm_cdelete\']	  			= \'Delete shopping cart for this customer?\\nAre you sure?\';\r\n$_[\'text_clear_cart\']		  			= \'Clear Cart\';\r\n$_[\'text_clear_wishlist\']	  			= \'Clear Wishlist\';\r\n$_[\'button_delete_track\']		  		= \'Delete Track\';\r\n\r\n$_[\'column_order_order_id\']           	= \'Order ID\';\r\n$_[\'column_order_date_added\']         	= \'Date Added\';\r\n$_[\'column_order_inv_no\']       	    = \'Invoice No.\';\r\n$_[\'column_order_shipping_method\']    	= \'Shipping Method\';\r\n$_[\'column_order_payment_method\']     	= \'Payment Method\';\r\n$_[\'column_order_status\']       		= \'Status\';\r\n$_[\'column_order_store\']     		    = \'Store\';\r\n$_[\'column_order_currency\']    			= \'Currency\';\r\n$_[\'column_order_quantity\']     		= \'Products\';\r\n$_[\'column_order_sub_total\']      		= \'Sub-Total\';\r\n$_[\'column_order_shipping\']      		= \'Shipping\';\r\n$_[\'column_order_tax\']        			= \'Taxes\';\r\n$_[\'column_order_value\']        		= \'Order Total\';\r\n$_[\'column_total_value\']      			= \'Total Value\';\r\n$_[\'column_total_orders\']     			= \'Orders\';\r\n$_[\'column_quantity\']         			= \'Quantity\';\r\n$_[\'column_image\'] 			  			= \'Image\';\r\n$_[\'column_sku\']              			= \'SKU\';\r\n$_[\'column_model\']            			= \'Model\';\r\n$_[\'column_product\']          			= \'Product Name\';\r\n$_[\'column_product_options\'] 			= \'Product Options\';\r\n$_[\'column_category\'] 		  			= \'Category\';\r\n$_[\'column_manufacturer\'] 	  			= \'Manufacturer\';\r\n$_[\'column_prod_price\'] 				= \'Price\';\r\n$_[\'column_prod_quantity\'] 				= \'Quantity\';\r\n$_[\'column_prod_total_excl_vat\']		= \'Total excl. Tax\';\r\n$_[\'column_prod_tax\']        			= \'Tax\';\r\n$_[\'column_prod_total_incl_vat\']		= \'Total incl. Tax\';\r\n$_[\'column_unit_price\']        			= \'Unit Price\';\r\n$_[\'column_prod_total\']        			= \'Total\';\r\n$_[\'column_route\']    		  			= \'Page\';\r\n$_[\'column_ip_address\']    	  			= \'IP Address<br><span style=\"font-size:10px;\">(Browser Used)</span>\';\r\n$_[\'column_current_url\'] 	  			= \'Page URL\';\r\n$_[\'column_referrer\'] 	  				= \'<span style=\"color:#999;\">Referrer Site</span>\';\r\n$_[\'column_access_date\']      			= \'Visit Date\';\r\n$_[\'column_access_time\']      			= \'Click Time\';\r\n$_[\'column_cust_totals\']       	  		= \'Totals:\';\r\n\r\n$_[\'text_all\']   						= \'&nbsp;-- Select All --\';\r\n$_[\'text_all_status\']   				= \'All Statuses\';\r\n$_[\'text_selected\']      	  			= \'All Selected\';\r\n\r\n$_[\'tab_order_history\']    				= \'Order History\';\r\n$_[\'tab_purchased_products\']   			= \'Purchased Products\';\r\n$_[\'tab_cart\']  		  	  			= \'Shopping Cart\';\r\n$_[\'tab_wishlist\']  		  			= \'Wishlist\';\r\n$_[\'tab_customer_track\']  	  			= \'Customer Track\';\r\n\r\n$_[\'entry_range\']		  				= \'Statistical Range:\';\r\n$_[\'entry_date_start\']		  			= \'Date Start:\';\r\n$_[\'entry_date_end\']		  			= \'Date End:\';\r\n$_[\'entry_order_status\']     			= \'Order Status:\';\r\n$_[\'entry_note\']     					= \'Note\';\r\n\r\n$_[\'stat_custom\']       				= \'Custom (use date range)\';\r\n$_[\'stat_today\']         				= \'Today\';\r\n$_[\'stat_yesterday\']         			= \'Yesterday\';\r\n$_[\'stat_week\']         				= \'Week (today -7 days)\';\r\n$_[\'stat_month\']        				= \'Month (today -30 days)\';\r\n$_[\'stat_quarter\']      				= \'Quarter (today -91 days)\';\r\n$_[\'stat_year\']         				= \'Year (today -365 days)\';\r\n$_[\'stat_current_week\']        			= \'Current Week (monday to today)\';\r\n$_[\'stat_current_month\']        		= \'Current Month (from 1st to today)\';\r\n$_[\'stat_current_quarter\']        		= \'Current Quarter (current term)\';\r\n$_[\'stat_current_year\']        			= \'Current Year (1st Jan to today)\';\r\n$_[\'stat_last_week\']        			= \'Last Week (monday to sunday)\';\r\n$_[\'stat_last_month\']        			= \'Last Month (from 1st to 31st)\';\r\n$_[\'stat_last_quarter\']        			= \'Last Quarter (last term)\';\r\n$_[\'stat_last_year\']        			= \'Last Year (1st Jan to 31st Dec)\';\r\n$_[\'stat_all_time\']         			= \'All Time\';\r\n\r\n$_[\'error_cart_product\']	  			= \'Warning: There is a product in your customer\\\'s cart that is no longer in your product list!\';\r\n$_[\'error_wishlist_product\']  			= \'Warning: There is a product in your customer\\\'s wishlist that is no longer in your product list!\';\r\n$_[\'error_installed\']       			= \'ADV Extended Customer Information is not installed!\';\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n\r\n	<file path=\"admin/model/catalog/product.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\npublic function getProductRelated($product_id) {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n	public function getProductManufacturers($manufacturer_id) {\r\n		$product_manufacturer_data = array();\r\n		\r\n		$query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"manufacturer WHERE manufacturer_id = \'\" . (int)$manufacturer_id . \"\'\");\r\n		\r\n		foreach ($query->rows as $result) {\r\n			$product_manufacturer_data[] = $result[\'manufacturer_id\'];\r\n		}\r\n\r\n		return $product_manufacturer_data;\r\n	}\r\n            ]]></add>\r\n        </operation>\r\n	</file>\r\n\r\n	<file path=\"admin/model/customer/customer.php\">\r\n        <operation>\r\n            <search><![CDATA[\r\nclass ModelCustomerCustomer extends Model {\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n	public function getCustomerOrders($data = array(), $customer_id) {		\r\n		$user_token = $this->session->data[\'user_token\'];\r\n		\r\n		if (isset($data[\'filter_orders_date_start\']) && $data[\'filter_orders_date_start\']) {\r\n			$date_start = $data[\'filter_orders_date_start\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_orders_date_end\']) && $data[\'filter_orders_date_end\']) {\r\n			$date_end = $data[\'filter_orders_date_end\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_orders_range\'])) {\r\n			$range_orders = $data[\'filter_orders_range\'];\r\n		} else {\r\n			$range_orders = \'all_time\';\r\n		}\r\n		\r\n		switch($range_orders) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape($data[\'filter_orders_date_start\']) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= \'\" . $this->db->escape($data[\'filter_orders_date_end\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(date_added) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(date_added) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE()\";\r\n				break;					\r\n			case \'week\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";	\r\n				break;			\r\n			case \'month\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(date_added) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(date_added) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';				\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n\r\n		$date = \' AND (\' . $date_start . $date_end . \')\';\r\n\r\n		$order_status = \'\';\r\n		if (!empty($data[\'filter_orders_order_status\'])) {\r\n			$order_status = \" AND (\";\r\n			$implode = array();\r\n			foreach ($data[\'filter_orders_order_status\'] as $filter_orders_order_status) {\r\n				$implode[] = \"o.order_status_id = \'\" . (int)$filter_orders_order_status . \"\'\";\r\n			}\r\n\r\n			if ($implode) {\r\n				$order_status .= implode(\" OR \", $implode) . \"\";\r\n			}\r\n			$order_status .= \")\";\r\n		} else {\r\n		$order_status = \' AND o.order_status_id > 0\';\r\n		}\r\n\r\n		$sql = \"SELECT *, \r\n		CONCAT(o.invoice_prefix, \' \', o.invoice_no) AS inv_number, \r\n		(SELECT SUM(op.quantity) FROM `\" . DB_PREFIX . \"order_product` op WHERE op.order_id = o.order_id GROUP BY op.order_id) AS products, \r\n		(SELECT SUM(ot.value) FROM `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'sub_total\' GROUP BY ot.order_id) AS sub_total, \r\n		(SELECT SUM(ot.value) FROM `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'shipping\' GROUP BY ot.order_id) AS shipping, \r\n		(SELECT SUM(ROUND(ot.value, 2)) FROM `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'tax\' GROUP BY ot.order_id) AS tax, \r\n		(SELECT os.name FROM `\" . DB_PREFIX . \"order_status` os WHERE os.order_status_id = o.order_status_id AND os.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\') AS os_name, \r\n		(SELECT SUM(op.quantity) FROM `\" . DB_PREFIX . \"order` o, `\" . DB_PREFIX . \"order_product` op WHERE op.order_id = o.order_id AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \" GROUP BY o.customer_id) AS total_products, \r\n		(SELECT SUM(ot.value) FROM `\" . DB_PREFIX . \"order` o, `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'sub_total\' AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \" GROUP BY o.customer_id) AS total_sub_total, \r\n		(SELECT SUM(ot.value) FROM `\" . DB_PREFIX . \"order` o, `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'shipping\' AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \" GROUP BY o.customer_id) AS total_shipping, \r\n		(SELECT SUM(ot.value) FROM `\" . DB_PREFIX . \"order` o, `\" . DB_PREFIX . \"order_total` ot WHERE ot.order_id = o.order_id AND ot.code = \'tax\' AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \" GROUP BY o.customer_id) AS total_tax, \r\n		(SELECT SUM(o.total) FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \" GROUP BY o.customer_id) AS total_value \r\n		\r\n		FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status;\r\n		\r\n		$sql .= \" GROUP BY o.order_id\";\r\n		\r\n		$sort_data = array(\r\n			\'o.order_id\',\r\n			\'o.date_added\',\r\n			\'inv_number\',\r\n			\'o.shipping_method\',\r\n			\'o.payment_method\',\r\n			\'os_name\',\r\n			\'o.store_name\',\r\n			\'o.currency_code\',			\r\n			\'products\',\r\n			\'sub_total\',												\r\n			\'shipping\',\r\n			\'tax\',\r\n			\'o.total\'\r\n		);	\r\n			\r\n		if (isset($data[\'sort_orders\']) && in_array($data[\'sort_orders\'], $sort_data)) {\r\n			$sql .= \" ORDER BY \" . $data[\'sort_orders\'];	\r\n		} else {\r\n			$sql .= \" ORDER BY order_id\";	\r\n		}\r\n			\r\n		if (isset($data[\'order_orders\']) && ($data[\'order_orders\'] == \'DESC\')) {\r\n			$sql .= \" DESC\";\r\n		} else {\r\n			$sql .= \" ASC\";\r\n		}\r\n					\r\n		if (isset($data[\'start_orders\']) || isset($data[\'limit_orders\'])) {\r\n			if ($data[\'start_orders\'] < 0) {\r\n				$data[\'start_orders\'] = 0;\r\n			}				\r\n\r\n			if ($data[\'limit_orders\'] < 1) {\r\n				$data[\'limit_orders\'] = 20;\r\n			}	\r\n		\r\n			$sql .= \" LIMIT \" . (int)$data[\'start_orders\'] . \",\" . (int)$data[\'limit_orders\'];\r\n		}\r\n		\r\n		$query = $this->db->query($sql);\r\n		\r\n		return $query->rows;\r\n	}	\r\n\r\n	public function getCustomerOrdersTotal($data = array(), $customer_id) {\r\n		if (isset($data[\'filter_orders_date_start\']) && $data[\'filter_orders_date_start\']) {\r\n			$date_start = $data[\'filter_orders_date_start\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_orders_date_end\']) && $data[\'filter_orders_date_end\']) {\r\n			$date_end = $data[\'filter_orders_date_end\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_orders_range\'])) {\r\n			$range_orders = $data[\'filter_orders_range\'];\r\n		} else {\r\n			$range_orders = \'all_time\';\r\n		}\r\n		\r\n		switch($range_orders) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape($data[\'filter_orders_date_start\']) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= \'\" . $this->db->escape($data[\'filter_orders_date_end\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(date_added) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(date_added) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE()\";\r\n				break;					\r\n			case \'week\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";	\r\n				break;			\r\n			case \'month\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(date_added) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(date_added) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';				\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n\r\n		$sql = \"SELECT COUNT(o.order_id) AS total FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = \'\" . (int)$customer_id . \"\'\";\r\n\r\n		if (!empty($data[\'filter_orders_order_status\'])) {\r\n			$sql .= \" AND (\";\r\n			$implode = array();\r\n			foreach ($data[\'filter_orders_order_status\'] as $filter_orders_order_status) {\r\n				$implode[] = \"o.order_status_id = \'\" . (int)$filter_orders_order_status . \"\'\";\r\n			}\r\n\r\n			if ($implode) {\r\n				$sql .= implode(\" OR \", $implode) . \"\";\r\n			}\r\n			$sql .= \")\";\r\n		} else {\r\n			$sql .= \" AND o.order_status_id > \'0\'\";\r\n		}\r\n				\r\n		$sql .= \' AND (\' . $date_start . $date_end . \')\';\r\n				\r\n		$query = $this->db->query($sql);\r\n		\r\n		return $query->row[\'total\'];\r\n	}\r\n\r\n	public function getCustomerProducts($data = array(), $customer_id) {\r\n		$query = $this->db->query(\"SET SESSION group_concat_max_len=500000\");\r\n		$user_token = $this->session->data[\'user_token\'];\r\n		\r\n		if (isset($data[\'filter_products_date_start\']) && $data[\'filter_products_date_start\']) {\r\n			$date_start = $data[\'filter_products_date_start\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_products_date_end\']) && $data[\'filter_products_date_end\']) {\r\n			$date_end = $data[\'filter_products_date_end\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_products_range\'])) {\r\n			$range_products = $data[\'filter_products_range\'];\r\n		} else {\r\n			$range_products = \'all_time\';\r\n		}\r\n		\r\n		switch($range_products) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape($data[\'filter_products_date_start\']) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= \'\" . $this->db->escape($data[\'filter_products_date_end\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(date_added) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(date_added) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE()\";\r\n				break;					\r\n			case \'week\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";	\r\n				break;			\r\n			case \'month\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(date_added) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(date_added) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';				\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n\r\n		$date = \' AND (\' . $date_start . $date_end . \')\';\r\n\r\n		$order_status = \'\';\r\n		if (!empty($data[\'filter_products_order_status\'])) {\r\n			$order_status = \" AND (\";\r\n			$implode = array();\r\n			foreach ($data[\'filter_products_order_status\'] as $filter_products_order_status) {\r\n				$implode[] = \"o.order_status_id = \'\" . (int)$filter_products_order_status . \"\'\";\r\n			}\r\n\r\n			if ($implode) {\r\n				$order_status .= implode(\" OR \", $implode) . \"\";\r\n			}\r\n			$order_status .= \")\";\r\n		} else {\r\n		$order_status = \' AND o.order_status_id > 0\';\r\n		}\r\n\r\n		$sql = \"SELECT \r\n		(SELECT p.image FROM `\" . DB_PREFIX . \"product` p WHERE op.product_id = p.product_id) AS image, \r\n		(SELECT p.sku FROM `\" . DB_PREFIX . \"product` p WHERE op.product_id = p.product_id) AS sku, \r\n		op.product_id, \r\n		op.order_product_id, \r\n		op.model, 		\r\n		op.name, \r\n		(SELECT GROUP_CONCAT(CONCAT(oo.name,\': \',oo.value) SEPARATOR \'<br>\') FROM `\" . DB_PREFIX . \"order_option` oo WHERE op.order_product_id = oo.order_product_id AND (oo.type != \'textarea\' OR oo.type != \'file\' OR oo.type != \'date\' OR oo.type != \'datetime\' OR oo.type != \'time\') ORDER BY op.order_product_id) AS product_option,  \r\n		(SELECT GROUP_CONCAT(cd.name SEPARATOR \', \') FROM `\" . DB_PREFIX . \"category_description` cd, `\" . DB_PREFIX . \"category` c, `\" . DB_PREFIX . \"product_to_category` p2c WHERE op.product_id = p2c.product_id AND p2c.category_id = c.category_id AND (c.category_id = cd.category_id OR c.parent_id = cd.category_id) AND cd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\' AND c.status > 0) AS categories, \r\n		(SELECT m.name FROM `\" . DB_PREFIX . \"manufacturer` m, `\" . DB_PREFIX . \"product` p WHERE p.manufacturer_id = m.manufacturer_id AND op.product_id = p.product_id) AS manufacturer, \r\n		SUM(op.quantity) AS quantity, \r\n		SUM(op.total) AS total_excl_vat, \r\n		SUM(op.tax*op.quantity) AS prod_tax, \r\n		SUM(op.total+(op.tax*op.quantity)) AS total_incl_vat, \r\n		GROUP_CONCAT(\'<a href=\\\"index.php?route=sale/order/info&user_token=$user_token&order_id=\',op.order_id,\'\\\">\',op.order_id,\'</a>\' ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_ord_id, \r\n		GROUP_CONCAT(op.order_id ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_ord_idc, \";\r\n		if ($this->config->get(\'adveci_date_format\') == \'DDMMYYYY\') {																																																																																																																																																																																																																																												   			\r\n			$sql .= \"GROUP_CONCAT(DATE_FORMAT(o.date_added, \'%d/%m/%Y\') ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_date, \";\r\n		} else {	\r\n			$sql .= \"GROUP_CONCAT(DATE_FORMAT(o.date_added, \'%m/%d/%Y\') ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_date, \";\r\n		}\r\n		$sql .= \"GROUP_CONCAT(IFNULL(o.invoice_prefix,\'&nbsp;&nbsp;\'),IFNULL(o.invoice_no,\'&nbsp;&nbsp;\') ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_inv_no, \r\n		GROUP_CONCAT(IF (o.shipping_method = \'\',\'&nbsp;&nbsp;\',o.shipping_method) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_shipping_method, \r\n		GROUP_CONCAT(IF (o.payment_method = \'\',\'&nbsp;&nbsp;\',o.payment_method) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_payment_method, \r\n		GROUP_CONCAT(IFNULL((SELECT os.name FROM `\" . DB_PREFIX . \"order_status` os WHERE os.order_status_id = o.order_status_id AND os.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'),\'&nbsp;&nbsp;\') ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_status, \r\n 		GROUP_CONCAT(o.store_name ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_store, \r\n		GROUP_CONCAT(o.currency_code ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_currency, \r\n		GROUP_CONCAT(ROUND(o.currency_value*op.price, 2) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_price, \r\n		GROUP_CONCAT(op.quantity ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_quantity, \r\n		GROUP_CONCAT(ROUND(o.currency_value*op.total, 2) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_total_excl_vat, \r\n		GROUP_CONCAT(ROUND(o.currency_value*op.tax*op.quantity, 2) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_tax, \r\n		GROUP_CONCAT(ROUND(o.currency_value*(op.total+(op.tax*op.quantity)), 2) ORDER BY op.order_id DESC SEPARATOR \'<br>\') AS product_order_total_incl_vat, \r\n		(SELECT SUM(op.quantity) FROM `\" . DB_PREFIX . \"order_product` op, `\" . DB_PREFIX . \"order` o WHERE op.order_id = o.order_id AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \") AS total_quantity, \r\n		(SELECT SUM(op.total) FROM `\" . DB_PREFIX . \"order_product` op, `\" . DB_PREFIX . \"order` o WHERE op.order_id = o.order_id AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \") AS total_total_excl_vat, \r\n		(SELECT SUM(op.tax*op.quantity) FROM `\" . DB_PREFIX . \"order_product` op, `\" . DB_PREFIX . \"order` o WHERE op.order_id = o.order_id AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \") AS total_prod_tax, \r\n		(SELECT SUM(op.total+(op.tax*op.quantity)) FROM `\" . DB_PREFIX . \"order_product` op, `\" . DB_PREFIX . \"order` o WHERE op.order_id = o.order_id AND o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status . \") AS total_total_incl_vat \r\n		\r\n		FROM `\" . DB_PREFIX . \"order` o INNER JOIN `\" . DB_PREFIX . \"order_product` op ON (o.order_id = op.order_id) LEFT JOIN (SELECT oo.order_product_id, GROUP_CONCAT(oo.name, oo.value, oo.type ORDER BY oo.name, oo.value, oo.type) AS options FROM `\" . DB_PREFIX . \"order_option` oo WHERE (type != \'textarea\' OR type != \'file\' OR type != \'date\' OR type != \'datetime\' OR type != \'time\') GROUP BY oo.order_product_id) qa ON (op.order_product_id = qa.order_product_id) WHERE o.customer_id = \'\" . $customer_id . \"\'\" . $date . $order_status;\r\n		\r\n		$sql .= \" GROUP BY op.product_id, options\";\r\n		\r\n		$sort_data = array(\r\n			\'sku\',\r\n			\'op.model\',\r\n			\'op.name\',\r\n			\'categories\',\r\n			\'manufacturer\',\r\n			\'quantity\',\r\n			\'total_excl_vat\',\r\n			\'prod_tax\',			\r\n			\'total_incl_vat\'\r\n		);	\r\n\r\n		if (isset($data[\'sort_products\']) && in_array($data[\'sort_products\'], $sort_data)) {\r\n			$sql .= \" ORDER BY \" . $data[\'sort_products\'];	\r\n		} else {\r\n			$sql .= \" ORDER BY quantity\";	\r\n		}\r\n			\r\n		if (isset($data[\'order_products\']) && ($data[\'order_products\'] == \'DESC\')) {\r\n			$sql .= \" DESC\";\r\n		} else {\r\n			$sql .= \" ASC\";\r\n		}\r\n					\r\n		if (isset($data[\'start_products\']) || isset($data[\'limit_products\'])) {\r\n			if ($data[\'start_products\'] < 0) {\r\n				$data[\'start_products\'] = 0;\r\n			}				\r\n\r\n			if ($data[\'limit_products\'] < 1) {\r\n				$data[\'limit_products\'] = 20;\r\n			}	\r\n		\r\n			$sql .= \" LIMIT \" . (int)$data[\'start_products\'] . \",\" . (int)$data[\'limit_products\'];\r\n		}\r\n		\r\n		$query = $this->db->query($sql);\r\n		\r\n		return $query->rows;\r\n	}	\r\n\r\n	public function getCustomerProductsTotal($data = array(), $customer_id) {\r\n		if (isset($data[\'filter_products_date_start\']) && $data[\'filter_products_date_start\']) {\r\n			$date_start = $data[\'filter_products_date_start\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_products_date_end\']) && $data[\'filter_products_date_end\']) {\r\n			$date_end = $data[\'filter_products_date_end\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_products_range\'])) {\r\n			$range_products = $data[\'filter_products_range\'];\r\n		} else {\r\n			$range_products = \'all_time\';\r\n		}\r\n		\r\n		switch($range_products) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape($data[\'filter_products_date_start\']) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= \'\" . $this->db->escape($data[\'filter_products_date_end\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(date_added) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(date_added) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE()\";\r\n				break;					\r\n			case \'week\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";	\r\n				break;			\r\n			case \'month\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(date_added) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(date_added) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(date_added) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(date_added) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(date_added) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(date_added) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';				\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(date_added) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(date_added) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(date_added) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(date_added) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n\r\n		$sql = \"SELECT *, op.product_id AS counter FROM `\" . DB_PREFIX . \"order` o INNER JOIN `\" . DB_PREFIX . \"order_product` op ON (o.order_id = op.order_id) LEFT JOIN (SELECT oo.order_product_id, GROUP_CONCAT(oo.name, oo.value, oo.type ORDER BY oo.name, oo.value, oo.type) AS options FROM `\" . DB_PREFIX . \"order_option` oo WHERE (type != \'textarea\' OR type != \'file\' OR type != \'date\' OR type != \'datetime\' OR type != \'time\') GROUP BY oo.order_product_id) qa ON (op.order_product_id = qa.order_product_id) WHERE o.customer_id = \'\" . (int)$customer_id . \"\'\";\r\n\r\n		if (!empty($data[\'filter_products_order_status\'])) {\r\n			$sql .= \" AND (\";\r\n			$implode = array();\r\n			foreach ($data[\'filter_products_order_status\'] as $filter_products_order_status) {\r\n				$implode[] = \"o.order_status_id = \'\" . (int)$filter_products_order_status . \"\'\";\r\n			}\r\n\r\n			if ($implode) {\r\n				$sql .= implode(\" OR \", $implode) . \"\";\r\n			}\r\n			$sql .= \")\";\r\n		} else {\r\n			$sql .= \" AND o.order_status_id > \'0\'\";\r\n		}\r\n				\r\n		$sql .= \' AND (\' . $date_start . $date_end . \')\';\r\n		\r\n		$sql .= \" GROUP BY counter, options\";\r\n				\r\n		$query = $this->db->query($sql);\r\n		\r\n		return $query->rows;\r\n	}\r\n				\r\n	public function getCustomerTrack($data = array(), $customer_id) {		\r\n		if (isset($data[\'filter_start_date\']) && $data[\'filter_start_date\']) {\r\n			$date_start = $data[\'filter_start_date\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_end_date\']) && $data[\'filter_end_date\']) {\r\n			$date_end = $data[\'filter_end_date\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_range\'])) {\r\n			$range = $data[\'filter_range\'];\r\n		} else {\r\n			$range = \'all_time\'; //show All Time in Statistical Range by default\r\n		}\r\n\r\n		switch($range) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape($data[\'filter_start_date\']) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= \'\" . $this->db->escape($data[\'filter_end_date\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(ct.access_time) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(ct.access_time) < CURDATE()\";\r\n				break;\r\n			case \'week\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";	\r\n				break;\r\n			case \'month\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(ct.access_time) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(ct.access_time) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(ct.access_time) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(ct.access_time) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(ct.access_time) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(ct.access_time) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(ct.access_time) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(ct.access_time) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(ct.access_time) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(ct.access_time) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(ct.access_time) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n				\r\n		$sql = \"SELECT ct.route, ct.ip_address, ct.customer_id, ct.current_url, ct.referrer, ct.agent_type, ct.access_time FROM `\" . DB_PREFIX . \"customer_track` ct LEFT OUTER JOIN `\" . DB_PREFIX . \"customer` cus ON ct.customer_id = cus.customer_id WHERE ct.customer_id = \'\" . $customer_id . \"\'\";\r\n		\r\n		$sql .= \' AND (\' . $date_start . $date_end . \')\';\r\n		\r\n		$sort_data = array(\r\n			\'route\',\r\n			\'current_url\',\r\n			\'referrer\',											\r\n			\'access_time\'\r\n		);	\r\n			\r\n		if (isset($data[\'sort_track\']) && in_array($data[\'sort_track\'], $sort_data)) {\r\n			$sql .= \" ORDER BY \" . $data[\'sort_track\'];	\r\n		} else {\r\n			$sql .= \" ORDER BY access_time\";	\r\n		}\r\n			\r\n		if (isset($data[\'order_track\']) && ($data[\'order_track\'] == \'DESC\')) {\r\n			$sql .= \" DESC\";\r\n		} else {\r\n			$sql .= \" ASC\";\r\n		}\r\n					\r\n		if (isset($data[\'start_track\']) || isset($data[\'limit_track\'])) {\r\n			if ($data[\'start_track\'] < 0) {\r\n				$data[\'start_track\'] = 0;\r\n			}				\r\n\r\n			if ($data[\'limit_track\'] < 1) {\r\n				$data[\'limit_track\'] = 20;\r\n			}	\r\n		\r\n			$sql .= \" LIMIT \" . (int)$data[\'start_track\'] . \",\" . (int)$data[\'limit_track\'];\r\n		}\r\n		\r\n		$query = $this->db->query($sql);\r\n	\r\n		return $query->rows;\r\n	}	\r\n\r\n	public function getCustomerTrackTotal($data = array(), $customer_id) {		\r\n		if (isset($data[\'filter_start_date\']) && $data[\'filter_start_date\']) {\r\n			$date_start = $data[\'filter_start_date\'];\r\n		} else {\r\n			$date_start = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_end_date\']) && $data[\'filter_end_date\']) {\r\n			$date_end = $data[\'filter_end_date\'];\r\n		} else {\r\n			$date_end = \'\';\r\n		}\r\n\r\n		if (isset($data[\'filter_range\'])) {\r\n			$range = $data[\'filter_range\'];\r\n		} else {\r\n			$range = \'all_time\'; //show All Time in Statistical Range by default\r\n		}\r\n\r\n		switch($range) \r\n		{\r\n			case \'custom\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape($data[\'filter_start_date\']) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= \'\" . $this->db->escape($data[\'filter_end_date\']) . \"\'\";				\r\n				break;\r\n			case \'today\';\r\n				$date_start = \"DATE(ct.access_time) = CURDATE()\";\r\n				$date_end = \'\';\r\n				break;\r\n			case \'yesterday\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_ADD(CURDATE(), INTERVAL -1 DAY)\";\r\n				$date_end = \" AND DATE(ct.access_time) < CURDATE()\";\r\n				break;\r\n			case \'week\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-7 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";	\r\n				break;\r\n			case \'month\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-30 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";					\r\n				break;			\r\n			case \'quarter\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-91 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";						\r\n				break;\r\n			case \'year\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\', strtotime(\'-365 day\'))) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";					\r\n				break;\r\n			case \'current_week\';\r\n				$date_start = \"DATE(ct.access_time) >= CURDATE() - WEEKDAY(CURDATE())\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";			\r\n				break;	\r\n			case \'current_month\';\r\n				$date_start = \"YEAR(ct.access_time) = YEAR(CURDATE())\";\r\n				$date_end = \" AND MONTH(ct.access_time) = MONTH(CURDATE())\";			\r\n				break;\r\n			case \'current_quarter\';\r\n				$date_start = \"QUARTER(ct.access_time) = QUARTER(CURDATE())\";\r\n				$date_end = \" AND YEAR(ct.access_time) = YEAR(CURDATE())\";					\r\n				break;					\r\n			case \'current_year\';\r\n				$date_start = \"YEAR(ct.access_time) = YEAR(CURDATE())\";\r\n				$date_end = \'\';			\r\n				break;					\r\n			case \'last_week\';\r\n				$date_start = \"DATE(ct.access_time) >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE())+5 DAY\";\r\n				$date_end = \" AND DATE(ct.access_time) < CURDATE() - INTERVAL DAYOFWEEK(CURDATE())-2 DAY\";				\r\n				break;	\r\n			case \'last_month\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, \'%Y/%m/01\')\";\r\n				$date_end = \" AND DATE(ct.access_time) < DATE_FORMAT(CURRENT_DATE, \'%Y/%m/01\')\";				\r\n				break;\r\n			case \'last_quarter\';\r\n				$date_start = \"QUARTER(ct.access_time) = QUARTER(DATE_ADD(NOW(), INTERVAL -3 MONTH))\";\r\n				$date_end = \'\';\r\n				break;					\r\n			case \'last_year\';\r\n				$date_start = \"DATE(ct.access_time) >= DATE_FORMAT(CURRENT_DATE - INTERVAL 1 YEAR, \'%Y/01/01\')\";\r\n				$date_end = \" AND DATE(ct.access_time) < DATE_FORMAT(CURRENT_DATE, \'%Y/01/01\')\";				\r\n				break;					\r\n			case \'all_time\';\r\n				$date_start = \"DATE(ct.access_time) >= \'\" . $this->db->escape(date(\'Y-m-d\',\'0\')) . \"\'\";\r\n				$date_end = \" AND DATE(ct.access_time) <= DATE (NOW())\";						\r\n				break;	\r\n		}\r\n				\r\n		$sql = \"SELECT COUNT(ct.access_time) AS total FROM `\" . DB_PREFIX . \"customer_track` ct LEFT OUTER JOIN `\" . DB_PREFIX . \"customer` cus ON ct.customer_id = cus.customer_id WHERE ct.customer_id = \'\" . $customer_id . \"\'\";\r\n		\r\n		$sql .= \' AND (\' . $date_start . $date_end . \')\';\r\n		\r\n		$query = $this->db->query($sql);\r\n		\r\n		return $query->row[\'total\'];\r\n	}\r\n	\r\n	public function deleteCustomerTrack($customer_id) {\r\n		$this->db->query(\"DELETE FROM `\" . DB_PREFIX . \"customer_track` WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n	}\r\n\r\n	public function getCustomerCart($customer_id) {\r\n		$query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"cart WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n		return $query->rows;\r\n	}\r\n\r\n	public function clearCustomerCart($customer_id) {\r\n		$this->db->query(\"DELETE FROM \" . DB_PREFIX . \"cart WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n	}\r\n	\r\n	public function getCustomerWishList($customer_id) {\r\n		$query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"customer_wishlist WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n		return $query->rows;\r\n	}\r\n\r\n	public function deleteCustomerWishList($customer_id) {\r\n		$this->db->query(\"DELETE FROM \" . DB_PREFIX . \"customer_wishlist WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n	}\r\n	\r\n	public function getOrderStatuses($data = array()) {\r\n		$query = $this->db->query(\"SELECT DISTINCT os.name, os.order_status_id FROM `\" . DB_PREFIX . \"order_status` os WHERE os.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\' ORDER BY LCASE(os.name) ASC\");\r\n		\r\n		return $query->rows;	\r\n	}\r\n	\r\n	public function getOrderOptions($order_product_id) {\r\n		$query = $this->db->query(\"SELECT * FROM \" . DB_PREFIX . \"order_option WHERE order_product_id = \'\" . (int)$order_product_id . \"\'\");\r\n\r\n		return $query->rows;\r\n	}			\r\n            ]]></add>\r\n        </operation>\r\n			\r\n        <operation>\r\n            <search><![CDATA[\r\n$sql = \"SELECT *, CONCAT(c.firstname, \' \', c.lastname) AS name, cgd.name AS customer_group FROM \" . DB_PREFIX . \"customer c LEFT JOIN \" . DB_PREFIX . \"customer_group_description cgd ON (c.customer_group_id = cgd.customer_group_id)\";\r\n            ]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n$sql = \"SELECT c.*, CONCAT(c.firstname, \' \', c.lastname) AS name, cgd.name AS customer_group\";\r\nif ($this->config->get(\'adveci_order_value_status\')) {\r\n	if ($this->config->get(\'adveci_clist_orders_status\') == \'1\') {\r\n		$sql .= \", (SELECT COUNT(o.order_id) FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = c.customer_id AND o.order_status_id IN (\" . implode(\",\", $this->config->get(\'adveci_order_value_status\')) . \") GROUP BY o.customer_id) AS total_orders\";\r\n	} \r\n	if ($this->config->get(\'adveci_clist_total_value_status\') == \'1\') {\r\n		$sql .= \", (SELECT SUM(o.total) FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = c.customer_id AND o.order_status_id IN (\" . implode(\",\", $this->config->get(\'adveci_order_value_status\')) . \") GROUP BY o.customer_id) AS total_value\";\r\n	} 	\r\n} else {\r\n	if ($this->config->get(\'adveci_clist_orders_status\') == \'1\') {\r\n		$sql .= \", (SELECT COUNT(o.order_id) FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = c.customer_id AND o.order_status_id > 0 GROUP BY o.customer_id) AS total_orders\";\r\n	} \r\n	if ($this->config->get(\'adveci_clist_total_value_status\') == \'1\') {\r\n		$sql .= \", (SELECT SUM(o.total) FROM `\" . DB_PREFIX . \"order` o WHERE o.customer_id = c.customer_id AND o.order_status_id > 0 GROUP BY o.customer_id) AS total_value\";\r\n	} 	\r\n}\r\n$sql .= \" FROM \" . DB_PREFIX . \"customer c, \" . DB_PREFIX . \"customer_group_description cgd\";\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n$sql .= \" WHERE cgd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\";\r\n            ]]></search>\r\n            <add position=\"replace\" index=\"1\"><![CDATA[\r\n		$sql .= \" WHERE cgd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\' AND c.customer_group_id = cgd.customer_group_id\";\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n\'c.date_added\'\r\n            ]]></search>\r\n            <add position=\"replace\"><![CDATA[\r\n			\'c.date_added\',\r\n			\'total_orders\',\r\n			\'total_value\'					\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\npublic function getCustomers($data = array()) {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n	public function getCustomersForAutocomplete($data = array()) {\r\n		$sql = \"SELECT *, CONCAT(c.firstname, \' \', c.lastname) AS name, cgd.name AS customer_group FROM \" . DB_PREFIX . \"customer c LEFT JOIN \" . DB_PREFIX . \"customer_group_description cgd ON (c.customer_group_id = cgd.customer_group_id)\";\r\n		\r\n		if (!empty($data[\'filter_affiliate\'])) {\r\n			$sql .= \" LEFT JOIN \" . DB_PREFIX . \"customer_affiliate ca ON (c.customer_id = ca.customer_id)\";\r\n		}		\r\n		\r\n		$sql .= \" WHERE cgd.language_id = \'\" . (int)$this->config->get(\'config_language_id\') . \"\'\";\r\n\r\n		$implode = array();\r\n\r\n		if (!empty($data[\'filter_name\'])) {\r\n			$implode[] = \"CONCAT(c.firstname, \' \', c.lastname) LIKE \'%\" . $this->db->escape($data[\'filter_name\']) . \"%\'\";\r\n		}\r\n\r\n		if (!empty($data[\'filter_email\'])) {\r\n			$implode[] = \"c.email LIKE \'\" . $this->db->escape($data[\'filter_email\']) . \"%\'\";\r\n		}\r\n\r\n		if (isset($data[\'filter_newsletter\']) && !is_null($data[\'filter_newsletter\'])) {\r\n			$implode[] = \"c.newsletter = \'\" . (int)$data[\'filter_newsletter\'] . \"\'\";\r\n		}\r\n\r\n		if (!empty($data[\'filter_customer_group_id\'])) {\r\n			$implode[] = \"c.customer_group_id = \'\" . (int)$data[\'filter_customer_group_id\'] . \"\'\";\r\n		}\r\n\r\n		if (!empty($data[\'filter_affiliate\'])) {\r\n			$implode[] = \"ca.status = \'\" . (int)$data[\'filter_affiliate\'] . \"\'\";\r\n		}\r\n		\r\n		if (!empty($data[\'filter_ip\'])) {\r\n			$implode[] = \"c.customer_id IN (SELECT customer_id FROM \" . DB_PREFIX . \"customer_ip WHERE ip = \'\" . $this->db->escape($data[\'filter_ip\']) . \"\')\";\r\n		}\r\n\r\n		if (isset($data[\'filter_status\']) && $data[\'filter_status\'] !== \'\') {\r\n			$implode[] = \"c.status = \'\" . (int)$data[\'filter_status\'] . \"\'\";\r\n		}\r\n\r\n		if (!empty($data[\'filter_date_added\'])) {\r\n			$implode[] = \"DATE(c.date_added) = DATE(\'\" . $this->db->escape($data[\'filter_date_added\']) . \"\')\";\r\n		}\r\n\r\n		if ($implode) {\r\n			$sql .= \" AND \" . implode(\" AND \", $implode);\r\n		}\r\n\r\n		$sort_data = array(\r\n			\'name\',\r\n			\'c.email\',\r\n			\'customer_group\',\r\n			\'c.status\',\r\n			\'c.ip\',\r\n			\'c.date_added\'\r\n		);\r\n\r\n		if (isset($data[\'sort\']) && in_array($data[\'sort\'], $sort_data)) {\r\n			$sql .= \" ORDER BY \" . $data[\'sort\'];\r\n		} else {\r\n			$sql .= \" ORDER BY name\";\r\n		}\r\n\r\n		if (isset($data[\'order\']) && ($data[\'order\'] == \'DESC\')) {\r\n			$sql .= \" DESC\";\r\n		} else {\r\n			$sql .= \" ASC\";\r\n		}\r\n\r\n		if (isset($data[\'start\']) || isset($data[\'limit\'])) {\r\n			if ($data[\'start\'] < 0) {\r\n				$data[\'start\'] = 0;\r\n			}\r\n\r\n			if ($data[\'limit\'] < 1) {\r\n				$data[\'limit\'] = 20;\r\n			}\r\n\r\n			$sql .= \" LIMIT \" . (int)$data[\'start\'] . \",\" . (int)$data[\'limit\'];\r\n		}\r\n\r\n		$query = $this->db->query($sql);\r\n\r\n		return $query->rows;\r\n	}\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n$customer_id = $this->db->getLastId();\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		if ($data[\'note\']) {\r\n			$this->db->query(\"INSERT INTO \" . DB_PREFIX . \"customer_note SET customer_id = \'\" . (int)$customer_id . \"\', note = \'\" . $this->db->escape($data[\'note\']) . \"\'\");\r\n		}\r\n            ]]></add>\r\n        </operation>	\r\n        <operation>\r\n            <search><![CDATA[\r\nif ($data[\'password\']) {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		if ($data[\'note\']) {\r\n			$this->db->query(\"UPDATE \" . DB_PREFIX . \"customer_note SET note = \'\" . $this->db->escape($data[\'note\']) . \"\' WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n		}\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[\r\n$this->db->query(\"DELETE FROM \" . DB_PREFIX . \"customer_ip WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n            ]]></search>\r\n            <add position=\"after\"><![CDATA[\r\n		$this->db->query(\"DELETE FROM \" . DB_PREFIX . \"customer_note WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n            ]]></add>\r\n        </operation>	\r\n        <operation>\r\n            <search><![CDATA[\r\npublic function getCustomer($customer_id) {\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n	public function getCustomerNote($customer_id) {\r\n		$query = $this->db->query(\"SELECT DISTINCT * FROM \" . DB_PREFIX . \"customer_note WHERE customer_id = \'\" . (int)$customer_id . \"\'\");\r\n\r\n		return $query->row;\r\n	}\r\n            ]]></add>\r\n        </operation>			\r\n	</file>\r\n		\r\n	<file path=\"admin/view/template/customer/customer_form.twig\">\r\n        <operation>\r\n            <search><![CDATA[\r\n<label class=\"col-sm-2 control-label\" for=\"input-safe\">{{ entry_safe }}</label>\r\n            ]]></search>\r\n            <add position=\"after\" offset=\"12\"><![CDATA[\r\n		  {% if access_permission2 and laccess %}	\r\n                      <div class=\"form-group\">\r\n                        <label class=\"col-sm-2 control-label\" for=\"input-note\">{{ entry_note }}</label>\r\n                        <div class=\"col-sm-10\">\r\n                          <textarea name=\"note\" placeholder=\"{{ entry_note }}\" id=\"input-note\" class=\"form-control\" />{{ note }}</textarea>\r\n                        </div>\r\n                      </div>\r\n		  {% endif %}\r\n            ]]></add>\r\n        </operation>			\r\n        <operation>\r\n            <search><![CDATA[\r\n<li><a href=\"#tab-history\" data-toggle=\"tab\">{{ tab_history }}</a></li>\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n		  {% if access_permission2 and laccess %}	\r\n		  <li><a href=\"#tab_order_history\" data-toggle=\"tab\"><span style=\"color:#0C0;\">{{ tab_order_history }}</span></a></li>\r\n		  <li><a href=\"#tab_purchased_products\" data-toggle=\"tab\"><span style=\"color:#0C0;\">{{ tab_purchased_products }}</span></a></li>\r\n		  <li><a href=\"#tab_cart\" data-toggle=\"tab\"><span style=\"color:#0C0;\">{{ tab_cart }}</span></a></li>\r\n		  <li><a href=\"#tab_wishlist\" data-toggle=\"tab\"><span style=\"color:#0C0;\">{{ tab_wishlist }}</span></a></li>\r\n		  <li><a href=\"#tab_customer_track\" data-toggle=\"tab\"><span style=\"color:#0C0;\">{{ tab_customer_track }}</span></a></li>\r\n		  {% endif %}\r\n            ]]></add>\r\n        </operation>\r\n        <operation>\r\n            <search><![CDATA[		\r\n<div class=\"tab-pane\" id=\"tab-history\">\r\n            ]]></search>\r\n            <add position=\"before\"><![CDATA[\r\n{% if access_permission2 and laccess %}		\r\n		<div class=\"tab-pane\" id=\"tab_order_history\">	\r\n<style type=\"text/css\">\r\n.list_main_orders {\r\n	border-collapse: collapse;\r\n	width: 100%;\r\n	border-top: 1px solid #DDDDDD;\r\n	border-left: 1px solid #DDDDDD;	\r\n	margin-bottom: 20px;\r\n}\r\n.list_main_orders td {\r\n	border-right: 1px solid #DDDDDD;\r\n	border-bottom: 1px solid #DDDDDD;	\r\n}\r\n.list_main_orders thead td {\r\n	background-color: #f5f5f5;\r\n	padding: 0px 5px;\r\n}\r\n.list_main_orders thead td a, .list_main_orders thead td {\r\n	text-decoration: none;\r\n	color: #222222;\r\n	font-weight: bold;	\r\n}\r\n.list_main_orders tbody td {\r\n	vertical-align: middle;\r\n	padding: 0px 5px;\r\n}\r\n.list_main_orders .left {\r\n	text-align: left;\r\n	padding: 7px;\r\n}\r\n.list_main_orders .right {\r\n	text-align: right;\r\n	padding: 7px;\r\n}\r\n.list_main_orders .center {\r\n	text-align: center;\r\n	padding: 3px;\r\n}\r\n.list_main_orders a.asc:after {\r\n	content: \" \\f107\";\r\n	font-family: FontAwesome;\r\n	font-size: 14px;\r\n}\r\n.list_main_orders a.desc:after {\r\n	content: \" \\f106\";\r\n	font-family: FontAwesome;\r\n	font-size: 14px;\r\n}\r\n.list_main_orders .noresult {\r\n	text-align: center;\r\n	padding: 7px;\r\n}\r\n\r\n.btn-select {\r\n	background-color: #fcfcfc;\r\n	border: 1px solid #CCC;\r\n}\r\n.btn-group-ms {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.btn-group-ms > .multiselect.btn {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.multiselect ul {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.oloading {\r\n	position: absolute;\r\n	width: 100%;\r\n	height: 100%;\r\n	z-index: 9999;\r\n	background: url(\'view/image/adv_reports/page_loading.gif\') 50% 25% no-repeat rgba(255,255,255,0.9);\r\n}\r\n</style> \r\n<div class=\"oloading\"></div>\r\n<input type=\"hidden\" id=\"page_orders\" value=\"{{ page_orders }}\">\r\n<input type=\"hidden\" id=\"sort_orders\" value=\"{{ sort_orders }}\">\r\n<input type=\"hidden\" id=\"order_orders\" value=\"{{ order_orders }}\">\r\n<script type=\"text/javascript\">\r\n$(document).ready(function() {\r\nvar $filter_orders_range = $(\'#filter_orders_range\'), $date_start = $(\'#date-start-orders\'), $date_end = $(\'#date-end-orders\');\r\n$filter_orders_range.change(function () {\r\n    if ($filter_orders_range.val() == \'custom\') {\r\n        $date_start.removeAttr(\'disabled\');\r\n        $date_end.removeAttr(\'disabled\');\r\n    } else {	\r\n        $date_start.prop(\'disabled\', \'disabled\').val(\'\');\r\n        $date_end.prop(\'disabled\', \'disabled\').val(\'\');\r\n    }\r\n}).trigger(\'change\');\r\n});\r\n</script>	\r\n<div class=\"well\">\r\n    <div class=\"row\">\r\n      <div class=\"col-lg-6\" style=\"padding-bottom:5px;\">	  \r\n        <div class=\"row\">\r\n          <div class=\"col-sm-6\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"filter_orders_range\">{{ entry_range }}</label>\r\n            <select name=\"filter_orders_range\" id=\"filter_orders_range\" data-style=\"btn-select\" class=\"form-control select\">\r\n              {% for range_orders in ranges_orders %}\r\n              {% if range_orders.value == filter_orders_range %}\r\n              <option value=\"{{ range_orders.value }}\" title=\"{{ range_orders.text }}\" style=\"{{ range_orders.style }}\" selected=\"selected\">{{ range_orders.text }}</option>\r\n              {% else %}\r\n              <option value=\"{{ range_orders.value }}\" title=\"{{ range_orders.text }}\" style=\"{{ range_orders.style }}\">{{ range_orders.text }}</option>\r\n              {% endif %}\r\n              {% endfor %}\r\n            </select></div>\r\n          <div class=\"col-sm-3\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"date-start-orders\">{{ entry_date_start }}</label>\r\n            <input type=\"text\" name=\"filter_orders_date_start\" value=\"{{ filter_orders_date_start }}\" data-date-format=\"YYYY-MM-DD\" id=\"date-start-orders\" class=\"form-control\" style=\"color:#F90;\" />\r\n		  </div>\r\n          <div class=\"col-sm-3\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"date-end-orders\">{{ entry_date_end }}</label>\r\n            <input type=\"text\" name=\"filter_orders_date_end\" value=\"{{ filter_orders_date_end }}\" data-date-format=\"YYYY-MM-DD\" id=\"date-end-orders\" class=\"form-control\" style=\"color:#F90;\" />\r\n          </div>\r\n        </div>\r\n	  </div>   \r\n      <div class=\"col-lg-3\" style=\"padding-bottom:5px;\">\r\n	  <label class=\"control-label\" for=\"orders_order_status\">{{ entry_order_status }}</label>\r\n            <select name=\"filter_orders_order_status\" id=\"orders_order_status\" class=\"form-control\" multiple=\"multiple\" size=\"1\">		\r\n            {% for order_status in order_statuses %}\r\n            {% if \'order_status.order_status_id\' in filter_orders_order_status %}\r\n            <option value=\"{{ order_status.order_status_id }}\" selected=\"selected\">{{ order_status.name }}</option>\r\n            {% else %}\r\n            <option value=\"{{ order_status.order_status_id }}\">{{ order_status.name }}</option>\r\n            {% endif %}\r\n            {% endfor %}\r\n          </select></div>		  \r\n    </div> \r\n</div>		\r\n			<div class=\"table-responsive\">		\r\n			<table class=\"list_main_orders\">\r\n			<thead id=\"head_orders\">\r\n			<tr>			\r\n          	<td class=\"left\">{% if sort_orders == \'order_id\' %}\r\n                <a href=\"{{ sort_orders_order_id }}\" class=\"{{ order_orders|lower }}\">{{ column_order_order_id }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_order_id }}\">{{ column_order_order_id }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_orders == \'date_added\' %}\r\n                <a href=\"{{ sort_orders_date_added }}\" class=\"{{ order_orders|lower }}\">{{ column_order_date_added }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_date_added }}\">{{ column_order_date_added }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_orders == \'inv_number\' %}\r\n                <a href=\"{{ sort_orders_inv_no }}\" class=\"{{ order_orders|lower }}\">{{ column_order_inv_no }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_inv_no }}\">{{ column_order_inv_no }}</a>\r\n                {% endif %}</td> \r\n          	<td class=\"left\">{% if sort_orders == \'shipping_method\' %}\r\n                <a href=\"{{ sort_orders_shipping_method }}\" class=\"{{ order_orders|lower }}\">{{ column_order_shipping_method }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_shipping_method }}\">{{ column_order_shipping_method }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_orders == \'payment_method\' %}\r\n                <a href=\"{{ sort_orders_payment_method }}\" class=\"{{ order_orders|lower }}\">{{ column_order_payment_method }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_payment_method }}\">{{ column_order_payment_method }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_orders == \'os_name\' %}\r\n                <a href=\"{{ sort_orders_order_status }}\" class=\"{{ order_orders|lower }}\">{{ column_order_status }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_order_status }}\">{{ column_order_status }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_orders == \'store_name\' %}\r\n                <a href=\"{{ sort_orders_store }}\" class=\"{{ order_orders|lower }}\">{{ column_order_store }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_store }}\">{{ column_order_store }}</a>\r\n                {% endif %}</td>	\r\n          	<td class=\"right\">{% if sort_orders == \'currency_code\' %}\r\n                <a href=\"{{ sort_orders_currency }}\" class=\"{{ order_orders|lower }}\">{{ column_order_currency }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_currency }}\">{{ column_order_currency }}</a>\r\n                {% endif %}</td>	\r\n          	<td class=\"right\">{% if sort_orders == \'products\' %}\r\n                <a href=\"{{ sort_orders_quantity }}\" class=\"{{ order_orders|lower }}\">{{ column_order_quantity }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_quantity }}\">{{ column_order_quantity }}</a>\r\n                {% endif %}</td>	\r\n          	<td class=\"right\">{% if sort_orders == \'sub_total\' %}\r\n                <a href=\"{{ sort_orders_sub_total }}\" class=\"{{ order_orders|lower }}\">{{ column_order_sub_total }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_sub_total }}\">{{ column_order_sub_total }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"right\">{% if sort_orders == \'shipping\' %}\r\n                <a href=\"{{ sort_orders_shipping }}\" class=\"{{ order_orders|lower }}\">{{ column_order_shipping }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_shipping }}\">{{ column_order_shipping }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"right\">{% if sort_orders == \'tax\' %}\r\n                <a href=\"{{ sort_orders_tax }}\" class=\"{{ order_orders|lower }}\">{{ column_order_tax }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_tax }}\">{{ column_order_tax }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"right\">{% if sort_orders == \'value\' %}\r\n                <a href=\"{{ sort_orders_value }}\" class=\"{{ order_orders|lower }}\">{{ column_order_value }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_orders_value }}\">{{ column_order_value }}</a>\r\n                {% endif %}</td>\r\n			</tr>\r\n			</thead>\r\n			<tbody>\r\n            {% if customer_order %}\r\n			  {% for order in customer_order %}\r\n			<tr>\r\n          		<td class=\"left\"><a href=\"{{ order.order_id_url }}\">{{ order.order_id }}</a></td>\r\n				<td class=\"left\">{{ order.date_added }}</td>  \r\n                <td class=\"left\">{{ order.inv_no}}</td> \r\n                <td class=\"left\">{{ order.shipping_method }}</td>\r\n                <td class=\"left\">{{ order.payment_method }}</td>\r\n                <td class=\"left\">{{ order.os_name }}</td>								\r\n                <td class=\"left\">{{ order.store_name }}</td>\r\n                <td class=\"right\">{{ order.currency }}</td>				\r\n                <td class=\"right\">{{ order.products }}</td>\r\n                <td class=\"right\" nowrap=\"nowrap\">{{ order.sub_total }}</td>\r\n                <td class=\"right\" nowrap=\"nowrap\">{{ order.shipping }}</td>\r\n                <td class=\"right\" nowrap=\"nowrap\">{{ order.tax }}</td>												\r\n				<td class=\"right\" nowrap=\"nowrap\">{{ order.total }}</td>                    \r\n				</tr>               \r\n              {% endfor %}\r\n              <tr>\r\n                <td class=\"right\" colspan=\"8\"><b>{{ column_cust_totals }}</b></td>\r\n                <td class=\"right\" nowrap=\"nowrap\"><b>{{ order.total_products }}</b></td> \r\n                <td class=\"right\" nowrap=\"nowrap\"><b>{{ order.total_sub_total }}</b></td> \r\n                <td class=\"right\" nowrap=\"nowrap\"><b>{{ order.total_shipping }}</b></td> \r\n                <td class=\"right\" nowrap=\"nowrap\"><b>{{ order.total_tax }}</b></td> \r\n                <td class=\"right\" nowrap=\"nowrap\"><b>{{ order.total_value }}</b></td>              \r\n              </tr>   \r\n            {% else %}\r\n              <tr>\r\n                <td class=\"center\" colspan=\"13\">{{ text_no_results }}</td>\r\n              </tr>\r\n            {% endif %}\r\n            </tbody>\r\n			</table>\r\n			</div>\r\n			<div class=\"row\">\r\n			<div class=\"col-sm-6 text-left\" id=\"pagination_orders\">{{ pagination_orders }}</div>\r\n        	<div class=\"col-sm-6 text-right\" id=\"pagination_orders_count\">{{ results_orders }}</div>\r\n			</div>				\r\n		</div>\r\n<script id=\"ordersTemplate\" type=\"text/x-jquery-tmpl\">\r\n        <tr>\r\n          <td class=\"left\"><a href=\"${order_id_url}\">${order_id}</a></td>\r\n		  <td class=\"left\">${date_added}</td>\r\n		  <td class=\"left\">${inv_no}</td>\r\n          <td class=\"left\">${shipping_method}</td>\r\n		  <td class=\"left\">${payment_method}</td>\r\n		  <td class=\"left\">${os_name}</td>\r\n		  <td class=\"left\">${store_name}</td>\r\n		  <td class=\"right\">${currency}</td>\r\n		  <td class=\"right\">${products}</td>\r\n		  <td class=\"right\" nowrap=\"nowrap\">${sub_total}</td>\r\n		  <td class=\"right\" nowrap=\"nowrap\">${shipping}</td>\r\n		  <td class=\"right\" nowrap=\"nowrap\">${tax}</td>\r\n		  <td class=\"right\" nowrap=\"nowrap\">${total}</td>\r\n        </tr>		\r\n</script>\r\n<script id=\"orders_totalTemplate\" type=\"text/x-jquery-tmpl\">\r\n		<tr style=\"border-top:2px solid #CCC;\">\r\n		  <td colspan=\"8\" class=\"right\" style=\"font-weight:bold;\">{{ column_cust_totals }}</td>\r\n          <td class=\"right\" nowrap=\"nowrap\" style=\"font-weight:bold;\">${total_products}</td>\r\n          <td class=\"right\" nowrap=\"nowrap\" style=\"font-weight:bold;\">${total_sub_total}</td>\r\n          <td class=\"right\" nowrap=\"nowrap\" style=\"font-weight:bold;\">${total_shipping}</td>\r\n          <td class=\"right\" nowrap=\"nowrap\" style=\"font-weight:bold;\">${total_tax}</td>\r\n          <td class=\"right\" nowrap=\"nowrap\" style=\"font-weight:bold;\">${total_value}</td>\r\n        </tr>		\r\n</script>	\r\n	 \r\n		<div class=\"tab-pane\" id=\"tab_purchased_products\">\r\n<style type=\"text/css\">\r\n.list_main_products {\r\n	border-collapse: collapse;\r\n	width: 100%;\r\n	border-top: 1px solid #DDDDDD;\r\n	border-left: 1px solid #DDDDDD;	\r\n	margin-bottom: 20px;\r\n}\r\n.list_main_products td {\r\n	border-right: 1px solid #DDDDDD;\r\n	border-bottom: 1px solid #DDDDDD;	\r\n}\r\n.list_main_products thead td {\r\n	background-color: #f5f5f5;\r\n	padding: 0px 5px;\r\n}\r\n.list_main_products thead td a, .list_main_products thead td {\r\n	text-decoration: none;\r\n	color: #222222;\r\n	font-weight: bold;	\r\n}\r\n.list_main_products tbody td {\r\n	vertical-align: middle;\r\n	padding: 0px 5px;\r\n}\r\n.list_main_products .left {\r\n	text-align: left;\r\n	padding: 7px;\r\n}\r\n.list_main_products .right {\r\n	text-align: right;\r\n	padding: 7px;\r\n}\r\n.list_main_products .center {\r\n	text-align: center;\r\n	padding: 3px;\r\n}\r\n.list_main_products a.asc:after {\r\n	content: \" \\f107\";\r\n	font-family: FontAwesome;\r\n	font-size: 14px;\r\n}\r\n.list_main_products a.desc:after {\r\n	content: \" \\f106\";\r\n	font-family: FontAwesome;\r\n	font-size: 14px;\r\n}\r\n.list_main_products .noresult {\r\n	text-align: center;\r\n	padding: 7px;\r\n}\r\n\r\n.list_detail_products {\r\n	border-collapse: collapse;\r\n	width: 100%;\r\n	border-top: 1px solid #DDDDDD;\r\n	border-left: 1px solid #DDDDDD;\r\n	margin-top: 10px;\r\n	margin-bottom: 10px;\r\n}\r\n.list_detail_products td {\r\n	border-right: 1px solid #DDDDDD;\r\n	border-bottom: 1px solid #DDDDDD;\r\n}\r\n.list_detail_products thead td {\r\n	background-color: #f5f5f5;\r\n	padding: 0px 3px;\r\n	font-size: 11px;\r\n	font-weight: bold;\r\n}\r\n.list_detail_products tbody td {\r\n	padding: 0px 3px;\r\n	font-size: 11px;	\r\n}\r\n.list_detail_products .left {\r\n	text-align: left;\r\n	padding: 3px;\r\n}\r\n.list_detail_products .right {\r\n	text-align: right;\r\n	padding: 3px;\r\n}\r\n.list_detail_products .center {\r\n	text-align: center;\r\n	padding: 3px;\r\n}\r\n\r\n.btn-select {\r\n	background-color: #fcfcfc;\r\n	border: 1px solid #CCC;\r\n}\r\n.btn-group-ms {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.btn-group-ms > .multiselect.btn {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.multiselect ul {\r\n	width: 100%;\r\n	height: 35px;	\r\n}\r\n.ploading {\r\n	position: absolute;\r\n	width: 100%;\r\n	height: 100%;\r\n	z-index: 9999;\r\n	background: url(\'view/image/adv_reports/page_loading.gif\') 50% 25% no-repeat rgba(255,255,255,0.9);\r\n}\r\n</style> \r\n<div class=\"ploading\"></div>\r\n<input type=\"hidden\" id=\"page_products\" value=\"{{ page_products }}\">\r\n<input type=\"hidden\" id=\"sort_products\" value=\"{{ sort_products }}\">\r\n<input type=\"hidden\" id=\"order_products\" value=\"{{ order_products }}\">\r\n<script type=\"text/javascript\">\r\n$(document).ready(function() {\r\nvar $filter_products_range = $(\'#filter_products_range\'), $date_start = $(\'#date-start-products\'), $date_end = $(\'#date-end-products\');\r\n$filter_products_range.change(function () {\r\n    if ($filter_products_range.val() == \'custom\') {\r\n        $date_start.removeAttr(\'disabled\');\r\n        $date_end.removeAttr(\'disabled\');\r\n    } else {	\r\n        $date_start.prop(\'disabled\', \'disabled\').val(\'\');\r\n        $date_end.prop(\'disabled\', \'disabled\').val(\'\');\r\n    }\r\n}).trigger(\'change\');\r\n});\r\n</script>	\r\n<div class=\"well\">\r\n    <div class=\"row\">\r\n      <div class=\"col-lg-6\" style=\"padding-bottom:5px;\">	  \r\n        <div class=\"row\">\r\n          <div class=\"col-sm-6\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"filter_products_range\">{{ entry_range }}</label>\r\n            <select name=\"filter_products_range\" id=\"filter_products_range\" data-style=\"btn-select\" class=\"form-control select\">\r\n              {% for range_products in ranges_products %}\r\n              {% if range_products.value == filter_products_range %}\r\n              <option value=\"{{ range_products.value }}\" title=\"{{ range_products.text }}\" style=\"{{ range_products.style }}\" selected=\"selected\">{{ range_products.text }}</option>\r\n              {% else %}\r\n              <option value=\"{{ range_products.value }}\" title=\"{{ range_products.text }}\" style=\"{{ range_products.style }}\">{{ range_products.text }}</option>\r\n              {% endif %}\r\n              {% endfor %}\r\n            </select></div>\r\n          <div class=\"col-sm-3\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"date-start-products\">{{ entry_date_start }}</label>\r\n            <input type=\"text\" name=\"filter_products_date_start\" value=\"{{ filter_products_date_start }}\" data-date-format=\"YYYY-MM-DD\" id=\"date-start-products\" class=\"form-control\" style=\"color:#F90;\" />\r\n		  </div>\r\n          <div class=\"col-sm-3\" style=\"padding-bottom:5px;\">\r\n		  <label class=\"control-label\" for=\"date-end-products\">{{ entry_date_end }}</label>\r\n            <input type=\"text\" name=\"filter_products_date_end\" value=\"{{ filter_products_date_end }}\" data-date-format=\"YYYY-MM-DD\" id=\"date-end-products\" class=\"form-control\" style=\"color:#F90;\" />\r\n          </div>\r\n        </div>\r\n	  </div>   \r\n      <div class=\"col-lg-3\" style=\"padding-bottom:5px;\">\r\n	  <label class=\"control-label\" for=\"products_order_status\">{{ entry_order_status }}</label>\r\n            <select name=\"filter_products_order_status\" id=\"products_order_status\" class=\"form-control\" multiple=\"multiple\" size=\"1\">		\r\n            {% for order_status in order_statuses %}\r\n            {% if \'order_status.order_status_id\' in filter_products_order_status %}\r\n            <option value=\"{{ order_status.order_status_id }}\" selected=\"selected\">{{ order_status.name }}</option>\r\n            {% else %}\r\n            <option value=\"{{ order_status.order_status_id }}\">{{ order_status.name }}</option>\r\n            {% endif %}\r\n            {% endfor %}\r\n          </select></div>		  \r\n    </div> \r\n</div>		\r\n			<div class=\"table-responsive\">		\r\n			<table class=\"list_main_products\">\r\n			<thead id=\"head_products\">\r\n			<tr>			\r\n          	<td class=\"center\">{{ column_image }}</a></td>\r\n          	<td class=\"left\">{% if sort_products == \'sku\' %}\r\n                <a href=\"{{ sort_products_sku }}\" class=\"{{ order_products|lower }}\">{{ column_sku }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_sku }}\">{{ column_sku }}</a>\r\n                {% endif %}</td> \r\n          	<td class=\"left\">{% if sort_products == \'model\' %}\r\n                <a href=\"{{ sort_products_model }}\" class=\"{{ order_products|lower }}\">{{ column_model }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_model }}\">{{ column_model }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_products == \'product\' %}\r\n                <a href=\"{{ sort_products_product }}\" class=\"{{ order_products|lower }}\">{{ column_product }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_product }}\">{{ column_product }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_products == \'category\' %}\r\n                <a href=\"{{ sort_products_category }}\" class=\"{{ order_products|lower }}\">{{ column_category }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_category }}\">{{ column_category }}</a>\r\n                {% endif %}</td>\r\n          	<td class=\"left\">{% if sort_products == \'manufacturer\' %}\r\n                <a href=\"{{ sort_products_manufacturer }}\" class=\"{{ order_products|lower }}\">{{ column_manufacturer }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_manufacturer }}\">{{ column_manufacturer }}</a>\r\n                {% endif %}</td>	\r\n          	<td class=\"right\">{% if sort_products == \'quantity\' %}\r\n                <a href=\"{{ sort_products_quantity }}\" class=\"{{ order_products|lower }}\">{{ column_prod_quantity }}</a>\r\n                {% else %}\r\n                <a href=\"{{ sort_products_quantity }}\">{{ column_prod_quantity }}</a>\r\n                {% endif %}</td>	\r\n          	<td class=\"right\">{% if sort_products == \'total_excl_vat\' %}\r\n                <a href=\"{{ sort_products_total_excl_vat }}\" class=\"{{ order_pr