Example #1
0
 /**
  * {@inheritDoc}
  */
 protected function getPreparedItem($entity, $resultFields = [])
 {
     // convert addresses to plain array
     $addressTypesData = [];
     /** @var $entity AbstractTypedAddress */
     foreach ($entity->getTypes() as $addressType) {
         $addressTypesData[] = parent::getPreparedItem($addressType);
     }
     $result = parent::getPreparedItem($entity);
     $result['types'] = $addressTypesData;
     $result['countryIso2'] = $entity->getCountry()->getIso2Code();
     $result['countryIso3'] = $entity->getCountry()->getIso3Code();
     $result['regionCode'] = $entity->getRegionCode();
     unset($result['owner']);
     return $result;
 }
Example #2
0
 /**
  * {@inheritdoc}
  */
 protected function createEntity()
 {
     $entity = parent::createEntity();
     $entity->setOwner($this->getUser());
     return $entity;
 }
Example #3
0
 /**
  * {@inheritDoc}
  */
 protected function fixFormData(array &$data, $entity)
 {
     /** @var CaseEntity $entity */
     parent::fixFormData($data, $entity);
     unset($data['id']);
     unset($data['createdAt']);
     unset($data['updatedAt']);
     return true;
 }
 /**
  * @inheritdoc
  */
 protected function handleDelete($entity, ObjectManager $em)
 {
     parent::handleDelete($entity, $em);
     /** @var \Oro\Bundle\SecurityBundle\Acl\Persistence\AclSidManager $aclSidManager */
     $aclSidManager = $this->get('oro_security.acl.sid_manager');
     if ($aclSidManager->isAclEnabled()) {
         $aclSidManager->deleteSid($aclSidManager->getSid($entity));
     }
 }
 /**
  * {@inheritdoc}
  */
 protected function filterQueryParameters(array $supportedParameters)
 {
     $filteredParameters = parent::filterQueryParameters($supportedParameters);
     $result = [];
     foreach ($filteredParameters as $key => $value) {
         $startPosition = strpos($key, 'start');
         $endPosition = strpos($key, 'end');
         if ($startPosition === 0) {
             $realKey = lcfirst(substr($key, $startPosition + strlen('start')));
             $result[$realKey] = ['>=', $value[1]];
         } elseif ($endPosition === 0) {
             $realKey = lcfirst(substr($key, $endPosition + strlen('end')));
             $result[$realKey] = ['<=', $value[1]];
         } else {
             $result[$key] = $value;
         }
     }
     return $result;
 }
Example #6
0
 /**
  * {@inheritdoc}
  */
 protected function transformEntityField($field, &$value)
 {
     switch ($field) {
         case 'owner':
             if ($value) {
                 $value = array('id' => $value->getId(), 'name' => $value->getName());
             }
             break;
         default:
             parent::transformEntityField($field, $value);
     }
 }
Example #7
0
 /**
  * {@inheritdoc}
  */
 protected function getPreparedItem($entity, $resultFields = [])
 {
     $result = parent::getPreparedItem($entity);
     unset($result['salt']);
     unset($result['password']);
     unset($result['confirmationToken']);
     unset($result['passwordRequestedAt']);
     unset($result['imapConfiguration']);
     unset($result['currentStatus']);
     unset($result['statuses']);
     unset($result['api']);
     //todo: Add user avatar to api
     /*$result['imagePath'] = null;
       if (isset($result['image'])) {
           $result['imagePath'] = $this->getRequest()->getBasePath() . '/' . $entity->getImagePath();
       }
       unset($result['image']);*/
     return $result;
 }
Example #8
0
 /**
  * {@inheritDoc}
  */
 protected function fixFormData(array &$data, $entity)
 {
     parent::fixFormData($data, $entity);
     unset($data['id']);
     unset($data['updatedAt']);
     return true;
 }
Example #9
0
 /**
  * {@inheritdoc}
  */
 protected function fixFormData(array &$data, $entity)
 {
     parent::fixFormData($data, $entity);
     unset($data['id']);
     unset($data['owner']);
     unset($data['owner_id']);
     unset($data['editor']);
     unset($data['editor_id']);
     unset($data['relationClass']);
     unset($data['relationId']);
     unset($data['createdAt']);
     unset($data['updatedAt']);
     unset($data['editable']);
     unset($data['removable']);
     return true;
 }
Example #10
0
 /**
  * {@inheritdoc}
  */
 protected function fixRequestAttributes($entity)
 {
     $formAlias = 'b2bcustomer';
     $customerData = $this->getRequest()->request->get($formAlias);
     // @todo: just a temporary workaround until new API is implemented
     // - convert country name to country code (as result we accept both the code and the name)
     //   also it will be good to accept ISO3 code in future, need to be discussed with product owners
     // - convert region name to region code (as result we accept the combined code, code and name)
     // - move region name to region_text field for unknown region
     if (array_key_exists('shippingAddress', $customerData)) {
         AddressApiUtils::fixAddress($customerData['shippingAddress'], $this->get('doctrine.orm.entity_manager'));
         $this->getRequest()->request->set($formAlias, $customerData);
     }
     if (array_key_exists('billingAddress', $customerData)) {
         AddressApiUtils::fixAddress($customerData['billingAddress'], $this->get('doctrine.orm.entity_manager'));
         $this->getRequest()->request->set($formAlias, $customerData);
     }
     parent::fixRequestAttributes($entity);
 }
 /**
  * {@inheritDoc}
  */
 protected function getPreparedItem($entity, $resultFields = [])
 {
     // convert addresses to plain array
     $addressTypesData = [];
     /** @var $addressType AddressType */
     foreach ($entity->getTypes() as $addressType) {
         $addressTypesData[] = parent::getPreparedItem($addressType);
     }
     $addressDefaultsData = [];
     /** @var  $defaultType AddressType */
     foreach ($entity->getDefaults() as $defaultType) {
         $addressDefaultsData[] = parent::getPreparedItem($defaultType);
     }
     $result = parent::getPreparedItem($entity);
     $result['types'] = $addressTypesData;
     $result['defaults'] = $addressDefaultsData;
     $result['countryIso2'] = $entity->getCountryIso2();
     $result['countryIso3'] = $entity->getCountryIso2();
     $result['regionCode'] = $entity->getRegionCode();
     $result['country'] = $entity->getCountryName();
     unset($result['frontendOwner']);
     return $result;
 }
 protected function transformEntityField($field, &$value)
 {
     switch ($field) {
         case 'country':
             $value = array('iso2code' => $value->getIso2Code(), 'iso3code' => $value->getIso3Code(), 'name' => $value->getName());
             break;
         case 'state':
             $value = array('code' => $value->getCode(), 'name' => $value->getName());
             break;
         default:
             parent::transformEntityField($field, $value);
     }
 }
 /**
  * {@inheritdoc}
  */
 protected function fixFormData(array &$data, $entity)
 {
     parent::fixFormData($data, $entity);
     unset($data['calendarName'], $data['removable'], $data['canAddEvent'], $data['canEditEvent'], $data['canDeleteEvent']);
     return true;
 }
Example #14
0
 /**
  * {@inheritdoc}
  */
 protected function getPreparedItems($entities, $resultFields = [])
 {
     $result = [];
     $ids = array_map(function (Account $account) {
         return $account->getId();
     }, $entities);
     $ap = $this->get('orocrm_channel.provider.lifetime.amount_provider');
     $lifetimeValues = $ap->getAccountsLifetimeQueryBuilder($ids)->getQuery()->getArrayResult();
     $lifetimeMap = [];
     foreach ($lifetimeValues as $value) {
         $lifetimeMap[$value['accountId']] = (double) $value['lifetimeValue'];
     }
     foreach ($entities as $entity) {
         /** @var Account $entity */
         $entityArray = parent::getPreparedItem($entity, $resultFields);
         if (array_key_exists($entity->getId(), $lifetimeMap)) {
             $entityArray['lifetimeValue'] = $lifetimeMap[$entity->getId()];
         } else {
             $entityArray['lifetimeValue'] = 0.0;
         }
         $result[] = $entityArray;
     }
     return $result;
 }
Example #15
0
 /**
  * {@inheritdoc}
  */
 protected function getPreparedItem($entity, $resultFields = [])
 {
     $result = parent::getPreparedItem($entity);
     unset($result['roles']);
     return $result;
 }
Example #16
0
 /**
  * {@inheritdoc}
  */
 protected function transformEntityField($field, &$value)
 {
     switch ($field) {
         case 'owner':
         case 'updatedBy':
             if ($value) {
                 $value = $value->getId();
             }
             break;
         default:
             parent::transformEntityField($field, $value);
     }
 }
 /**
  * {@inheritdoc}
  */
 protected function fixFormData(array &$data, $entity)
 {
     parent::fixFormData($data, $entity);
     if (isset($data['allDay']) && ($data['allDay'] === 'false' || $data['allDay'] === '0')) {
         $data['allDay'] = false;
     }
     // remove auxiliary attributes if any
     unset($data['updatedAt']);
     unset($data['editable']);
     unset($data['removable']);
     unset($data['notifiable']);
     return true;
 }