shop.balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

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 }