Bearsampp
2026.7.11
Toggle main menu visibility
Loading...
Searching...
No Matches
class.app.phpmyadmin.php
Go to the documentation of this file.
1
<?php
2
/*
3
* Copyright (c) 2021-2024 Bearsampp
4
* License: GNU General Public License version 3 or later; see LICENSE.txt
5
* Author: Bear
6
* Website: https://bearsampp.com
7
* Github: https://github.com/Bearsampp
8
*/
9
17
class
AppPhpmyadmin
extends
Module
18
{
22
const
ROOT_CFG_VERSION
=
'phpmyadminVersion'
;
23
27
const
LOCAL_CFG_CONF
=
'phpmyadminConf'
;
28
32
private
$conf
;
33
40
public
function
__construct
(
$id
,
$type
) {
41
Log::initClass
($this);
42
$this->
reload
(
$id
,
$type
);
43
}
44
51
public
function
reload
(
$id
=
null
,
$type
=
null
) {
52
global
$bearsamppConfig
,
$bearsamppLang
;
53
Log::reloadClass
($this);
54
55
// This makes name and version the values in bearsampp.conf
56
$this->name =
$bearsamppLang
->getValue(
Lang::PHPMYADMIN
);
57
$this->version =
$bearsamppConfig
->getRaw(self::ROOT_CFG_VERSION);
58
parent::reload(
$id
,
$type
);
59
60
if
($this->bearsamppConfRaw !==
false
) {
61
$this->conf = $this->symlinkPath .
'/'
. $this->bearsamppConfRaw[self::LOCAL_CFG_CONF];
62
}
63
64
if
(!$this->enable) {
65
Log::info
($this->name .
' is not enabled!'
);
66
return
;
67
}
68
if
(!is_dir($this->currentPath)) {
69
Log::error
(sprintf(
$bearsamppLang
->getValue(
Lang::ERROR_FILE_NOT_FOUND
), $this->name .
' '
. $this->version, $this->currentPath));
70
}
71
if
(!is_dir($this->symlinkPath)) {
72
Log::error
(sprintf(
$bearsamppLang
->getValue(
Lang::ERROR_FILE_NOT_FOUND
), $this->name .
' '
. $this->version, $this->symlinkPath));
73
return
;
74
}
75
if
(!is_file($this->bearsamppConf)) {
76
Log::error
(sprintf(
$bearsamppLang
->getValue(
Lang::ERROR_CONF_NOT_FOUND
), $this->name .
' '
. $this->version, $this->bearsamppConf));
77
}
78
if
(!is_file($this->conf)) {
79
Log::error
(sprintf(
$bearsamppLang
->getValue(
Lang::ERROR_CONF_NOT_FOUND
), $this->name .
' '
. $this->version, $this->conf));
80
}
81
}
82
91
protected
function
updateConfig
(
$version
=
null
, $sub = 0, $showWindow =
false
) {
92
global
$bearsamppRoot
,
$bearsamppBins
;
93
94
if
(!$this->enable) {
95
return
true
;
96
}
97
98
$version
=
$version
==
null
? $this->version :
$version
;
99
Log::debug
(($sub > 0 ? str_repeat(
' '
, 2 * $sub) :
''
) .
'Update '
. $this->name .
' '
.
$version
.
' config'
);
100
101
$alias =
Path::getAliasPath
() .
'/phpmyadmin.conf'
;
102
if
(is_file($alias)) {
103
Util::replaceInFile
($alias, array(
104
'/^Alias\s\/phpmyadmin\s.*/'
=>
'Alias /phpmyadmin "'
.
Path::getModuleSymlinkPath
($this) .
'/"'
,
105
'/^<Directory\s.*/'
=>
'<Directory "'
.
Path::getModuleSymlinkPath
($this) .
'/">'
,
106
));
107
}
else
{
108
Log::error
($this->
getName
() .
' alias not found : '
. $alias);
109
}
110
111
if
(
$bearsamppBins
->getMysql()->isEnable()) {
112
Util::replaceInFile
($this->
getConf
(), array(
113
'/^\$mysqlPort\s=\s(\d+)/'
=>
'$mysqlPort = '
.
$bearsamppBins
->getMysql()->getPort() .
';'
,
114
'/^\$mysqlRootUser\s=\s/'
=>
'$mysqlRootUser = \''
.
$bearsamppBins
->getMysql()->getRootUser() .
'\'
;
',
115
'
/^\$mysqlRootPwd\s=\s/
' => '
$mysqlRootPwd = \
''
.
$bearsamppBins
->getMysql()->getRootPwd() .
'\'
;
'
116
));
117
}
118
if ($bearsamppBins->getMariadb()->isEnable()) {
119
Util::replaceInFile($this->getConf(), array(
120
'
/^\$mariadbPort\s=\s(\d+)/
' => '
$mariadbPort =
' . $bearsamppBins->getMariadb()->getPort() . '
;
',
121
'
/^\$mariadbRootUser\s=\s/
' => '
$mariadbRootUser = \
''
.
$bearsamppBins
->getMariadb()->getRootUser() .
'\'
;
',
122
'
/^\$mariadbRootPwd\s=\s/
' => '
$mariadbRootPwd = \
''
.
$bearsamppBins
->getMariadb()->getRootPwd() .
'\'
;
'
123
));
124
}
125
126
return true;
127
}
128
134
public function setVersion($version) {
135
global $bearsamppConfig;
136
$this->version = $version;
137
$bearsamppConfig->replace(self::ROOT_CFG_VERSION, $version);
138
$this->reload();
139
}
140
146
public function getConf() {
147
return $this->conf;
148
}
149
}
$bearsamppBins
global $bearsamppBins
Definition
ajax.apache.php:16
$bearsamppLang
global $bearsamppLang
Definition
ajax.apache.php:16
$bearsamppRoot
global $bearsamppRoot
Definition
ajax.apache.php:16
AppPhpmyadmin
Definition
class.app.phpmyadmin.php:18
AppPhpmyadmin\updateConfig
updateConfig($version=null, $sub=0, $showWindow=false)
Definition
class.app.phpmyadmin.php:91
AppPhpmyadmin\LOCAL_CFG_CONF
const LOCAL_CFG_CONF
Definition
class.app.phpmyadmin.php:27
AppPhpmyadmin\getConf
getConf()
Definition
class.app.phpmyadmin.php:146
AppPhpmyadmin\reload
reload($id=null, $type=null)
Definition
class.app.phpmyadmin.php:51
AppPhpmyadmin\ROOT_CFG_VERSION
const ROOT_CFG_VERSION
Definition
class.app.phpmyadmin.php:22
AppPhpmyadmin\__construct
__construct($id, $type)
Definition
class.app.phpmyadmin.php:40
AppPhpmyadmin\$conf
$conf
Definition
class.app.phpmyadmin.php:32
Lang\ERROR_CONF_NOT_FOUND
const ERROR_CONF_NOT_FOUND
Definition
class.lang.php:153
Lang\PHPMYADMIN
const PHPMYADMIN
Definition
class.lang.php:138
Lang\ERROR_FILE_NOT_FOUND
const ERROR_FILE_NOT_FOUND
Definition
class.lang.php:155
Log\info
static info($data, $file=null)
Definition
class.log.php:627
Log\debug
static debug($data, $file=null)
Definition
class.log.php:616
Log\reloadClass
static reloadClass($classInstance)
Definition
class.log.php:670
Log\error
static error($data, $file=null)
Definition
class.log.php:650
Log\initClass
static initClass($classInstance)
Definition
class.log.php:660
Module
Definition
class.module.php:15
Module\$version
$version
Definition
class.module.php:24
Module\getName
getName()
Definition
class.module.php:201
Module\$type
$type
Definition
class.module.php:20
Module\$id
$id
Definition
class.module.php:21
Path\getAliasPath
static getAliasPath($aetrayPath=false)
Definition
class.path.php:331
Path\getModuleSymlinkPath
static getModuleSymlinkPath($module)
Definition
class.path.php:54
Util\replaceInFile
static replaceInFile($path, $replaceList)
Definition
class.util.php:292
$bearsamppConfig
global $bearsamppConfig
Definition
homepage.php:41
sandbox
core
classes
apps
class.app.phpmyadmin.php
Generated by
1.17.0