forked from abhi1693/yii2-installer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
InstallerModule.php
92 lines (77 loc) · 1.77 KB
/
InstallerModule.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<?php
/**
* Created by PhpStorm.
* User: Abhimanyu
* Date: 08-02-2015
* Time: 11:29
*/
namespace abhimanyu\installer;
use abhimanyu\installer\helpers\Configuration;
use abhimanyu\installer\helpers\enums\Configuration as Enum;
use Yii;
use yii\base\Module as BaseModule;
use yii\db\Exception;
use yii\helpers\Html;
class InstallerModule extends BaseModule
{
const VERSION = '0.0.3';
public static function getAuthor()
{
return 'Abhimanyu Saharan';
}
public static function getAuthorEmail()
{
return '[email protected]';
}
public static function poweredBy($text = '', $url = '')
{
if (empty($text)) {
$text = 'Powered By Startup-Kit - ' . InstallerModule::getVersion();
}
if (empty($url)) {
$url = 'https://github.com/abhi1693/yii2-app-advanced-startup-kit';
}
return Html::a(Html::encode($text), $url);
}
public static function getVersion()
{
return static::VERSION;
}
/**
* Checks if database connections works
*
* @return boolean
*/
public static function checkDbConnection()
{
try {
// Check DB Connection
Yii::$app->db->isActive;
return TRUE;
} catch (Exception $e) {
print_r($e->getMessage());
}
return FALSE;
}
/**
* Checks if the application is already configured.
*/
public static function isConfigured()
{
if (Yii::$app->config->get(Enum::APP_SECRET) != '') {
return TRUE;
}
return FALSE;
}
/**
* Sets application in installed state (disables installer)
*/
public static function setInstalled()
{
// Set App secret
Yii::$app->config->set(Enum::APP_SECRET, md5(uniqid(time(), TRUE)));
$config = Configuration::get();
$config['params'][Enum::APP_INSTALLED] = TRUE;
Configuration::set($config);
}
}