OpenCart 🇺🇦

Схема

public mixed getProductStatus ( $product_id )

Аргументы

Аргумент Возможный тип Описание
$product_id

Описание

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

Исходный код

$rowsUploaded = $this->db->query("
	SELECT COUNT(*) count
	FROM `" . DB_PREFIX . "amazonus_product`
	WHERE `product_id` = '" . (int)$product_id . "' AND status = 'uploaded'")->row;
$rowsUploaded = $rowsUploaded['count'];

$rowsOk = $this->db->query("
	SELECT COUNT(*) count
	FROM `" . DB_PREFIX . "amazonus_product`
	WHERE `product_id` = '" . (int)$product_id . "' AND status = 'ok'")->row;
$rowsOk = $rowsOk['count'];

$rowsError = $this->db->query("
	SELECT COUNT(*) count
	FROM `" . DB_PREFIX . "amazonus_product`
	WHERE `product_id` = '" . (int)$product_id . "' AND status = 'error'")->row;
$rowsError = $rowsError['count'];

$rowsSaved = $this->db->query("
	SELECT COUNT(*) count
	FROM `" . DB_PREFIX . "amazonus_product`
	WHERE `product_id` = '" . (int)$product_id . "' AND status = 'saved'")->row;
$rowsSaved = $rowsSaved['count'];

$rowsTotal = $rowsUploaded + $rowsOk + $rowsError + $rowsSaved;

$links = $this->db->query("
	SELECT COUNT(*) as count
	FROM `" . DB_PREFIX . "amazonus_product_link`
	WHERE `product_id` = '" . (int)$product_id . "'")->row;
$links = $links['count'];


if($rowsTotal === 0 && $links > 0) {
	return 'linked';
} else if($rowsTotal == 0) {
	return false;
}

if($rowsUploaded > 0) {
	return 'processing';
}

if($rowsUploaded == 0 && $rowsOk > 0 && $rowsError == 0) {
	return 'ok';
}

if($rowsSaved > 0) {
	return 'saved';
}

if($rowsUploaded == 0 && $rowsError > 0 && $rowsOk == 0) {
	$quick = $this->db->query("
		SELECT *
		FROM `" . DB_PREFIX . "amazonus_product`
		WHERE `product_id` = " . (int)$product_id . " AND `version` = 3")->row;

	if($quick) {
		return 'error_quick';
	} else {
		return 'error_advanced';
	}
} else {
	return 'error_few';
}

return false;