-
/var/projects/iModules/classes/iModules.php
- 78
Sites::init();
- 79
- 80
/**
- 81
* 전체 컨텍스트를 초기화한다.
- 82
*/
- 83
Contexts::init();
- 84
- 85
self::loadingTime('init');
- 86
}
- 87
- 88
/**
- 89
* 데이터베이스 인터페이스 클래스를 가져온다.
- 90
*
- 91
* @param string $name 데이터베이스 인터페이스 고유명
- 92
* @param ?DatabaseConnector $connector 데이터베이스정보
- 93
* @return DatabaseInterface $interface
- 94
*/
- 95
public static function db(string $name = 'default', ?DatabaseConnector $connector = null): DatabaseInterface
- 96
{
- 97
return Database::getInterface($name, $connector ?? Configs::db());
- 98
}
- 99
- 100
/**
- 101
* 간략화된 테이블명으로 실제 데이터베이스 테이블명을 가져온다.
- 102
*
- 103
* @param string $table
- 104
* @return string $table
- 105
*/
- 106
public static function table(string $table): string
- 107
{
- 108
return (Configs::get('db')?->prefix ?? 'im_') . $table;
- 109
}
- 110
- 111
/**
- 112
* 로딩시간을 기록한다.
- 113
*
- 114
* @param string $name
- 115
*/
- 116
public static function loadingTime(string $name): void
- 117
{
- 118
self::$_loadingTime[] = [$name, Format::microtime()];
-
/var/projects/iModules/classes/iModules.php
- 229
Html::style('/styles/common.css', 1);
- 230
- 231
/**
- 232
* 모듈의 스타일시트파일을 불러온다.
- 233
*/
- 234
Html::style(Modules::styles(), 5);
- 235
- 236
self::loadingTime('resources');
- 237
}
- 238
- 239
/**
- 240
* 커스터마이즈 언어팩을 불러온다.
- 241
*
- 242
* @return object $customize
- 243
*/
- 244
public static function getLanguageCustomize(): object
- 245
{
- 246
// @todo 캐시적용
- 247
$customize = new stdClass();
- 248
$languages = iModules::db()
- 249
->select()
- 250
->from(iModules::table('languages'))
- 251
->get();
- 252
foreach ($languages as $language) {
- 253
$component = '/' . $language->component_type . 's/' . $language->component_name;
- 254
$customize->{$component} ??= new stdClass();
- 255
$customize->{$component}->{$language->language} ??= new stdClass();
- 256
$paths = explode('.', $language->path);
- 257
- 258
$current = $customize->{$component}->{$language->language};
- 259
while ($path = array_shift($paths)) {
- 260
if (empty($paths) == true) {
- 261
$current->{$path} = $language->text;
- 262
} else {
- 263
$current->{$path} ??= new stdClass();
- 264
$current = $current->{$path};
- 265
}
- 266
}
- 267
}
- 268
- 269
return $customize;