title: How to track transaction history in solidity?
body: <p>I'm trying to create a blockchain
  system that has the following features</p>
  <ol>
  <li>Get current owner</li>
  <li>Change owner</li>
  <li>Get product history (all users that have owned this product at some point of time)</li>
  </ol>
  <p>Now I don't know how do I implement this product history requirement. Like we have to track all the transactions of the type change owner but don't know how to implement this.</p>
  <p>We are using this smart contract
  <a href="https://github.com/niksvisuals/contracts/blob/master/ProductManager.sol" rel="nofollow noreferrer">https://github.com/niksvisuals/contracts/blob/master/ProductManager.sol</a></p>
  <p>Note: in our smart contract the change owner is implemented as (ship product + receive product)</p>