public function create($elementType, $element)
 {
     $db = PearDatabase::getInstance();
     $sql = 'SELECT * FROM vtiger_producttaxrel WHERE productid =? AND taxid=?';
     list($typeId, $productId) = vtws_getIdComponents($element['productid']);
     list($typeId, $taxId) = vtws_getIdComponents($element['taxid']);
     $params = array($productId, $taxId);
     $result = $db->pquery($sql, $params);
     $rowCount = $db->num_rows($result);
     if ($rowCount > 0) {
         $id = $db->query_result($result, 0, $this->meta->getObectIndexColumn());
         $meta = $this->getMeta();
         $element['id'] = vtws_getId($meta->getEntityId(), $id);
         return $this->update($element);
     } else {
         unset($element['id']);
         return parent::create($elementType, $element);
     }
 }
 public function describe($elementType)
 {
     $describe = parent::describe($elementType);
     foreach ($describe['fields'] as $key => $list) {
         if ($list["name"] == 'description') {
             unset($describe['fields'][$key]);
         }
     }
     return $describe;
 }
 public function __create($elementType, $element)
 {
     $element['id'] = $element['parent_id'];
     unset($element['parent_id']);
     $success = parent::__create($elementType, $element);
     return $success;
 }
 public function update($element)
 {
     $element['taxname'] = $this->getCurrentTaxName();
     return parent::update($element);
 }
 public function revise($element)
 {
     $element = $this->handleFileUpload($element);
     return parent::revise($element);
 }
 public function update($element)
 {
     $element = $this->handleFileUpload($element);
     return parent::update($element);
 }