Bearsampp
2026.7.11
Toggle main menu visibility
Loading...
Searching...
No Matches
class.tpl.app.git.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
TplAppGit
18
{
19
// Constants for menu and action identifiers
20
const
MENU
=
'git'
;
21
const
MENU_REPOS
=
'gitRepos'
;
22
23
const
ACTION_REFRESH_REPOS
=
'refreshGitRepos'
;
24
const
ACTION_REFRESH_REPOS_STARTUP
=
'refreshGitReposStartup'
;
25
36
public
static
function
process
()
37
{
38
global
$bearsamppLang
;
39
40
return
TplApp::getMenu
(
$bearsamppLang
->getValue(
Lang::GIT
), self::MENU, get_called_class());
41
}
42
54
public
static
function
getMenuGit
()
55
{
56
global
$bearsamppLang
, $bearsamppTools,
$bearsamppRoot
;
57
58
$tplRepos =
TplApp::getMenu
(
$bearsamppLang
->getValue(
Lang::REPOS
), self::MENU_REPOS, get_called_class());
59
$emptyRepos = count(explode(PHP_EOL, $tplRepos[
TplApp::SECTION_CONTENT
])) == 2;
60
$isScanStartup = $bearsamppTools->getGit()->isScanStartup();
61
62
$tplRefreshRepos =
TplApp::getActionMulti
(
63
self::ACTION_REFRESH_REPOS,
null
,
64
array(
$bearsamppLang
->getValue(
Lang::MENU_REFRESH_REPOS
),
TplAestan::GLYPH_RELOAD
),
65
false
, get_called_class()
66
);
67
$tplRefreshReposStartup =
TplApp::getActionMulti
(
68
self::ACTION_REFRESH_REPOS_STARTUP, array($isScanStartup ?
Config::DISABLED
:
Config::ENABLED
),
69
array(
$bearsamppLang
->getValue(
Lang::MENU_SCAN_REPOS_STARTUP
), $isScanStartup ?
TplAestan::GLYPH_CHECK
:
''
),
70
false
, get_called_class()
71
);
72
73
/* get path for git gui */
74
$gitgui =
Path::getModuleSymlinkPath
($bearsamppTools->getGit()) .
'/cmd'
;
75
76
return
TplAestan::getItemPowerShell
(
77
$bearsamppLang
->getValue(
Lang::GIT_CONSOLE
),
78
TplAestan::GLYPH_GIT
,
79
null
,
80
$bearsamppTools->getPowerShell()->getTabTitleGit(),
81
Path::getWwwPath
(),
82
null
83
) . PHP_EOL .
84
TplAestan::getItemExe
(
85
$bearsamppLang
->getValue(
Lang::GITGUI
),
86
$gitgui .
'/git-gui'
,
87
TplAestan::GLYPH_GIT
88
) . PHP_EOL .
89
TplAestan::getItemSeparator
() . PHP_EOL .
90
91
// Items
92
(!$emptyRepos ? $tplRepos[
TplApp::SECTION_CALL
] . PHP_EOL :
''
) .
93
$tplRefreshRepos[
TplApp::SECTION_CALL
] . PHP_EOL .
94
$tplRefreshReposStartup[
TplApp::SECTION_CALL
] . PHP_EOL .
95
96
// Actions
97
(!$emptyRepos ? $tplRepos[
TplApp::SECTION_CONTENT
] . PHP_EOL : PHP_EOL) .
98
$tplRefreshRepos[
TplApp::SECTION_CONTENT
] . PHP_EOL .
99
$tplRefreshReposStartup[
TplApp::SECTION_CONTENT
];
100
}
101
112
public
static
function
getMenuGitRepos
()
113
{
114
global $bearsamppTools;
115
$result
=
''
;
116
117
foreach
($bearsamppTools->getGit()->findRepos() as $repo) {
118
$result
.=
TplAestan::getItemPowerShell
(
119
basename($repo),
120
TplAestan::GLYPH_GIT
,
121
null
,
122
$bearsamppTools->getPowerShell()->getTabTitleGit($repo),
123
$repo,
124
null
125
) . PHP_EOL;
126
}
127
128
return
$result
;
129
}
130
139
public
static
function
getActionRefreshGitRepos
()
140
{
141
return
TplApp::getActionRun
(
Action::REFRESH_REPOS
, array(
ActionRefreshRepos::GIT
)) . PHP_EOL .
142
TplAppReload::getActionReload
() . PHP_EOL;
143
}
144
155
public
static
function
getActionRefreshGitReposStartup
($scanStartup)
156
{
157
return
TplApp::getActionRun
(
Action::REFRESH_REPOS_STARTUP
, array(
ActionRefreshRepos::GIT
, $scanStartup)) . PHP_EOL .
158
TplAppReload::getActionReload
() . PHP_EOL;
159
}
160
}
$result
$result
Definition
ajax.apache.php:19
$bearsamppLang
global $bearsamppLang
Definition
ajax.apache.php:16
$bearsamppRoot
global $bearsamppRoot
Definition
ajax.apache.php:16
Action\REFRESH_REPOS
const REFRESH_REPOS
Definition
class.action.php:41
Action\REFRESH_REPOS_STARTUP
const REFRESH_REPOS_STARTUP
Definition
class.action.php:42
ActionRefreshRepos\GIT
const GIT
Definition
class.action.refreshRepos.php:20
Config\DISABLED
const DISABLED
Definition
class.config.php:36
Config\ENABLED
const ENABLED
Definition
class.config.php:35
Lang\MENU_SCAN_REPOS_STARTUP
const MENU_SCAN_REPOS_STARTUP
Definition
class.lang.php:114
Lang\REPOS
const REPOS
Definition
class.lang.php:65
Lang\GITGUI
const GITGUI
Definition
class.lang.php:48
Lang\GIT_CONSOLE
const GIT_CONSOLE
Definition
class.lang.php:47
Lang\GIT
const GIT
Definition
class.lang.php:146
Lang\MENU_REFRESH_REPOS
const MENU_REFRESH_REPOS
Definition
class.lang.php:109
Path\getWwwPath
static getWwwPath($aetrayPath=false)
Definition
class.path.php:1078
Path\getModuleSymlinkPath
static getModuleSymlinkPath($module)
Definition
class.path.php:54
TplAestan\getItemPowerShell
static getItemPowerShell($caption, $glyph, $id=null, $title=null, $initDir=null, $command=null)
Definition
class.tpl.aestan.php:141
TplAestan\getItemExe
static getItemExe($caption, $exe, $glyph, $params=null)
Definition
class.tpl.aestan.php:232
TplAestan\GLYPH_CHECK
const GLYPH_CHECK
Definition
class.tpl.aestan.php:61
TplAestan\GLYPH_GIT
const GLYPH_GIT
Definition
class.tpl.aestan.php:72
TplAestan\GLYPH_RELOAD
const GLYPH_RELOAD
Definition
class.tpl.aestan.php:60
TplAestan\getItemSeparator
static getItemSeparator()
Definition
class.tpl.aestan.php:125
TplAppGit
Definition
class.tpl.app.git.php:18
TplAppGit\ACTION_REFRESH_REPOS_STARTUP
const ACTION_REFRESH_REPOS_STARTUP
Definition
class.tpl.app.git.php:24
TplAppGit\getActionRefreshGitRepos
static getActionRefreshGitRepos()
Definition
class.tpl.app.git.php:139
TplAppGit\MENU
const MENU
Definition
class.tpl.app.git.php:20
TplAppGit\process
static process()
Definition
class.tpl.app.git.php:36
TplAppGit\MENU_REPOS
const MENU_REPOS
Definition
class.tpl.app.git.php:21
TplAppGit\ACTION_REFRESH_REPOS
const ACTION_REFRESH_REPOS
Definition
class.tpl.app.git.php:23
TplAppGit\getActionRefreshGitReposStartup
static getActionRefreshGitReposStartup($scanStartup)
Definition
class.tpl.app.git.php:155
TplAppGit\getMenuGit
static getMenuGit()
Definition
class.tpl.app.git.php:54
TplAppGit\getMenuGitRepos
static getMenuGitRepos()
Definition
class.tpl.app.git.php:112
TplApp\getActionMulti
static getActionMulti($action, $args=array(), $item=array(), $disabled=false, $class=false)
Definition
class.tpl.app.php:152
TplApp\getMenu
static getMenu($caption, $menu, $class)
Definition
class.tpl.app.php:190
TplApp\getActionRun
static getActionRun($action, $args=array(), $item=array(), $waitUntilTerminated=true)
Definition
class.tpl.app.php:115
TplApp\SECTION_CALL
const SECTION_CALL
Definition
class.tpl.app.php:23
TplApp\SECTION_CONTENT
const SECTION_CONTENT
Definition
class.tpl.app.php:24
TplAppReload\getActionReload
static getActionReload()
Definition
class.tpl.app.reload.php:44
sandbox
core
classes
tpls
app
class.tpl.app.git.php
Generated by
1.17.0