1
1
<?php
2
2
// (PHASE A) BASE SETTINGS
3
- // (A1) MODULES
4
- define ("I_USER " , defined ("USR_LVL " )); // user module
5
- define ("I_PUSH " , defined ("PUSH_PUBLIC " )); // push notifications module
3
+ // @TODO - ADD FILES, SQL, PHP VERSION, REQUIRED MODULES AS YOUR PROJECT NEEDS
6
4
7
- // (A2 ) FILES & FOLDERS THAT REQUIRE READ/WRITE PERMISSION
5
+ // (A1 ) FILES & FOLDERS THAT REQUIRE READ/WRITE PERMISSION
8
6
define ("I_ALL " , [
9
- // @TODO - ADD AS REQUIRED
10
7
PATH_BASE , PATH_ASSETS , PATH_LIB , PATH_PAGES , // PATH_UPLOADS,
11
8
PATH_LIB . "CORE-Config.php " ,
12
9
PATH_BASE . "index.php " ,
13
10
PATH_BASE . "CB-manifest.json "
14
11
]);
15
12
16
- // (A3) SQL FILES - FROM OLDEST TO NEWEST VERSIONS
17
- // @TODO - SET AS REQUIRED
13
+ // (A2) SQL FILES - FROM OLDEST TO NEWEST VERSIONS
18
14
define ("I_SQL " , ["SQL-CoreBoxx-1.sql " ]);
19
15
20
- // (A4) MINIMUM APACHE VERSION + PHP VERSION + EXTENSIONS
21
- define ("I_MIN_PHP " , "8.0.0 " );
22
- define ("I_PDO " , extension_loaded ("pdo_mysql " ));
23
- define ("I_OPENSSL " , extension_loaded ("openssl " ));
16
+ // (A3) APACHE + PHP + EXTENSIONS
24
17
define ("I_APACHE " , strpos (strtolower ($ _SERVER ["SERVER_SOFTWARE " ]), "apache " )!==false );
18
+ define ("I_MIN_PHP " , "8.0.0 " );
25
19
define ("I_REWRITE " , I_APACHE && function_exists ("apache_get_version " )
26
20
? in_array ("mod_rewrite " , apache_get_modules ()) : false
27
21
);
22
+ define ("I_PDO " , extension_loaded ("pdo_mysql " ));
23
+ define ("I_OPENSSL " , extension_loaded ("openssl " ));
24
+
25
+ // (A4) CORE BOXX MODULES & SETTINGS
26
+ define ("I_USER " , defined ("USR_LVL " )); // user module
27
+ define ("I_PUSH " , defined ("PUSH_PUBLIC " )); // push notifications module
28
+ define ("I_CO " , false ); // include company name, address, tel, email
28
29
29
30
class Install extends Core {
30
31
// (PHASE B) BASE REQUIREMENTS & SYSTEM CHECK
@@ -108,7 +109,7 @@ function E2 () {
108
109
exit ($ check =="installer/test/ " ? "OK " : "INVALID HOST URL " );
109
110
}
110
111
111
- // (PHASE F) VERIFY HTACCESS FILE + INSTALL
112
+ // (PHASE F) INSTALL
112
113
function F () {
113
114
// (F1) ALLOWED API CORS DOMAINS
114
115
if ($ _POST ["apicors " ]==1 && $ _POST ["corsallow " ]!="" ) {
@@ -166,7 +167,20 @@ function F () {
166
167
exit ("Error setting email from - " . $ ex ->getMessage ());
167
168
}
168
169
169
- // (F6) CREATE ADMIN USER
170
+ // (F6) COMPANY INFO
171
+ if (I_CO ) { try {
172
+ $ stmt = $ pdo ->prepare ("REPLACE INTO `settings` (`setting_name`, `setting_description`, `setting_value`, `setting_group`) VALUES (?,?,?,?), (?,?,?,?), (?,?,?,?), (?,?,?,?) " );
173
+ $ stmt ->execute ([
174
+ "CO_NAME " , "Company Name " , $ _POST ["coname " ], 1 ,
175
+ "CO_EMAIL " , "Company Email " , $ _POST ["coemail " ], 1 ,
176
+ "CO_TEL " , "Company Telephone " , $ _POST ["cotel " ], 1 ,
177
+ "CO_ADDRESS " , "Company Address " , $ _POST ["coaddr " ], 1
178
+ ]);
179
+ } catch (Exception $ ex ) {
180
+ exit ("Error updating company info - " . $ ex ->getMessage ());
181
+ }}
182
+
183
+ // (F7) CREATE ADMIN USER
170
184
if (I_USER ) { try {
171
185
$ stmt = $ pdo ->prepare ("REPLACE INTO `users` (`user_name`, `user_email`, `user_level`, `user_password`) VALUES (?,?,?,?) " );
172
186
$ stmt ->execute ([$ _POST ["aname " ], $ _POST ["aemail " ], "A " , password_hash ($ _POST ["apass " ], PASSWORD_DEFAULT )]);
@@ -175,13 +189,13 @@ function F () {
175
189
}}
176
190
$ stmt = null ; $ pdo = null ;
177
191
178
- // (F7 ) TIMEZONE
192
+ // (F8 ) TIMEZONE
179
193
date_default_timezone_set ($ _POST ["timezone " ]);
180
194
$ now = ["o " => (new DateTime ())->getOffset ()];
181
195
$ now ["h " ] = floor (abs ($ now ["o " ]) / 3600 );
182
196
$ now ["m " ] = floor ((abs ($ now ["o " ]) - ($ now ["h " ] * 3600 )) / 60 );
183
197
184
- // (F8 ) CORE_CONFIG.PHP SETTINGS TO UPDATE
198
+ // (F9 ) CORE_CONFIG.PHP SETTINGS TO UPDATE
185
199
$ hbase = ($ _POST ["https " ]=="1 " ? "https:// " : "http:// " ) . $ _POST ["host " ];
186
200
$ hbase = rtrim ($ hbase , "/ \\" ) . "/ " ;
187
201
$ replace = [
@@ -205,12 +219,12 @@ function F () {
205
219
}
206
220
unset($ _POST ); unset($ now ); unset($ hbase );
207
221
208
- // (F9 ) BACKUP LIB/CORE-CONFIG.PHP
222
+ // (F10 ) BACKUP LIB/CORE-CONFIG.PHP
209
223
if (!copy (PATH_LIB . "CORE-Config.php " , PATH_LIB . "CORE-Config.old " )) {
210
224
exit ("Failed to backup config file - " . PATH_LIB . "CORE-Config.old " );
211
225
}
212
226
213
- // (F10 ) UPDATE LIB/CORE-CONFIG.PHP
227
+ // (F11 ) UPDATE LIB/CORE-CONFIG.PHP
214
228
$ cfg = file (PATH_LIB . "CORE-Config.php " ) or exit ("Cannot read " . PATH_LIB ."CORE-Config.php " );
215
229
foreach ($ cfg as $ j =>$ line ) { foreach ($ replace as $ k =>$ v ) { if (strpos ($ line , "\"$ k \"" ) !== false ) {
216
230
if ($ k !="API_HTTPS " && $ k !="API_CORS " ) { $ v = "\"$ v \"" ; }
@@ -221,7 +235,7 @@ function F () {
221
235
try { file_put_contents (PATH_LIB . "CORE-Config.php " , implode ("" , $ cfg )); }
222
236
catch (Exception $ ex ) { exit ("Error writing to " . PATH_LIB ."CORE-Config.php " ); }
223
237
224
- // (F11 ) ALMOST DONE...
238
+ // (F12 ) ALMOST DONE...
225
239
return "G " ;
226
240
}
227
241
@@ -243,4 +257,4 @@ function G () {
243
257
if (defined ("I_RELOAD " )) { $ this ->Core ->redirect (); }
244
258
exit ("OK " );
245
259
}
246
- }
260
+ }
0 commit comments