fileComponent = $fileComponent; $this->stringComponent = $stringComponent; } public function getMetaTitle($entity, $title = null) { if($entity) { if(method_exists($entity, 'getMetaTitle') && $entity->getMetaTitle()) { return $entity->getMetaTitle() ; } elseif(!is_null($title)) { return $title; } elseif(method_exists($entity, 'getTitle') && $entity->getTitle()) { return $entity->getTitle() ; } } return '' ; } public function getMetaDescription($entity) { if($entity) { if(method_exists($entity, 'getMetaDescription') && $entity->getMetaDescription()) { return $entity->getMetaDescription() ; } elseif(method_exists($entity, 'getDescription') && $entity->getDescription()) { return $this->formatDescription($entity->getDescription()); } } return '' ; } public function getOpenGraphTitle($entity, $title = null) { if($entity) { if(method_exists($entity, 'getOpenGraphTitle') && $entity->getOpenGraphTitle()) { return $entity->getOpenGraphTitle() ; } elseif(!is_null($title)) { return $title; } elseif(method_exists($entity, 'getTitle') && $entity->getTitle()) { return $entity->getTitle() ; } } return '' ; } public function getOpenGraphDescription($entity) { if($entity) { if(method_exists($entity, 'getOpenGraphDescription') && $entity->getOpenGraphDescription()) { return $entity->getOpenGraphDescription() ; } elseif(method_exists($entity, 'getDescription') && $entity->getDescription()) { return $this->formatDescription($entity->getDescription()); } } return '' ; } public function getOpenGraphImage($entity) { if($entity) { if(method_exists($entity, 'getOpenGraphImage') && $entity->getOpenGraphImage()) { return $entity->getOpenGraphImage() ; } elseif(method_exists($entity, 'getImage') && $entity->getImage()) { return $entity->getImage() ; } } return '' ; } public function getOpenGraphImageUrl($entity) { $image = $this->getOpenGraphImage($entity); if($image && $image->getPath() && strlen($image->getPath()) > 0) { return $this->fileComponent->getAssetUrl($image->getPath()); } return ''; } public function formatDescription($description) { $description = trim($description); $description = $this->stringComponent->limitText($description, 50); $description = str_replace("\r\n","",$description); return $description; } }