<?php

namespace common\modules\languages\repositories;

use common\modules\languages\entities\Language;
use core\repositories\NotFoundException;

class LanguageRepository
{
    public function get($id): Language
    {
        if (!$language = Language::findOne($id)) {
            throw new NotFoundException('Language is not found.');
        }
        return $language;
    }

    public function save(Language $language): void
    {
        if (!$language->save()) {
            throw new \RuntimeException('Saving error.');
        }
    }

    public function remove(Language $language): void
    {
        if (!$language->delete()) {
            throw new \RuntimeException('Removing error.');
        }
    }

    public function clearDefaults()
    {
    	Language::updateAll(['default' => 0]);
    }
}