/**
  * Fetch custom Element view.
  *
  * @param   string  $name          Field Name.
  * @param   mixed   $value         Field value.
  * @param   mixed   $node          Field node.
  * @param   mixed   $control_name  Field control_name/Id.
  *
  * @since   2.2
  * @return   null
  */
 public function fetchElement($name, $value, $node, $control_name)
 {
     $db = JFactory::getDBO();
     $user = JFactory::getUser();
     // Load Zone helper.
     $path = JPATH_SITE . DS . "components" . DS . "com_quick2cart" . DS . 'helpers' . DS . "zoneHelper.php";
     JLoader::register('zoneHelper', $path);
     JLoader::load('zoneHelper');
     $zoneHelper = new zoneHelper();
     // Get user's accessible zone list
     $zoneList = $zoneHelper->getUserZoneList('', array(1));
     $options = array();
     $app = JFactory::getApplication();
     $jinput = $app->input;
     $taxrate_id = $jinput->get('id');
     $defaultZoneid = "";
     if ($taxrate_id) {
         $defaultZoneid = $zoneHelper->getZoneFromTaxRateId($taxrate_id);
     }
     foreach ($zoneList as $zone) {
         $zoneName = ucfirst($zone['name']);
         $options[] = JHtml::_('select.option', $zone['id'], $zoneName);
     }
     $fieldName = $name;
     return JHtml::_('select.genericlist', $options, $fieldName, 'class="inputbox required"  size="1"  ', 'value', 'text', $defaultZoneid, $control_name);
 }