﻿<modification>
    <id>Smart Microdata</id>
    <version>1.0</version>
    <vqmver>2.3.0</vqmver>
    <author>ovife21</author>
	<file name="/catalog/controller/product/product.php">
		<operation>
			<search position="after"><![CDATA[$this->data['points']]]></search>
			<add>
			<![CDATA[
				$this->data['mbreadcrumbs'] = array();

				$this->data['mbreadcrumbs'][] = array(
					'text'      => $this->language->get('text_home'),
					'href'      => $this->url->link('common/home')
				);
				
				if ($this->model_catalog_product->getFullPath($this->request->get['product_id'])) {
					
					$path = '';
			
					$parts = explode('_', (string)$this->model_catalog_product->getFullPath($this->request->get['product_id']));
					
					$category_id = (int)array_pop($parts);
											
					foreach ($parts as $path_id) {
						if (!$path) {
							$path = $path_id;
						} else {
							$path .= '_' . $path_id;
						}
						
						$category_info = $this->model_catalog_category->getCategory($path_id);
						
						if ($category_info) {
							$this->data['mbreadcrumbs'][] = array(
								'text'      => $category_info['name'],
								'href'      => $this->url->link('product/category', 'path=' . $path)								
							);
						}
					}
					
					$category_info = $this->model_catalog_category->getCategory($category_id);
					
					if ($category_info) {			
						$url = '';
											
						$this->data['mbreadcrumbs'][] = array(
							'text'      => $category_info['name'],
							'href'      => $this->url->link('product/category', 'path=' . $this->model_catalog_product->getFullPath($this->request->get['product_id']))						
						);
					}
			
				
				} else {
				$this->data['mbreadcrumb'] = false;
				}
				
				$this->data['review_no'] = $product_info['reviews'];		
				$this->data['quantity'] = $product_info['quantity'];						
			]]>
			</add>
		</operation>
	</file>
	<file name="catalog/view/theme/*/template/product/product.tpl">
        <operation>
            <search position="before"><![CDATA[<h1]]>
			</search>
            <add>
			<![CDATA[
				<span xmlns:v="http://rdf.data-vocabulary.org/#">
				<?php foreach ($mbreadcrumbs as $mbreadcrumb) { ?>
				<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="<?php echo $mbreadcrumb['href']; ?>" alt="<?php echo $mbreadcrumb['text']; ?>"></a></span>
				<?php } ?>				
				</span>
			
				<span itemscope itemtype="http://schema.org/Product">
				<meta itemprop="url" content="<?php echo $breadcrumb['href']; ?>" >
				<meta itemprop="name" content="<?php echo $heading_title; ?>" >
				<meta itemprop="model" content="<?php echo $model; ?>" >
				<meta itemprop="manufacturer" content="<?php echo $manufacturer; ?>" >
				
				<?php if ($thumb) { ?>
				<meta itemprop="image" content="<?php echo $thumb; ?>" >
				<?php } ?>
				
				<?php if ($images) { foreach ($images as $image) {?>
				<meta itemprop="image" content="<?php echo $image['thumb']; ?>" >
				<?php } } ?>
				
				<span itemprop="offers" itemscope itemtype="http://schema.org/Offer">
				<meta itemprop="price" content="<?php echo ($special ? $special : $price); ?>" />
				<meta itemprop="priceCurrency" content="<?php echo $this->currency->getCode(); ?>" />
				<link itemprop="availability" href="http://schema.org/<?php echo (($quantity > 0) ? "InStock" : "OutOfStock") ?>" />
				</span>
				
				<span itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
				<meta itemprop="reviewCount" content="<?php echo $review_no; ?>">
				<meta itemprop="ratingValue" content="<?php echo $rating; ?>">
				</span></span>
            ]]>
			</add>
        </operation>               
    </file>
	<file name="catalog/view/theme/*/template/product/category.tpl">
        <operation>
            <search position="before"><![CDATA[<h1]]>
			</search>
            <add>
			<![CDATA[
				<span xmlns:v="http://rdf.data-vocabulary.org/#">
				<?php foreach ($breadcrumbs as $breadcrumb) { ?>
				<span typeof="v:Breadcrumb"><a rel="v:url" property="v:title" href="<?php echo $breadcrumb['href']; ?>" alt="<?php echo $breadcrumb['text']; ?>"></a></span>
				<?php } ?>				
				</span>			
            ]]>
			</add>
        </operation>               
    </file>
	<file name="catalog/model/catalog/product.php">
		<operation>
			<search position="before" offset="1"><![CDATA[?>]]></search>
			<add><![CDATA[
			   public function getFullPath($product_id) {
			   
				  $query = $this->db->query("SELECT COUNT(product_id) AS total, category_id as catid FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'");
				  
				  if ($query->row['total'] >= 1) {
					 $path = array();
					 $path[0] = $query->row['catid'];
					 
					 $query = $this->db->query("SELECT parent_id AS pid FROM " . DB_PREFIX . "category WHERE category_id = '" . (int)$path[0] . "'");

					 $parent_id = $query->row['pid'];
					 
					 $i = 1;
					 while($parent_id > 0) {
						$path[$i] = $parent_id;		
						
						$query = $this->db->query("SELECT parent_id AS pid FROM " . DB_PREFIX . "category WHERE category_id = '" . (int)$parent_id . "'");
						$parent_id = $query->row['pid'];
						$i++;
					 }
				  
					 $path = array_reverse($path);
					 					 	  
					 $fullpath = '';
					 
					 foreach($path as $val){
						$fullpath .= '_'.$val;
					 }
				  
					 return ltrim($fullpath, '_');
				  }	else {
					 return false;
				  }
	   }]]></add>
		</operation>
	</file>
</modification>