@@ -19,19 +19,19 @@ class Db {
19
19
/**
20
20
* global param db
21
21
*/
22
- private $ key = null ; // Передаем ключ шифрования файлов
23
- private $ crypt = null ; // true|false Шифруем или нет
24
- private $ temp = null ; // Очередь на запись. true|false
25
- private $ api = null ; // true|false Если установить false база будет работать как основное хранилище
26
- private $ cached = null ; // Кеширование. true|false
27
- private $ cache_lifetime = 30 ; // Min
22
+ private $ key = ' 0 ' ; // Передаем ключ шифрования файлов
23
+ private $ crypt = ' 0 ' ; // true|false Шифруем или нет
24
+ private $ temp = ' 0 ' ; // Очередь на запись. true|false
25
+ private $ api = ' 0 ' ; // true|false Если установить false база будет работать как основное хранилище
26
+ private $ cached = ' 0 ' ; // Кеширование. true|false
27
+ private $ cache_lifetime = ' 30 ' ; // Min
28
28
private $ export = 'false ' ;
29
- private $ size = 50000 ;
30
- private $ max_size = 1000000 ;
29
+ private $ size = ' 50000 ' ;
30
+ private $ max_size = ' 1000000 ' ;
31
31
private $ dir_core = 'db.core ' ;
32
32
private $ dir_log = 'db.log ' ;
33
33
private $ dir_cached = 'db.cached ' ;
34
- private $ structure = null ;
34
+ private $ structure = ' 0 ' ;
35
35
36
36
public function __construct ($ db_path )
37
37
{
@@ -61,86 +61,7 @@ public function run()
61
61
62
62
// Проверяем наличие каталога базы данных, если нет создаем
63
63
if (!file_exists ($ this ->db_path )){mkdir ($ this ->db_path );}
64
-
65
- if (file_exists ($ this ->db_path .'db.data.json ' )) {
66
- // Резервная копия основной таблицы
67
- $ db_data = json_decode (file_get_contents ($ this ->db_path .'db.data.json ' ), true );
68
- if (isset ($ db_data ["0 " ]["id " ])) {
69
- if ($ db_data ["0 " ]["id " ] == 1 ) {
70
- file_put_contents (JSON_DB_DIR_CACHED .'/db.json ' , json_encode ($ db_data ));
71
- }
72
- } else {
73
- if (file_exists (JSON_DB_DIR_CACHED .'/db.json ' )) {
74
- // Если таблица повреждена востанавливаем из резервной копии
75
- $ db_data = json_decode (file_get_contents (JSON_DB_DIR_CACHED .'/db.json ' ), true );
76
- if (isset ($ db_data ["0 " ]["id " ])) {
77
- if ($ db_data ["0 " ]["id " ] == 1 ) {
78
- file_put_contents ($ this ->db_path .'db.data.json ' , json_encode ($ db_data ));
79
- }
80
- }
81
- } else {
82
- // Если резервного файла нет
83
- // Удаляем оба файла, для стандартного востановления
84
- unlink ($ this ->db_path .'db.config.json ' );
85
- unlink ($ this ->db_path .'db.data.json ' );
86
- }
87
- }
88
- }
89
-
90
- // Проверяем наличие главной таблицы если нет создаем
91
- try {
92
- \jsonDB \Validate::table ('db ' )->exists ();
93
-
94
- // Обновляем таблицу конфигурации db из параметров
95
- $ update = jsonDb::table ('db ' )->find (1 ); // Edit with ID 1
96
- $ update ->db_path = $ this ->db_path ;
97
- $ update ->cached = $ this ->cached ;
98
- $ update ->temp = $ this ->temp ;
99
- $ update ->api = $ this ->api ;
100
- $ update ->cache_lifetime = $ this ->cache_lifetime ;
101
- $ update ->export = $ this ->export ;
102
- $ update ->size = $ this ->size ;
103
- $ update ->max_size = $ this ->max_size ;
104
- $ update ->dir_core = $ this ->dir_core ;
105
- $ update ->dir_log = $ this ->dir_log ;
106
- $ update ->dir_cached = $ this ->dir_cached ;
107
- $ update ->save ();
108
-
109
- } catch (dbException $ e ) {
110
-
111
- try {
112
- // Создаем главную таблицу конфигурации db
113
- jsonDb::create ('db ' , array (
114
- 'db_id ' => 'integer ' ,
115
- 'type ' => 'string ' ,
116
- 'table ' => 'string ' ,
117
- 'version ' => 'string ' ,
118
- 'time ' => 'string ' ,
119
- 'user_key ' => 'string ' ,
120
- 'password ' => 'string ' ,
121
- 'public_key ' => 'string ' ,
122
- 'template ' => 'string ' ,
123
- 'temp ' => 'integer ' ,
124
- 'api ' => 'integer ' ,
125
- 'cached ' => 'integer ' ,
126
- 'cache_lifetime ' => 'integer ' ,
127
- 'export ' => 'string ' ,
128
- 'size ' => 'integer ' ,
129
- 'max_size ' => 'integer ' ,
130
- 'db_path ' => 'string ' ,
131
- 'dir_core ' => 'string ' ,
132
- 'dir_log ' => 'string ' ,
133
- 'dir_cached ' => 'string '
134
- ));
135
-
136
- } catch (dbException $ e ) {
137
- // Возникла ошибка при создании таблицы
138
- // Это означает что балица обнулена
139
-
140
- }
141
-
142
- }
143
-
64
+
144
65
// Проверяем наличие таблицы cached
145
66
try {
146
67
Validate::table ('cached ' )->exists ();} catch (dbException $ e ){
@@ -169,39 +90,6 @@ public function run()
169
90
));
170
91
171
92
}
172
-
173
- try {
174
- jsonDb::table ('db ' )->find (1 );
175
- } catch (dbException $ e ){
176
-
177
- // Создаем основную запись в главной таблице
178
- $ row = jsonDb::table ('db ' );
179
- $ row ->type = 'root ' ;
180
- $ row ->table = 'root ' ;
181
- $ row ->version = '1.0.1 ' ;
182
- $ row ->time = $ date ;
183
- $ row ->user_key = $ this ->randomUid ();
184
- $ row ->password = $ this ->randomUid ();
185
- $ row ->temp = $ this ->temp ;
186
- $ row ->api = $ this ->api ;
187
- $ row ->cached = $ this ->cached ;
188
- $ row ->cache_lifetime = $ this ->cache_lifetime ;
189
- $ row ->export = $ this ->export ;
190
- $ row ->size = $ this ->size ;
191
- $ row ->max_size = $ this ->max_size ;
192
- $ row ->db_path = $ this ->db_path ;
193
- $ row ->dir_core = $ this ->dir_core ;
194
- $ row ->dir_log = $ this ->dir_log ;
195
- $ row ->dir_cached = $ this ->dir_cached ;
196
- $ row ->save ();
197
-
198
-
199
- }
200
-
201
- // Читаем главную таблицу
202
- $ table = jsonDb::table ('db ' )->find (1 );
203
- define ('JSON_DB_USER_KEY ' , $ table ->user_key );
204
- define ('JSON_DB_PASSWORD ' , $ table ->password );
205
93
206
94
// Проверяем существуют ли необходимые каталоги, если нет создаем
207
95
if (!file_exists (JSON_DB_DB_PATH )){mkdir (JSON_DB_DB_PATH );}
@@ -309,7 +197,7 @@ public function run()
309
197
310
198
public static function cacheReader ($ uri ) // Читает кеш или удаляет кеш если время жизни просрочено
311
199
{
312
- if (JSON_DB_CACHED === 1 ) {
200
+ if (JSON_DB_CACHED == ' 1 ' ) {
313
201
314
202
$ row = jsonDb::table ('cached ' )->where ('cached_uri ' , '= ' , $ uri )->find ();
315
203
0 commit comments