forked from projects/fipamo
ro
8bf640ee18
conversion of markdown files to html works fine, but the coresponding css, js and image assets were not being moved, so the class responsible for moving them was edited so theme assets are moved to their appropriate directories when the site is published. also made some css and image edits, and removed a legacy css files that were no longer in use
77 lines
2.3 KiB
PHP
77 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\API;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use App\Services\SettingsService;
|
|
use App\Services\RenderService;
|
|
use App\Services\MaintenanceService;
|
|
use App\Services\AuthService;
|
|
use App\Services\AssetService;
|
|
|
|
class SettingsAPIController extends Controller
|
|
{
|
|
protected $settings;
|
|
protected $render;
|
|
protected $mainteance;
|
|
protected $auth;
|
|
protected $assets;
|
|
|
|
public function __construct(
|
|
SettingsService $settingsService,
|
|
RenderService $renderService,
|
|
MaintenanceService $maintenanceService,
|
|
AuthService $authService,
|
|
AssetService $assetService
|
|
) {
|
|
$this->settings = $settingsService;
|
|
$this->render = $renderService;
|
|
$this->maintenance = $maintenanceService;
|
|
$this->auth = $authService;
|
|
$this->assets = $assetService;
|
|
}
|
|
|
|
public function publish(Request $request)
|
|
{
|
|
$this->assets->moveToTheme(true);
|
|
$result = $this->render->publishAll();
|
|
return response()->json($result)->header('Content-Type', 'application/json');
|
|
}
|
|
|
|
public function sync(Request $request)
|
|
{
|
|
$body = json_decode($request->getContent());
|
|
$result = $this->settings->sync($body);
|
|
return response()->json($result)->header('Content-Type', 'application/json');
|
|
}
|
|
|
|
public function navSync(Request $request)
|
|
{
|
|
$body = json_decode($request->getContent());
|
|
$result = $this->settings->navSync($body);
|
|
return response()->json($result)->header('Content-Type', 'application/json');
|
|
}
|
|
|
|
public function createBackup(Request $request)
|
|
{
|
|
return response()->json($this->maintenance->createBackup())->header('Content-Type', 'application/json');
|
|
}
|
|
|
|
public function downloadBackup(Request $request)
|
|
{
|
|
if ($this->auth::status()) {
|
|
$latest = $this->settings->getGlobal()['last_backup'];
|
|
$file = 'backup-' . $latest . '.zip';
|
|
return response()->download('../content/backups/' . $file, $file, ['Content-Type: application/zip']);
|
|
}
|
|
}
|
|
|
|
//init stuff
|
|
public function setupFresh(Request $request)
|
|
{
|
|
$body = json_decode($request->getContent());
|
|
dd($body);
|
|
}
|
|
}
|