Added translated() method to PageTranslateInterface

This commit is contained in:
Matias Griese
2021-12-01 14:57:27 +02:00
parent 4c3daf6e6f
commit d59a4c63db
4 changed files with 20 additions and 9 deletions

View File

@@ -3,6 +3,7 @@
1. [](#new)
* Made `Grav::redirect()` to accept `Route` class
* Added `translated()` method to `PageTranslateInterface`
2. [](#improved)
* Upgraded vendor libs for PHP 8.1 compatibility
* Upgraded to **composer v2.1.14** for PHP 8.1 compatibility

View File

@@ -25,9 +25,9 @@ use Grav\Common\Page\Pages;
use Grav\Common\User\Interfaces\UserInterface;
use Grav\Common\Utils;
use Grav\Framework\Filesystem\Filesystem;
use Grav\Framework\Flex\FlexObject;
use Grav\Framework\Flex\Interfaces\FlexObjectInterface;
use Grav\Framework\Flex\Pages\FlexPageObject;
use Grav\Framework\Object\ObjectCollection;
use Grav\Framework\Route\Route;
use Grav\Framework\Route\RouteFactory;
use Grav\Plugin\Admin\Admin;
@@ -93,11 +93,6 @@ class PageObject extends FlexPageObject
}
}
public function translated(): bool
{
return $this->translatedLanguages(true) ? true : false;
}
/**
* @param string|array $query
* @return Route|null
@@ -282,7 +277,7 @@ class PageObject extends FlexPageObject
/**
* @param array|bool $reorder
* @return FlexObject|FlexObjectInterface
* @return static
*/
public function save($reorder = true)
{
@@ -317,7 +312,7 @@ class PageObject extends FlexPageObject
}
/**
* @return PageObject
* @return static
*/
public function delete()
{
@@ -466,7 +461,9 @@ class PageObject extends FlexPageObject
if ($isMoved && $this->order() !== false) {
$parentKey = $this->getProperty('parent_key');
if ($parentKey === '') {
$newParent = $this->getFlexDirectory()->getIndex()->getRoot();
/** @var PageIndex $index */
$index = $this->getFlexDirectory()->getIndex();
$newParent = $index->getRoot();
} else {
$newParent = $this->getFlexDirectory()->getObject($parentKey, 'storage_key');
if (!$newParent instanceof PageInterface) {

View File

@@ -7,6 +7,11 @@ namespace Grav\Common\Page\Interfaces;
*/
interface PageTranslateInterface
{
/**
* @return bool
*/
public function translated(): bool;
/**
* Return an array with the routes of other translated languages
*

View File

@@ -26,6 +26,14 @@ trait PageTranslateTrait
/** @var PageInterface[] */
private $_translations = [];
/**
* @return bool
*/
public function translated(): bool
{
return (bool)$this->translatedLanguages(true);
}
/**
* @param string|null $languageCode
* @param bool|null $fallback