added it_update_settings, it_get_page, it_update_settings_image test

This commit is contained in:
Peter Papp
2021-03-05 11:57:48 +01:00
parent e514994b08
commit ce08240355
10 changed files with 250 additions and 194 deletions
+2 -5
View File
@@ -97,11 +97,6 @@ class SetupDevEnvironment extends Command
->each(function ($content) {
Setting::updateOrCreate($content);
});
collect(config('content.pages'))
->each(function ($page) {
Page::updateOrCreate($page);
});
}
/**
@@ -189,6 +184,8 @@ class SetupDevEnvironment extends Command
$this->call('migrate:fresh', [
'--force' => true
]);
$this->setup->seed_default_pages();
}
/**
@@ -21,8 +21,7 @@ class PagesController extends Controller
public function index()
{
return new PageCollection(
Page::sortable()
->paginate(10)
Page::sortable()->paginate(10)
);
}
@@ -34,9 +33,7 @@ class PagesController extends Controller
*/
public function show(Page $page)
{
return new PageResource(
$page
);
return new PageResource($page);
}
/**
@@ -52,7 +49,9 @@ class PagesController extends Controller
return Demo::response_204();
}
$page->update(make_single_input($request));
$page->update(
make_single_input($request)
);
return response(new PageResource($page), 204);
}
@@ -336,17 +336,17 @@ class SetupWizardController extends Controller
// Store Logo
if ($request->hasFile('logo')) {
$logo = store_system_image($request->file('logo'), 'system');
$logo = store_system_image($request->file('logo'));
}
// Store Logo horizontal
if ($request->hasFile('logo_horizontal')) {
$logo_horizontal = store_system_image($request->file('logo_horizontal'), 'system');
$logo_horizontal = store_system_image($request->file('logo_horizontal'));
}
// Store favicon
if ($request->hasFile('favicon')) {
$favicon = store_system_image($request->file('favicon'), 'system');
$favicon = store_system_image($request->file('favicon'));
}
// Get options
@@ -467,13 +467,6 @@ class SetupWizardController extends Controller
'value' => $request->purchase_code,
]);
// Create legal pages and index content
$content = $request->license === 'Extended' ? collect(config('content.content_extended')) : collect(config('content.content_regular'));
$content->each(function ($content) {
Setting::updateOrCreate($content);
});
// Retrieve access token
$response = Route::dispatch(self::make_login_request($request));
@@ -503,7 +496,7 @@ class SetupWizardController extends Controller
'--force' => true
]);
$this->setup->seed_pages();
$this->setup->seed_default_pages();
}
/**
+11 -10
View File
@@ -3,7 +3,7 @@
namespace App\Http\Controllers;
use App\Http\Tools\Demo;
use App\Setting;
use App\Models\Setting;
use Artisan;
use Stripe;
use Cartalyst\Stripe\Exception\UnauthorizedException;
@@ -40,7 +40,6 @@ class SettingController extends Controller
*/
public function update(Request $request)
{
// Check if is demo
if (env('APP_DEMO')) {
return Demo::response_204();
}
@@ -48,21 +47,23 @@ class SettingController extends Controller
// Store image if exist
if ($request->hasFile($request->name)) {
// Store image
$image_path = store_system_image($request->file($request->name), 'system');
// Find and update image path
Setting::updateOrCreate(['name' => $request->name], [
'value' => $image_path
Setting::updateOrCreate([
'name' => $request->name
], [
'value' => store_system_image(
$request->file($request->name)
)
]);
return response('Done', 204);
}
// Find and update variable
Setting::updateOrCreate(['name' => $request->name], [
'value' => $request->value
]);
Setting::updateOrCreate(
['name' => $request->name],
['value' => $request->value]
);
return response('Done', 204);
}
+4 -6
View File
@@ -35,9 +35,7 @@ function obfuscate_email($email)
*/
function get_setting($setting)
{
$row = Setting::where('name', $setting)->first();
return $row ? $row->value : null;
return Setting::find($setting)->value ?? null;
}
/**
@@ -256,13 +254,13 @@ function store_avatar($image)
function store_system_image($image)
{
// Store avatar
$image_path = Str::random(8) . '-' . str_replace(' ', '', $image->getClientOriginalName());
$filename = Str::random(8) . '-' . str_replace(' ', '', $image->getClientOriginalName());
// Store image to disk
Storage::putFileAs('system', $image, $image_path);
Storage::putFileAs('system', $image, $filename);
// Return path to image
return `system/$image_path`;
return "system/$filename";
}
/**
+7 -1
View File
@@ -9,7 +9,13 @@ class Setting extends Model
{
use HasFactory;
protected $fillable = [
'value',
];
public $timestamps = false;
protected $guarded = ['id'];
protected $primaryKey = 'name';
protected $keyType = 'string';
}
+15 -3
View File
@@ -1,10 +1,9 @@
<?php
namespace App\Services;
use App\Models\Page;
use App\Models\Setting;
use Illuminate\Support\Facades\Storage;
class SetupService
@@ -29,11 +28,24 @@ class SetupService
/**
* Store default pages content like Terms of Service, Privacy Policy and Cookie Policy into database
*/
public function seed_pages()
public function seed_default_pages()
{
collect(config('content.pages'))
->each(function ($page) {
Page::updateOrCreate($page);
});
}
/**
* Store default VueFileManager settings into database
*
* @param $license
*/
public function seed_default_settings($license)
{
collect(config('content.content.' . strtolower($license)))
->each(function ($content) {
Setting::forceCreate($content);
});
}
}