155.     public function __construct(array $config = [])
156.     {
157.         $this->defaultConfig = Config::default('ZN\Database\DatabaseDefaultConfiguration')
158.                                      ::get('Database', 'database');
159.         $this->config        = array_merge($this->defaultConfig, $config);
160.         $this->db            = $this->runDriver();
161.         $this->prefix        = $this->config['prefix'];
162.         Properties::$prefix  = $this->prefix;
163. 
164.         $this->db->connect($this->config);
165.     }
166. 
167.     /**
168.      * Magic Debug Info
169.      */
170.     public function __debugInfo()
171.     {
172.         return ['return' => $this->stringQuery ?: 'This is a general object, please call the sub method!'];
173.     }
174. 
        
1338.      */
1339.     public function query(string $query, array $secure = [])
1340.     {
1341.         $secure     = $this->secure ?: $secure; $this->secure     = [];    
1342.         $caching    = $this->caching;           $this->caching    = [];
1343.         $tableName  = $this->tableName;         $this->tableName  = '';
1344.         $jsonDecode = $this->jsonDecode;        $this->jsonDecode = [];
1345.         $paging     = $this->paging ?? 'row';   $this->paging     = NULL;
1346. 
1347.         return (new self($this->config))->setQueryByDriver($query, $secure, 
1348.         [
1349.             'caching'    => $caching, 
1350.             'tableName'  => $tableName,
1351.             'jsonDecode' => $jsonDecode,
1352.             'paging'     => $paging
1353.         ]);
1354.     }
1355. 
1356.     /**
1357.      * Exec Basic Query
        
792.         }
793. 
794.         if( $this->transaction === true )
795.         {
796.             $this->transactionQueries[] = $finalQuery;
797. 
798.             return $this;
799.         }
800. 
801.         return $this->$returnQuery($finalQuery, $this->secure);
802.     }
803. 
804.     /**
805.      * Duplicate Check
806.      * 
807.      * @param string ...$args
808.      * 
809.      * @return DB
810.      */
811.     public function duplicateCheck(...$args) : DB
        
205.             {
206.                 $result = 'value';
207. 
208.                 $this->select($select);
209. 
210.                 $whereClause = true;
211.             }    
212.         }
213. 
214.         $return = $this->get($method);
215. 
216.         # Return ->get()
217.         if( ! isset($result) )
218.         {
219.             return $return;
220.         }
221.         
222.         # Return ->row(0) || result('object')
223.         return $return->$result($whereClause);
224.     }
        
84.              return $this->callWhereHavingTalkingQuery($split, $parameters);
85.          }
86.          # Insert - Update - Delete
87.          elseif( in_array($split[1] ?? NULL, ['Delete', 'Update', 'Insert']) )
88.          {
89.              return $this->callCrudTalkingQuery($split, $parameters);
90.          }
91.          else
92.          {
93.              return $this->callResultMethodsTalkingQuery($originMethodName, $split, $parameters);
94.          }
95.      }
96.  
97.      /**
98.       * Protected call join talkin query
99.       */
100.     protected function callJoinTalkingQuery($split, $parameters)
101.     {
102.         $type    = $split[0] ?? 'left';
103.         $table1  = $split[2] ?? '';
        
42.     // gorusler  İçerik Çekme
43.     public function  getByID($id = 0)
44.     {
45.         return DB::where('id', $id)->gorusler()->row();
46.     }
47. 
48. 
49.     public function getMainGorusler($start = 0, $limit = 300) {
50. 
51.         return DB::limit($start, $limit)->orderBy('id', 'ASC')->where("status", 1)->gorusler()->result();
52.     }
53. 
54.     public function goruslercount($cat_id = 0){
55. 
56.         if($cat_id == 0){
57.             return DB::where('status', 1)->select('id')->gorusler()->totalRows();
58.         }else{
59.                 return DB::where('cat_id', $cat_id)->where('status', 1)->select('id, cat_id')->gorusler()->totalRows();
60.         }
61. 
        
41.      * protected use class name
42.      * 
43.      * @param string $method
44.      * @param array  $parameters
45.      * 
46.      * @return mixed
47.      */
48.     protected static function useClassName($method, $parameters)
49.     {
50.         return Singleton::class(INTERNAL_ACCESS . static::getClassName())->$method(...$parameters);
51.     }
52. }
        
15.      * Magic call static
16.      * 
17.      * @param string $method
18.      * @param array  $parameters
19.      * 
20.      * @return mixed
21.      */
22.     public static function __callStatic($method, $parameters)
23.     {
24.         return self::useClassName($method, $parameters);
25.     }
26. 
27.     /**
28.      * Magic call
29.      * 
30.      * @param string $method
31.      * @param array  $parameters
32.      * 
33.      * @return mixed
34.      */
        
25. 
26. 
27.       $seo_title = "site_title_".Lang::get();
28.       $seo_key = "site_key_".Lang::get();
29.       $seo_desc = "site_desc_".Lang::get();
30.       $ayar = AyarModel::get();
31. 
32.       $atolyelers = AtolyeModel::getMainAtolye();
33.       $sinifs = SinifModel::getMainSinif();
34.       $goruslers = GoruslerModel::getMaingorusler();
35. 
36.         View::pdf($ayar->pdf);
37.         Masterpage::title($ayar->$seo_title);
38.         View::page('home/home');
39.         View::atolyelers($atolyelers);
40.         View::sinifs($sinifs);
41.         View::goruslers($goruslers);
42.         View::blogs(BlogModel::getMainBlog(0, 12));
43. 
44.         Masterpage::meta
        
145.         // @codeCoverageIgnoreEnd
146.         else
147.         {
148.             $this->connect = new MySQLi($host, $user, $pass, $db, $port);
149.         }
150.         restore_error_handler();
151.         
152.         if( $this->connect->connect_errno )
153.         {
154.             throw new ConnectionErrorException(NULL, $this->connect->connect_error); // @codeCoverageIgnore
155.         }
156. 
157.         mysqli_report(MYSQLI_REPORT_OFF);
158. 
159.         if( ! empty($this->config['charset']  ) ) $this->query("SET NAMES '".$this->config['charset']."'");  
160.         if( ! empty($this->config['charset']  ) ) $this->query('SET CHARACTER SET '.$this->config['charset']);  
161.         if( ! empty($this->config['collation']) ) $this->query('SET COLLATION_CONNECTION = "'.$this->config['collation'].'"');
162.     }
163. 
164.     /**