etsy_product.php (2678B)
1 <?php 2 class ModelExtensionOpenBayEtsyProduct extends Model{ 3 public function getStatus($product_id) { 4 $query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "etsy_listing` WHERE `product_id` = '" . (int)$product_id . "' AND `status` = 1 LIMIT 1"); 5 6 if ($query->num_rows == 0) { 7 return 0; 8 } else { 9 return 1; 10 } 11 } 12 13 public function totalLinked() { 14 $sql = "SELECT COUNT(DISTINCT p.product_id) AS total 15 FROM `" . DB_PREFIX . "etsy_listing` `el` 16 LEFT JOIN `" . DB_PREFIX . "product` `p` ON (`el`.`product_id` = `p`.`product_id`) 17 LEFT JOIN `" . DB_PREFIX . "product_description` `pd` ON (`p`.`product_id` = `pd`.`product_id`) 18 WHERE `el`.`status` = '1' 19 AND `pd`.`language_id` = '" . (int)$this->config->get('config_language_id') . "'"; 20 21 $query = $this->db->query($sql); 22 23 return (int)$query->row['total']; 24 } 25 26 public function addLink($product_id, $etsy_item_id, $status_id = 0) { 27 $this->db->query("INSERT INTO `" . DB_PREFIX . "etsy_listing` SET `product_id` = '" . (int)$product_id . "', `etsy_item_id` = '" . $this->db->escape($etsy_item_id) . "', `status` = '" . (int)$status_id . "', `created` = now()"); 28 } 29 30 public function loadLinked($limit = 100, $page = 1) { 31 $this->load->model('tool/image'); 32 33 $start = $limit * ($page - 1); 34 35 $sql = " 36 SELECT 37 `el`.`etsy_listing_id`, 38 `el`.`etsy_item_id`, 39 `el`.`status`, 40 `p`.`product_id`, 41 `p`.`sku`, 42 `p`.`model`, 43 `p`.`quantity`, 44 `pd`.`name` 45 FROM `" . DB_PREFIX . "etsy_listing` `el` 46 LEFT JOIN `" . DB_PREFIX . "product` `p` ON (`el`.`product_id` = `p`.`product_id`) 47 LEFT JOIN `" . DB_PREFIX . "product_description` `pd` ON (`p`.`product_id` = `pd`.`product_id`) 48 WHERE `el`.`status` = '1' 49 AND `pd`.`language_id` = '" . (int)$this->config->get('config_language_id') . "'"; 50 51 $sql .= " LIMIT " . (int)$start . "," . (int)$limit; 52 53 $qry = $this->db->query($sql); 54 55 $data = array(); 56 if ($qry->num_rows) { 57 foreach($qry->rows as $row) { 58 $data[] = array( 59 'etsy_listing_id' => $row['etsy_listing_id'], 60 'product_id' => $row['product_id'], 61 'sku' => $row['sku'], 62 'model' => $row['model'], 63 'quantity' => $row['quantity'], 64 'name' => $row['name'], 65 'status' => $row['status'], 66 'etsy_item_id' => $row['etsy_item_id'], 67 'link_edit' => $this->url->link('catalog/product/edit', 'user_token=' . $this->session->data['user_token'] . '&product_id=' . $row['product_id'], true), 68 'link_etsy' => 'http://www.etsy.com/listing/' . $row['etsy_item_id'], 69 ); 70 } 71 } 72 73 return $data; 74 } 75 }