<?php

    namespace App\System\Vendor;

    /*
        ??  beSetLanguage = Dil paketini ayarlama
        ??  beReadLang = Gerekli dil dosyasını okuma
        ??  beLang = Gerekli bilgilinin getirilmesi
        beLanguage::beSetLanguage("tr");
        beLanguage::beReadLang("auth");
        beLanguage::beLang("login");
    */

    class beLanguage {
        public static $lang = "",$lang_path = "",$lang_data = [],$loaded_langs = [];
        public static function beSetLanguage($lang = ""){
            self::$loaded_langs = [];
            self::$lang_data = [];
            $path = BE_APPPATH."resources/languages/".$lang;
            if(!is_dir($path)){
                echo "Belirtilen dil dosyası bulunamadı!";
                exit;
            }
            self::$lang = $lang;
            self::$lang_path = $path."/";
        }
        public static function beReadLang($name = ""){
            if(in_array($name,self::$loaded_langs)){
                return false;
            }
            $path = self::$lang_path;
            if(empty($path)){
                echo "Öncelikle bir dil seçmeniz gerekiyor!";
                exit;
            }
            $file = $path.$name.".lang.php";
            if(!file_exists($file)){
                echo "Belirtilen dil dosyası bulunamadı";
                exit;
            }
            $data = require $file;
            self::$loaded_langs[] = $name;
            self::$lang_data = array_merge(self::$lang_data,$data);
            return $data;
        }
        public static function beLang($name = ""){
            return self::$lang_data[$name];
        }
    }
?>