OpenCart 🇺🇦

Схема

public mixed addItemLinkAjax ( )

Аргументы

Аргумент Возможный тип Описание
У метода нет аргументов

Описание

Метод пока еще не документирован.

Исходный код

if(isset($this->request->get['product_id']) && isset($this->request->get['amazon_sku'])) {
	$this->load->model('openbay/amazon');
	$this->load->library('amazon');

	$amazon_sku = $this->request->get['amazon_sku'];
	$product_id = $this->request->get['product_id'];
	$var = isset($this->request->get['var']) ? $this->request->get['var'] : '';

	$this->model_openbay_amazon->linkProduct($amazon_sku, $product_id, $var);
	$logger = new Log('amazon_stocks.log');
	$logger->write('addItemLink() called for product id: ' . $product_id . ', amazon sku: ' . $amazon_sku . ', var: ' . $var);

	if($var != '' && $this->openbay->addonLoad('openstock')) {
		$logger->write('Using openStock');
		$this->load->model('tool/image');
		$this->load->model('openstock/openstock');
		$optionStocks = $this->model_openstock_openstock->getProductOptionStocks($product_id);
		$quantityData = array();
		foreach($optionStocks as $optionStock) {
			if(isset($optionStock['var']) && $optionStock['var'] == $var) {
				$quantityData[$amazon_sku] = $optionStock['stock'];
				break;
			}
		}
		if(!empty($quantityData)) {
			$logger->write('Updating quantities with data: ' . print_r($quantityData, true));
			$this->openbay->amazon->updateQuantities($quantityData);
		} else {
			$logger->write('No quantity data will be posted.');
		}
	} else {
		$this->openbay->amazon->putStockUpdateBulk(array($product_id));
	}

	$json = json_encode('ok');
} else {
	$json = json_encode('error');
}

$this->response->setOutput($json);