mirror of
https://github.com/BookStackApp/BookStack.git
synced 2024-11-29 12:16:04 +08:00
4e8722661f
Gets the app version via git. Closes #99
50 lines
1.2 KiB
PHP
50 lines
1.2 KiB
PHP
<?php namespace BookStack\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
use BookStack\Http\Requests;
|
|
use Setting;
|
|
|
|
class SettingController extends Controller
|
|
{
|
|
/**
|
|
* Display a listing of the settings.
|
|
* @return Response
|
|
*/
|
|
public function index()
|
|
{
|
|
$this->checkPermission('settings-manage');
|
|
$this->setPageTitle('Settings');
|
|
|
|
// Get application version
|
|
$version = false;
|
|
if (function_exists('exec')) {
|
|
$version = exec('git describe --always --tags ');
|
|
}
|
|
|
|
return view('settings/index', ['version' => $version]);
|
|
}
|
|
|
|
/**
|
|
* Update the specified settings in storage.
|
|
* @param Request $request
|
|
* @return Response
|
|
*/
|
|
public function update(Request $request)
|
|
{
|
|
$this->preventAccessForDemoUsers();
|
|
$this->checkPermission('settings-manage');
|
|
|
|
// Cycles through posted settings and update them
|
|
foreach ($request->all() as $name => $value) {
|
|
if (strpos($name, 'setting-') !== 0) continue;
|
|
$key = str_replace('setting-', '', trim($name));
|
|
Setting::put($key, $value);
|
|
}
|
|
|
|
session()->flash('success', 'Settings Saved');
|
|
return redirect('/settings');
|
|
}
|
|
|
|
}
|