eZ\Publish\Core\Repository\LanguageService::disableLanguage PHP Method

disableLanguage() public method

Disables a language.
public disableLanguage ( eZ\Publish\API\Repository\Values\Content\Language $language ) : eZ\Publish\API\Repository\Values\Content\Language
$language eZ\Publish\API\Repository\Values\Content\Language
return eZ\Publish\API\Repository\Values\Content\Language
    public function disableLanguage(Language $language)
    {
        if ($this->repository->hasAccess('content', 'translations') !== true) {
            throw new UnauthorizedException('content', 'translations');
        }
        $loadedLanguage = $this->loadLanguageById($language->id);
        $updateLanguageStruct = new SPILanguage(array('id' => $loadedLanguage->id, 'languageCode' => $loadedLanguage->languageCode, 'name' => $loadedLanguage->name, 'isEnabled' => false));
        $this->repository->beginTransaction();
        try {
            $this->languageHandler->update($updateLanguageStruct);
            $this->repository->commit();
        } catch (Exception $e) {
            $this->repository->rollback();
            throw $e;
        }
        return $this->loadLanguageById($loadedLanguage->id);
    }