Show git version if panel is installed with git

This commit is contained in:
Dane Everitt 2017-04-27 22:28:01 -04:00
parent e4c341795d
commit 801aae968c
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
5 changed files with 60 additions and 14 deletions

View file

@ -24,6 +24,8 @@
namespace Pterodactyl\Providers;
use View;
use Cache;
use Pterodactyl\Models;
use Pterodactyl\Observers;
use Illuminate\Support\ServiceProvider;
@ -40,6 +42,9 @@ class AppServiceProvider extends ServiceProvider
Models\User::observe(Observers\UserObserver::class);
Models\Server::observe(Observers\ServerObserver::class);
Models\Subuser::observe(Observers\SubuserObserver::class);
View::share('appVersion', $this->versionData()['version'] ?? 'undefined');
View::share('appIsGit', $this->versionData()['is_git'] ?? false);
}
/**
@ -57,4 +62,31 @@ class AppServiceProvider extends ServiceProvider
$this->app->register(\DaneEveritt\LoginNotifications\NotificationServiceProvider::class);
}
}
/**
* Return version information for the footer.
*
* @return array
*/
protected function versionData()
{
return Cache::remember('git-version', 5, function () {
if (file_exists(base_path('.git/HEAD'))) {
$head = explode(' ', file_get_contents(base_path('.git/HEAD')));
$path = base_path('.git/' . trim($head[1]));
}
if (isset($path) && file_exists($path)) {
return [
'version' => substr(file_get_contents($path), 0, 8),
'is_git' => true,
];
}
return [
'version' => config('app.version'),
'is_git' => false,
];
});
}
}

View file

@ -22,17 +22,21 @@
*/
@import 'checkbox.css';
.login-box, .register-box {
width: 40%;
margin: 7% auto
}
.login-page {
height: auto;
}
@media (max-width:768px) {
.login-box, .register-box {
width: 90%;
margin-top: 20px
}
}
.login-box, .register-box {
width: 40%;
margin: 7% auto;
}
@media (max-width:768px) {
.login-box, .register-box {
width: 90%;
margin-top: 20px
}
}
.weight-100 {
font-weight: 100;
@ -289,3 +293,9 @@ span[aria-labelledby="select2-pUserId-container"] {
tr:hover + tr.server-description {
background-color: #f5f5f5 !important;
}
.login-corner-info {
position: absolute;
bottom: 5px;
right: 10px;
}

View file

@ -170,8 +170,8 @@
</div>
<footer class="main-footer">
<div class="pull-right small text-gray" style="margin-right:10px;margin-top:-7px;">
<strong><i class="fa fa-code-fork"></i></strong> {{ config('app.version') }} <br />
<strong><i class="fa fa-clock-o"></i></strong> {{ round(microtime(true) - LARAVEL_START, 3) }}s
<strong><i class="fa fa-fw {{ $appIsGit ? 'fa-git-square' : 'fa-code-fork' }}"></i></strong> {{ $appVersion }}<br />
<strong><i class="fa fa-fw fa-clock-o"></i></strong> {{ round(microtime(true) - LARAVEL_START, 3) }}s
</div>
Copyright &copy; 2015 - {{ date('Y') }} <a href="https://pterodactyl.io/">Pterodactyl Software</a>.
</footer>

View file

@ -56,6 +56,10 @@
<p class="small text-muted">
Copyright &copy; 2015 - {{ date('Y') }} <a href="https://pterodactyl.io/" target="_blank">Pterodactyl Software</a>.<br />
</p>
<div class="login-corner-info muted small">
<strong><i class="fa fa-fw {{ $appIsGit ? 'fa-git-square' : 'fa-code-fork' }}"></i></strong> {{ $appVersion }}<br />
<strong><i class="fa fa-fw fa-clock-o"></i></strong> {{ round(microtime(true) - LARAVEL_START, 3) }}s
</div>
</div>
{!! Theme::js('vendor/jquery/jquery.min.js') !!}
{!! Theme::js('vendor/bootstrap/bootstrap.min.js') !!}

View file

@ -233,8 +233,8 @@
</div>
<footer class="main-footer">
<div class="pull-right small text-gray" style="margin-right:10px;margin-top:-7px;">
<strong><i class="fa fa-code-fork"></i></strong> {{ config('app.version') }} <br />
<strong><i class="fa fa-clock-o"></i></strong> {{ round(microtime(true) - LARAVEL_START, 3) }}s
<strong><i class="fa fa-fw {{ $appIsGit ? 'fa-git-square' : 'fa-code-fork' }}"></i></strong> {{ $appVersion }}<br />
<strong><i class="fa fa-fw fa-clock-o"></i></strong> {{ round(microtime(true) - LARAVEL_START, 3) }}s
</div>
Copyright &copy; 2015 - {{ date('Y') }} <a href="https://pterodactyl.io/">Pterodactyl Software</a>.
</footer>