/**
  * converts Tinebase_Record_Abstract to external format
  * 
  * @param  Tinebase_Record_Abstract $_model
  * @return mixed
  * 
  * @todo rename model to record?
  */
 public function fromTine20Model(Tinebase_Record_Abstract $_model)
 {
     /** @var Tinebase_Model_ImportExportDefinition $_model */
     $this->_convertOptions($_model);
     $result = parent::fromTine20Model($_model);
     return $result;
 }
 /**
  * converts Tinebase_Record_Abstract to external format
  *
  * @param  Tinebase_Record_Abstract $_record
  * @return mixed
  */
 public function fromTine20Model(Tinebase_Record_Abstract $_record)
 {
     $jsonData = parent::fromTine20Model($_record);
     if (Tinebase_Core::getUser()->hasRight('Calendar', Calendar_Acl_Rights::MANAGE_RESOURCES)) {
         $jsonData['grants'] = Tinebase_Container::getInstance()->getGrantsOfContainer($_record->container_id, TRUE)->toArray();
         $jsonData['grants'] = Tinebase_Frontend_Json_Container::resolveAccounts($jsonData['grants']);
     }
     return $jsonData;
 }
 /**
  * converts Tinebase_Record_Abstract to external format
  *
  * @param  Tinebase_Record_Abstract $_record
  * @return mixed
  */
 public function fromTine20Model(Tinebase_Record_Abstract $_record)
 {
     self::resolveRelatedData($_record);
     return parent::fromTine20Model($_record);
 }
 /**
  * Return a single record
  *
  * @param   string $id
  * @return  array record data
  */
 public function getInvoice($id)
 {
     $invoice = $this->_get($id, Sales_Controller_Invoice::getInstance());
     $json = new Tinebase_Convert_Json();
     $resolvedProducts = new Tinebase_Record_RecordSet('Sales_Model_Product');
     $productController = Sales_Controller_Product::getInstance();
     foreach ($invoice['relations'] as &$relation) {
         if ($relation['related_model'] == "Sales_Model_ProductAggregate") {
             if (!($product = $resolvedProducts->getById($relation['related_record']['product_id']))) {
                 $product = $productController->get($relation['related_record']['product_id']);
                 $resolvedProducts->addRecord($product);
             }
             $relation['related_record']['product_id'] = $json->fromTine20Model($product);
         }
     }
     return $invoice;
 }
 /**
  * converts Tinebase_Record_Abstract to external format
  * 
  * @param  Tinebase_Record_Abstract $_model
  * @return mixed
  * 
  * @todo rename model to record?
  */
 public function fromTine20Model(Tinebase_Record_Abstract $_model)
 {
     $this->_convertOptions($_model);
     $result = parent::fromTine20Model($_model);
     return $result;
 }