Update (all): fix php formatting using laravel pint, fix blade using shufo
This commit is contained in:
@@ -1,5 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
|
||||||
require 'string_helper.php';
|
require 'string_helper.php';
|
||||||
require 'geo_helper.php';
|
require 'geo_helper.php';
|
||||||
@@ -5,7 +5,6 @@
|
|||||||
* A better function to check if a value is empty or null. Strings, arrays, and Objects are supported.
|
* A better function to check if a value is empty or null. Strings, arrays, and Objects are supported.
|
||||||
*
|
*
|
||||||
* @param mixed $value
|
* @param mixed $value
|
||||||
* @return bool
|
|
||||||
*/
|
*/
|
||||||
function is_empty($value): bool
|
function is_empty($value): bool
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -4,9 +4,6 @@
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
|
|
||||||
|
|
||||||
class DashboardController extends Controller
|
class DashboardController extends Controller
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -3,9 +3,8 @@
|
|||||||
namespace App\Http\Controllers\Admin;
|
namespace App\Http\Controllers\Admin;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Hash;
|
|
||||||
use App\Http\Requests\ProfileUpdateRequest;
|
use App\Http\Requests\ProfileUpdateRequest;
|
||||||
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
|
||||||
class ProfileController extends Controller
|
class ProfileController extends Controller
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
namespace App\Http\Controllers\Admin;
|
namespace App\Http\Controllers\Admin;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
|
||||||
class UserController extends Controller
|
class UserController extends Controller
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
namespace App\Http\Controllers\Auth;
|
namespace App\Http\Controllers\Auth;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Providers\RouteServiceProvider;
|
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
use App\Providers\RouteServiceProvider;
|
||||||
use Illuminate\Foundation\Auth\RegistersUsers;
|
use Illuminate\Foundation\Auth\RegistersUsers;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use Illuminate\Support\Facades\Validator;
|
use Illuminate\Support\Facades\Validator;
|
||||||
@@ -44,7 +44,6 @@ public function __construct()
|
|||||||
/**
|
/**
|
||||||
* Get a validator for an incoming registration request.
|
* Get a validator for an incoming registration request.
|
||||||
*
|
*
|
||||||
* @param array $data
|
|
||||||
* @return \Illuminate\Contracts\Validation\Validator
|
* @return \Illuminate\Contracts\Validation\Validator
|
||||||
*/
|
*/
|
||||||
protected function validator(array $data)
|
protected function validator(array $data)
|
||||||
@@ -59,7 +58,6 @@ protected function validator(array $data)
|
|||||||
/**
|
/**
|
||||||
* Create a new user instance after a valid registration.
|
* Create a new user instance after a valid registration.
|
||||||
*
|
*
|
||||||
* @param array $data
|
|
||||||
* @return \App\Models\User
|
* @return \App\Models\User
|
||||||
*/
|
*/
|
||||||
protected function create(array $data)
|
protected function create(array $data)
|
||||||
|
|||||||
@@ -3,32 +3,27 @@
|
|||||||
namespace App\Http\Controllers\Front;
|
namespace App\Http\Controllers\Front;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
|
||||||
|
|
||||||
use Stevebauman\Location\Facades\Location;
|
|
||||||
|
|
||||||
use App\Models\Category;
|
use App\Models\Category;
|
||||||
use App\Models\CountryLocale;
|
use App\Models\CountryLocale;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class HomeController extends Controller
|
class HomeController extends Controller
|
||||||
{
|
{
|
||||||
public function index(Request $request)
|
public function index(Request $request)
|
||||||
{
|
{
|
||||||
return redirect()->route('home.country', ['country' => 'my']);
|
return redirect()->route('home.country', ['country' => 'my']);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function country(Request $request, $country)
|
public function country(Request $request, $country)
|
||||||
{
|
{
|
||||||
$country = CountryLocale::where('slug', $country)->first();
|
$country = CountryLocale::where('slug', $country)->first();
|
||||||
|
|
||||||
if (!is_null($country))
|
if (! is_null($country)) {
|
||||||
{
|
$categories = Category::where('country_locale_id', $country->id)->get();
|
||||||
$categories = Category::where('country_locale_id', $country->id)->get();
|
|
||||||
|
|
||||||
return view('front.country', ['categories' => $categories, 'country' => $country]);
|
return view('front.country', ['categories' => $categories, 'country' => $country]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect()->route('home.country', ['country' => 'my']);
|
return redirect()->route('home.country', ['country' => 'my']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
namespace App\Http\Requests;
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
use Illuminate\Validation\Rule;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Validation\Rule;
|
||||||
|
|
||||||
class ProfileUpdateRequest extends FormRequest
|
class ProfileUpdateRequest extends FormRequest
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,39 +26,37 @@
|
|||||||
* @property string|null $deleted_at
|
* @property string|null $deleted_at
|
||||||
* @property Carbon|null $created_at
|
* @property Carbon|null $created_at
|
||||||
* @property Carbon|null $updated_at
|
* @property Carbon|null $updated_at
|
||||||
*
|
|
||||||
* @property CountryLocale $country_locale
|
* @property CountryLocale $country_locale
|
||||||
*
|
|
||||||
* @package App\Models
|
|
||||||
*/
|
*/
|
||||||
class Category extends Model
|
class Category extends Model
|
||||||
{
|
{
|
||||||
use SoftDeletes;
|
use SoftDeletes;
|
||||||
protected $table = 'categories';
|
|
||||||
|
|
||||||
protected $casts = [
|
protected $table = 'categories';
|
||||||
'country_locale_id' => 'int',
|
|
||||||
'enabled' => 'bool',
|
|
||||||
'is_top' => 'bool',
|
|
||||||
'_lft' => 'int',
|
|
||||||
'_rgt' => 'int',
|
|
||||||
'parent_id' => 'int'
|
|
||||||
];
|
|
||||||
|
|
||||||
protected $fillable = [
|
protected $casts = [
|
||||||
'country_locale_id',
|
'country_locale_id' => 'int',
|
||||||
'name',
|
'enabled' => 'bool',
|
||||||
'short_name',
|
'is_top' => 'bool',
|
||||||
'slug',
|
'_lft' => 'int',
|
||||||
'enabled',
|
'_rgt' => 'int',
|
||||||
'is_top',
|
'parent_id' => 'int',
|
||||||
'_lft',
|
];
|
||||||
'_rgt',
|
|
||||||
'parent_id'
|
|
||||||
];
|
|
||||||
|
|
||||||
public function country_locale()
|
protected $fillable = [
|
||||||
{
|
'country_locale_id',
|
||||||
return $this->belongsTo(CountryLocale::class);
|
'name',
|
||||||
}
|
'short_name',
|
||||||
|
'slug',
|
||||||
|
'enabled',
|
||||||
|
'is_top',
|
||||||
|
'_lft',
|
||||||
|
'_rgt',
|
||||||
|
'parent_id',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function country_locale()
|
||||||
|
{
|
||||||
|
return $this->belongsTo(CountryLocale::class);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,22 +21,21 @@
|
|||||||
* @property string|null $deleted_at
|
* @property string|null $deleted_at
|
||||||
* @property Carbon|null $created_at
|
* @property Carbon|null $created_at
|
||||||
* @property Carbon|null $updated_at
|
* @property Carbon|null $updated_at
|
||||||
*
|
|
||||||
* @package App\Models
|
|
||||||
*/
|
*/
|
||||||
class CountryLocale extends Model
|
class CountryLocale extends Model
|
||||||
{
|
{
|
||||||
use SoftDeletes;
|
use SoftDeletes;
|
||||||
protected $table = 'country_locales';
|
|
||||||
|
|
||||||
protected $casts = [
|
protected $table = 'country_locales';
|
||||||
'enabled' => 'bool'
|
|
||||||
];
|
|
||||||
|
|
||||||
protected $fillable = [
|
protected $casts = [
|
||||||
'name',
|
'enabled' => 'bool',
|
||||||
'slug',
|
];
|
||||||
'i18n',
|
|
||||||
'enabled'
|
protected $fillable = [
|
||||||
];
|
'name',
|
||||||
|
'slug',
|
||||||
|
'i18n',
|
||||||
|
'enabled',
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fakerphp/faker": "^1.9.1",
|
"fakerphp/faker": "^1.9.1",
|
||||||
"laravel/pint": "^1.0",
|
"laravel/pint": "^1.10",
|
||||||
"laravel/sail": "^1.18",
|
"laravel/sail": "^1.18",
|
||||||
"laraveldaily/larastarters": "^2.3",
|
"laraveldaily/larastarters": "^2.3",
|
||||||
"mockery/mockery": "^1.4.4",
|
"mockery/mockery": "^1.4.4",
|
||||||
|
|||||||
2
composer.lock
generated
2
composer.lock
generated
@@ -4,7 +4,7 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "7c7dee8e0b413eb119aa5455e2d5a6ce",
|
"content-hash": "d4622e7e11ee1dc87e72a4ec06a255f9",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "artesaos/seotools",
|
"name": "artesaos/seotools",
|
||||||
|
|||||||
@@ -489,18 +489,18 @@
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// 'connections' => [
|
// 'connections' => [
|
||||||
// 'read_only_external' => [
|
// 'read_only_external' => [
|
||||||
// 'parent' => \App\Models\ReadOnlyModel::class,
|
// 'parent' => \App\Models\ReadOnlyModel::class,
|
||||||
// 'connection' => true,
|
// 'connection' => true,
|
||||||
// 'users' => [
|
// 'users' => [
|
||||||
// 'connection' => false,
|
// 'connection' => false,
|
||||||
// ],
|
// ],
|
||||||
// 'my_other_database' => [
|
// 'my_other_database' => [
|
||||||
// 'password_resets' => [
|
// 'password_resets' => [
|
||||||
// 'connection' => false,
|
// 'connection' => false,
|
||||||
// ]
|
// ]
|
||||||
// ]
|
// ]
|
||||||
// ],
|
// ],
|
||||||
// ],
|
// ],
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'app_version' => '1.0.0',
|
'app_version' => '1.0.0',
|
||||||
|
|
||||||
'dev_default_ip' => env('DEV_DEFAULT_IP','127.0.0.1'),
|
'dev_default_ip' => env('DEV_DEFAULT_IP', '127.0.0.1'),
|
||||||
];
|
];
|
||||||
@@ -8,25 +8,25 @@
|
|||||||
/*
|
/*
|
||||||
* The default configurations to be used by the meta generator.
|
* The default configurations to be used by the meta generator.
|
||||||
*/
|
*/
|
||||||
'defaults' => [
|
'defaults' => [
|
||||||
'title' => "It's Over 9000!", // set false to total remove
|
'title' => "It's Over 9000!", // set false to total remove
|
||||||
'titleBefore' => false, // Put defaults.title before page title, like 'It's Over 9000! - Dashboard'
|
'titleBefore' => false, // Put defaults.title before page title, like 'It's Over 9000! - Dashboard'
|
||||||
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
||||||
'separator' => ' - ',
|
'separator' => ' - ',
|
||||||
'keywords' => [],
|
'keywords' => [],
|
||||||
'canonical' => false, // Set to null or 'full' to use Url::full(), set to 'current' to use Url::current(), set false to total remove
|
'canonical' => false, // Set to null or 'full' to use Url::full(), set to 'current' to use Url::current(), set false to total remove
|
||||||
'robots' => false, // Set to 'all', 'none' or any combination of index/noindex and follow/nofollow
|
'robots' => false, // Set to 'all', 'none' or any combination of index/noindex and follow/nofollow
|
||||||
],
|
],
|
||||||
/*
|
/*
|
||||||
* Webmaster tags are always added.
|
* Webmaster tags are always added.
|
||||||
*/
|
*/
|
||||||
'webmaster_tags' => [
|
'webmaster_tags' => [
|
||||||
'google' => null,
|
'google' => null,
|
||||||
'bing' => null,
|
'bing' => null,
|
||||||
'alexa' => null,
|
'alexa' => null,
|
||||||
'pinterest' => null,
|
'pinterest' => null,
|
||||||
'yandex' => null,
|
'yandex' => null,
|
||||||
'norton' => null,
|
'norton' => null,
|
||||||
],
|
],
|
||||||
|
|
||||||
'add_notranslate_class' => false,
|
'add_notranslate_class' => false,
|
||||||
@@ -36,12 +36,12 @@
|
|||||||
* The default configurations to be used by the opengraph generator.
|
* The default configurations to be used by the opengraph generator.
|
||||||
*/
|
*/
|
||||||
'defaults' => [
|
'defaults' => [
|
||||||
'title' => 'Over 9000 Thousand!', // set false to total remove
|
'title' => 'Over 9000 Thousand!', // set false to total remove
|
||||||
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
||||||
'url' => false, // Set null for using Url::current(), set false to total remove
|
'url' => false, // Set null for using Url::current(), set false to total remove
|
||||||
'type' => false,
|
'type' => false,
|
||||||
'site_name' => false,
|
'site_name' => false,
|
||||||
'images' => [],
|
'images' => [],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'twitter' => [
|
'twitter' => [
|
||||||
@@ -58,11 +58,11 @@
|
|||||||
* The default configurations to be used by the json-ld generator.
|
* The default configurations to be used by the json-ld generator.
|
||||||
*/
|
*/
|
||||||
'defaults' => [
|
'defaults' => [
|
||||||
'title' => 'Over 9000 Thousand!', // set false to total remove
|
'title' => 'Over 9000 Thousand!', // set false to total remove
|
||||||
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
'description' => 'For those who helped create the Genki Dama', // set false to total remove
|
||||||
'url' => false, // Set to null or 'full' to use Url::full(), set to 'current' to use Url::current(), set false to total remove
|
'url' => false, // Set to null or 'full' to use Url::full(), set to 'current' to use Url::current(), set false to total remove
|
||||||
'type' => 'WebPage',
|
'type' => 'WebPage',
|
||||||
'images' => [],
|
'images' => [],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
use App\Models\CountryLocale;
|
||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
use App\Models\CountryLocale;
|
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
@extends('layouts.admin.app')
|
@extends('layouts.admin.app')
|
||||||
|
|
||||||
@section('custom_styles')
|
@section('custom_styles')
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|||||||
@@ -28,21 +28,21 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach($users as $user)
|
@foreach ($users as $user)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $user->name }}</td>
|
<td>{{ $user->name }}</td>
|
||||||
<td>{{ $user->email }}</td>
|
<td>{{ $user->email }}</td>
|
||||||
<td>{{ $user->created_at }}</td>
|
<td>{{ $user->created_at }}</td>
|
||||||
<td>{{ $user->updated_at->diffForhumans() }}</td>
|
<td>{{ $user->updated_at->diffForhumans() }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@if( $users->hasPages() )
|
@if ($users->hasPages())
|
||||||
<div class="card-footer pb-0">
|
<div class="card-footer pb-0">
|
||||||
{{ $users->links() }}
|
{{ $users->links() }}
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -9,9 +9,11 @@
|
|||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Email address') }}</label>
|
<label class="form-label">{{ __('Email address') }}</label>
|
||||||
<input type="email" name="email" value="{{ old('email') }}" class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Enter email') }}" required autofocus tabindex="1">
|
<input type="email" name="email" value="{{ old('email') }}"
|
||||||
|
class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Enter email') }}" required
|
||||||
|
autofocus tabindex="1">
|
||||||
@error('email')
|
@error('email')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -19,14 +21,15 @@
|
|||||||
<label class="form-label">
|
<label class="form-label">
|
||||||
{{ __('Password') }}
|
{{ __('Password') }}
|
||||||
@if (Route::has('password.request'))
|
@if (Route::has('password.request'))
|
||||||
<span class="form-label-description">
|
<span class="form-label-description">
|
||||||
<a href="{{ route('password.request') }}" tabindex="5">{{ __('Forgot Password?') }}</a>
|
<a href="{{ route('password.request') }}" tabindex="5">{{ __('Forgot Password?') }}</a>
|
||||||
</span>
|
</span>
|
||||||
@endif
|
@endif
|
||||||
</label>
|
</label>
|
||||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="{{ __('Password') }}" required tabindex="2">
|
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Password') }}" required tabindex="2">
|
||||||
@error('password')
|
@error('password')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -44,9 +47,8 @@
|
|||||||
</form>
|
</form>
|
||||||
|
|
||||||
@if (Route::has('register'))
|
@if (Route::has('register'))
|
||||||
<div class="text-center text-muted mt-3">
|
<div class="text-center text-muted mt-3">
|
||||||
{{ __("Don't have account yet?") }} <a href="{{ route('register') }}" tabindex="-1">{{ __('Sign up') }}</a>
|
{{ __("Don't have account yet?") }} <a href="{{ route('register') }}" tabindex="-1">{{ __('Sign up') }}</a>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -13,14 +13,16 @@
|
|||||||
<label class="form-label">
|
<label class="form-label">
|
||||||
{{ __('Password') }}
|
{{ __('Password') }}
|
||||||
@if (Route::has('password.request'))
|
@if (Route::has('password.request'))
|
||||||
<span class="form-label-description">
|
<span class="form-label-description">
|
||||||
<a href="{{ route('password.request') }}">{{ __('Forgot Password?') }}</a>
|
<a href="{{ route('password.request') }}">{{ __('Forgot Password?') }}</a>
|
||||||
</span>
|
</span>
|
||||||
@endif
|
@endif
|
||||||
</label>
|
</label>
|
||||||
<input type="password" name="password" class="form-control form-control-user @error('password') is-invalid @enderror" placeholder="{{ __('Enter Password') }}">
|
<input type="password" name="password"
|
||||||
|
class="form-control form-control-user @error('password') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Enter Password') }}">
|
||||||
@error('password')
|
@error('password')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
@extends('layouts.admin.guest')
|
@extends('layouts.admin.guest')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
@if (session('status'))
|
@if (session('status'))
|
||||||
<div class="alert alert-success" role="alert">
|
<div class="alert alert-success" role="alert">
|
||||||
{{ session('status') }}
|
{{ session('status') }}
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<form class="card card-md" action="{{ route('password.email') }}" method="post" autocomplete="off">
|
<form class="card card-md" action="{{ route('password.email') }}" method="post" autocomplete="off">
|
||||||
@@ -14,13 +13,16 @@
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<h2 class="card-title text-center mb-4">{{ __('Forgot password') }}</h2>
|
<h2 class="card-title text-center mb-4">{{ __('Forgot password') }}</h2>
|
||||||
|
|
||||||
<p class="text-muted mb-4">{{ __('Enter your email address and your password will be reset and emailed to you.') }}</p>
|
<p class="text-muted mb-4">
|
||||||
|
{{ __('Enter your email address and your password will be reset and emailed to you.') }}</p>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Email address') }}</label>
|
<label class="form-label">{{ __('Email address') }}</label>
|
||||||
<input type="email" name="email" value="{{ old('email') }}" class="form-control form-control-user @error('email') is-invalid @enderror" placeholder="{{ __('Enter Email Address...') }}">
|
<input type="email" name="email" value="{{ old('email') }}"
|
||||||
|
class="form-control form-control-user @error('email') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Enter Email Address...') }}">
|
||||||
@error('email')
|
@error('email')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -33,9 +35,8 @@
|
|||||||
</form>
|
</form>
|
||||||
|
|
||||||
@if (Route::has('login'))
|
@if (Route::has('login'))
|
||||||
<div class="text-center text-muted mt-3">
|
<div class="text-center text-muted mt-3">
|
||||||
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -11,25 +11,29 @@
|
|||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Email address') }}</label>
|
<label class="form-label">{{ __('Email address') }}</label>
|
||||||
<input type="email" name="email" value="{{ old('email') }}" class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Email Address') }}">
|
<input type="email" name="email" value="{{ old('email') }}"
|
||||||
|
class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Email Address') }}">
|
||||||
@error('email')
|
@error('email')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('New Password') }}</label>
|
<label class="form-label">{{ __('New Password') }}</label>
|
||||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="{{ __('New Password') }}">
|
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('New Password') }}">
|
||||||
@error('password')
|
@error('password')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Repeat New Password') }}</label>
|
<label class="form-label">{{ __('Repeat New Password') }}</label>
|
||||||
<input type="password" name="password_confirmation" class="form-control @error('password_confirmation') is-invalid @enderror" placeholder="{{ __('Repeat New Password') }}">
|
<input type="password" name="password_confirmation"
|
||||||
|
class="form-control @error('password_confirmation') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Repeat New Password') }}">
|
||||||
@error('password_confirmation')
|
@error('password_confirmation')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -42,8 +46,8 @@
|
|||||||
</form>
|
</form>
|
||||||
|
|
||||||
@if (Route::has('login'))
|
@if (Route::has('login'))
|
||||||
<div class="text-center text-muted mt-3">
|
<div class="text-center text-muted mt-3">
|
||||||
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -6,10 +6,10 @@
|
|||||||
<div class="page-header d-print-none">
|
<div class="page-header d-print-none">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<!-- Page pre-title -->
|
<!-- Page pre-title -->
|
||||||
<div class="page-pretitle">
|
<div class="page-pretitle">
|
||||||
{{ config('app.name') }}
|
{{ config('app.name') }}
|
||||||
</div>
|
</div>
|
||||||
<h2 class="page-title">
|
<h2 class="page-title">
|
||||||
{{ __('My profile') }}
|
{{ __('My profile') }}
|
||||||
</h2>
|
</h2>
|
||||||
@@ -21,20 +21,22 @@
|
|||||||
<div class="container-xl">
|
<div class="container-xl">
|
||||||
|
|
||||||
@if ($message = Session::get('success'))
|
@if ($message = Session::get('success'))
|
||||||
<div class="alert alert-success alert-dismissible">
|
<div class="alert alert-success alert-dismissible">
|
||||||
<div class="d-flex">
|
<div class="d-flex">
|
||||||
<div>
|
<div>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon alert-icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon alert-icon" width="24"
|
||||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
|
||||||
<path d="M5 12l5 5l10 -10"></path>
|
stroke-linecap="round" stroke-linejoin="round">
|
||||||
</svg>
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||||
|
<path d="M5 12l5 5l10 -10"></path>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
{{ $message }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<a class="btn-close" data-bs-dismiss="alert" aria-label="close"></a>
|
||||||
{{ $message }}
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<a class="btn-close" data-bs-dismiss="alert" aria-label="close"></a>
|
|
||||||
</div>
|
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<form action="{{ route('profile.update') }}" method="POST" class="card" autocomplete="off">
|
<form action="{{ route('profile.update') }}" method="POST" class="card" autocomplete="off">
|
||||||
@@ -46,34 +48,39 @@
|
|||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label required">{{ __('Name') }}</label>
|
<label class="form-label required">{{ __('Name') }}</label>
|
||||||
<input type="text" name="name" class="form-control @error('name') is-invalid @enderror" placeholder="{{ __('Name') }}" value="{{ old('name', auth()->user()->name) }}" required>
|
<input type="text" name="name" class="form-control @error('name') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Name') }}" value="{{ old('name', auth()->user()->name) }}" required>
|
||||||
</div>
|
</div>
|
||||||
@error('name')
|
@error('name')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label required">{{ __('Email address') }}</label>
|
<label class="form-label required">{{ __('Email address') }}</label>
|
||||||
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Email') }}" value="{{ old('email', auth()->user()->email) }}" required>
|
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Email') }}" value="{{ old('email', auth()->user()->email) }}" required>
|
||||||
</div>
|
</div>
|
||||||
@error('email')
|
@error('email')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label required">{{ __('New password') }}</label>
|
<label class="form-label required">{{ __('New password') }}</label>
|
||||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="{{ __('New password') }}">
|
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('New password') }}">
|
||||||
</div>
|
</div>
|
||||||
@error('password')
|
@error('password')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label required">{{ __('New password confirmation') }}</label>
|
<label class="form-label required">{{ __('New password confirmation') }}</label>
|
||||||
<input type="password" name="password_confirmation" class="form-control @error('password_confirmation') is-invalid @enderror" placeholder="{{ __('New password confirmation') }}" autocomplete="new-password">
|
<input type="password" name="password_confirmation"
|
||||||
|
class="form-control @error('password_confirmation') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('New password confirmation') }}" autocomplete="new-password">
|
||||||
</div>
|
</div>
|
||||||
@error('password_confirmation')
|
@error('password_confirmation')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -86,5 +93,4 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -9,30 +9,35 @@
|
|||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Name') }}</label>
|
<label class="form-label">{{ __('Name') }}</label>
|
||||||
<input type="text" name="name" class="form-control @error('name') is-invalid @enderror" placeholder="{{ __('Name') }}">
|
<input type="text" name="name" class="form-control @error('name') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Name') }}">
|
||||||
@error('name')
|
@error('name')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Email address') }}</label>
|
<label class="form-label">{{ __('Email address') }}</label>
|
||||||
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror" placeholder="{{ __('Email Address') }}">
|
<input type="email" name="email" class="form-control @error('email') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Email Address') }}">
|
||||||
@error('email')
|
@error('email')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Password') }}</label>
|
<label class="form-label">{{ __('Password') }}</label>
|
||||||
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror" placeholder="{{ __('Password') }}">
|
<input type="password" name="password" class="form-control @error('password') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Password') }}">
|
||||||
@error('password')
|
@error('password')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label">{{ __('Repeat Password') }}</label>
|
<label class="form-label">{{ __('Repeat Password') }}</label>
|
||||||
<input type="password" name="password_confirmation" class="form-control form-control-user @error('password_confirmation') is-invalid @enderror" placeholder="{{ __('Repeat Password') }}">
|
<input type="password" name="password_confirmation"
|
||||||
|
class="form-control form-control-user @error('password_confirmation') is-invalid @enderror"
|
||||||
|
placeholder="{{ __('Repeat Password') }}">
|
||||||
@error('password_confirmation')
|
@error('password_confirmation')
|
||||||
<div class="invalid-feedback">{{ $message }}</div>
|
<div class="invalid-feedback">{{ $message }}</div>
|
||||||
@enderror
|
@enderror
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -43,9 +48,8 @@
|
|||||||
</form>
|
</form>
|
||||||
|
|
||||||
@if (Route::has('login'))
|
@if (Route::has('login'))
|
||||||
<div class="text-center text-muted mt-3">
|
<div class="text-center text-muted mt-3">
|
||||||
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
{{ __('Already have account?') }} <a href="{{ route('login') }}" tabindex="-1">{{ __('Sign in') }}</a>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@@ -1,69 +1,74 @@
|
|||||||
@extends('layouts.front.app')
|
@extends('layouts.front.app')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="container py-3">
|
<div class="container py-3">
|
||||||
<div class="row justify-content-center text-center">
|
<div class="row justify-content-center text-center">
|
||||||
<div class="col-12 col-lg-8 py-5">
|
<div class="col-12 col-lg-8 py-5">
|
||||||
<h2 class="h3 fw-bold">ProductAlert is the place to be for top rated product reviews with recommendation such as the right price, latest trend, from the best brands.</h2>
|
<h2 class="h3 fw-bold">ProductAlert is the place to be for top rated product reviews with recommendation such
|
||||||
</div>
|
as the right price, latest trend, from the best brands.</h2>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="container-fluid py-4 bg-dark text-light">
|
|
||||||
<div class="container">
|
|
||||||
<h3 class="h4 fw-bold text-center mb-3">Featured Articles</h3>
|
|
||||||
<div class="row g-3 justify-content-center">
|
|
||||||
@for($i = 1; $i <= 3; $i++)
|
|
||||||
<div class="col-12 col-xl-3">
|
|
||||||
<a href="#" class="text-decoration-none">
|
|
||||||
<div class="card shadow-sm">
|
|
||||||
<img src="https://placekitten.com/400/300" alt="" class="card-img-top">
|
|
||||||
<div class="card-body">
|
|
||||||
<p class="card-text fw-bold">Here is why a kitten catches mice faster than an adult cat.</p>
|
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
|
||||||
<small class="text-body-secondary">5 April 2023</small>
|
|
||||||
<small class="text-body-secondary">9 mins</small>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
@endfor
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="container-fluid py-4 bg-dark text-light">
|
||||||
</div>
|
<div class="container">
|
||||||
<div class="container-fluid py-4">
|
<h3 class="h4 fw-bold text-center mb-3">Featured Articles</h3>
|
||||||
<div class="container">
|
<div class="row g-3 justify-content-center">
|
||||||
<div class="row justify-content-center">
|
@for ($i = 1; $i <= 3; $i++)
|
||||||
<div class="col col-lg-9">
|
<div class="col-12 col-xl-3">
|
||||||
<h3 class="h4 fw-bold text-center mb-3">What's New</h3>
|
<a href="#" class="text-decoration-none">
|
||||||
<div class="row g-3">
|
<div class="card shadow-sm">
|
||||||
@for($i = 1; $i <= 12; $i++)
|
<img src="https://placekitten.com/400/300" alt="" class="card-img-top">
|
||||||
<div class="col-6">
|
<div class="card-body">
|
||||||
<a href="#" class="text-decoration-none">
|
<p class="card-text fw-bold">Here is why a kitten catches mice faster than an adult cat.
|
||||||
<div class="card">
|
</p>
|
||||||
<div class="row g-0">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="col-md-4">
|
<small class="text-body-secondary">5 April 2023</small>
|
||||||
<img src="https://placekitten.com/400/300" class="img-fluid rounded-start" alt="...">
|
<small class="text-body-secondary">9 mins</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
@endfor
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-8">
|
|
||||||
<div class="card-body">
|
|
||||||
<p class="card-title fw-bold">Here is why a kitten catches mice faster than an adult cat.</p>
|
|
||||||
<p class="card-text"><small class="text-body-secondary">5 April 2023 <span class="mx-4"></span> 3 mins</small></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</div>
|
||||||
</div>
|
<div class="container-fluid py-4">
|
||||||
@endfor
|
<div class="container">
|
||||||
|
<div class="row justify-content-center">
|
||||||
|
<div class="col col-lg-9">
|
||||||
|
<h3 class="h4 fw-bold text-center mb-3">What's New</h3>
|
||||||
|
<div class="row g-3">
|
||||||
|
@for ($i = 1; $i <= 12; $i++)
|
||||||
|
<div class="col-6">
|
||||||
|
<a href="#" class="text-decoration-none">
|
||||||
|
<div class="card">
|
||||||
|
<div class="row g-0">
|
||||||
|
<div class="col-md-4">
|
||||||
|
<img src="https://placekitten.com/400/300" class="img-fluid rounded-start"
|
||||||
|
alt="...">
|
||||||
|
</div>
|
||||||
|
<div class="col-md-8">
|
||||||
|
<div class="card-body">
|
||||||
|
<p class="card-title fw-bold">Here is why a kitten catches mice faster
|
||||||
|
than an adult cat.</p>
|
||||||
|
<p class="card-text"><small class="text-body-secondary">5 April 2023
|
||||||
|
<span class="mx-4"></span> 3 mins</small></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
@endfor
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="text-center py-3">
|
||||||
|
<a href="#" class="btn btn-primary">All News & Updates</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-center py-3">
|
|
||||||
<a href="#" class="btn btn-primary">All News & Updates</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
@endsection
|
||||||
@@ -14,23 +14,24 @@
|
|||||||
@yield('custom_styles')
|
@yield('custom_styles')
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="theme-light">
|
<body class="theme-light">
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="sticky-top">
|
<div class="sticky-top">
|
||||||
@include('layouts.admin.header')
|
@include('layouts.admin.header')
|
||||||
|
|
||||||
@include('layouts.admin.navigation')
|
@include('layouts.admin.navigation')
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="page-wrapper">
|
<div class="page-wrapper">
|
||||||
|
|
||||||
@yield('content')
|
@yield('content')
|
||||||
|
|
||||||
@include('layouts.admin.footer')
|
@include('layouts.admin.footer')
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Core plugin JavaScript-->
|
<!-- Core plugin JavaScript-->
|
||||||
@@ -40,4 +41,5 @@
|
|||||||
@yield('custom_scripts')
|
@yield('custom_scripts')
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
<footer class="footer footer-transparent d-print-none">
|
<footer class="footer footer-transparent d-print-none">
|
||||||
<div class="container-xl">
|
<div class="container-xl">
|
||||||
<div class="row text-center align-items-center flex-row-reverse">
|
<div class="row text-center align-items-center flex-row-reverse">
|
||||||
<div class="col-lg-auto ms-lg-auto">
|
<div class="col-lg-auto ms-lg-auto">
|
||||||
<ul class="list-inline list-inline-dots mb-0">
|
<ul class="list-inline list-inline-dots mb-0">
|
||||||
{{-- <li class="list-inline-item"><a href="https://preview.tabler.io" target="_blank" class="link-secondary" rel="noopener">Tabler Demo</a></li>
|
{{-- <li class="list-inline-item"><a href="https://preview.tabler.io" target="_blank" class="link-secondary" rel="noopener">Tabler Demo</a></li>
|
||||||
<li class="list-inline-item"><a href="https://preview.tabler.io/docs/index.html" target="_blank" class="link-secondary" rel="noopener">Tabler Doc.</a></li>
|
<li class="list-inline-item"><a href="https://preview.tabler.io/docs/index.html" target="_blank" class="link-secondary" rel="noopener">Tabler Doc.</a></li>
|
||||||
<li class="list-inline-item"><a href="https://preview.tabler.io/license.html" target="_blank" class="link-secondary" rel="noopener">Tabler License</a></li>
|
<li class="list-inline-item"><a href="https://preview.tabler.io/license.html" target="_blank" class="link-secondary" rel="noopener">Tabler License</a></li>
|
||||||
<li class="list-inline-item"><a href="https://github.com/tabler/tabler" target="_blank" class="link-secondary" rel="noopener">Tabler Source code</a></li>
|
<li class="list-inline-item"><a href="https://github.com/tabler/tabler" target="_blank" class="link-secondary" rel="noopener">Tabler Source code</a></li>
|
||||||
@@ -14,22 +14,22 @@
|
|||||||
Sponsor
|
Sponsor
|
||||||
</a>
|
</a>
|
||||||
</li> --}}
|
</li> --}}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-lg-auto mt-3 mt-lg-0">
|
<div class="col-12 col-lg-auto mt-3 mt-lg-0">
|
||||||
<ul class="list-inline list-inline-dots mb-0">
|
<ul class="list-inline list-inline-dots mb-0">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
© {{ date('Y') }}
|
© {{ date('Y') }}
|
||||||
<a href="{{ config('app.url') }}" class="link-secondary">{{ config('app.name') }}</a>
|
<a href="{{ config('app.url') }}" class="link-secondary">{{ config('app.name') }}</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
Version {{ config('platform.general.app_version') }}
|
Version {{ config('platform.general.app_version') }}
|
||||||
</li>
|
</li>
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
Created by Charles Teh
|
Created by Charles Teh
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</footer>
|
</footer>
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
@@ -9,6 +10,7 @@
|
|||||||
|
|
||||||
@vite('resources/sass/app.scss')
|
@vite('resources/sass/app.scss')
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="border-top-wide border-primary d-flex flex-column">
|
<body class="border-top-wide border-primary d-flex flex-column">
|
||||||
|
|
||||||
<div class="page page-center">
|
<div class="page page-center">
|
||||||
@@ -26,4 +28,5 @@
|
|||||||
|
|
||||||
@vite('resources/js/app.js')
|
@vite('resources/js/app.js')
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,34 +1,37 @@
|
|||||||
<header class="navbar navbar-expand-md navbar-light sticky-top d-print-none">
|
<header class="navbar navbar-expand-md navbar-light sticky-top d-print-none">
|
||||||
<div class="container-xl">
|
<div class="container-xl">
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-menu">
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-menu">
|
||||||
<span class="navbar-toggler-icon"></span>
|
<span class="navbar-toggler-icon"></span>
|
||||||
</button>
|
</button>
|
||||||
<a href="#" class="h1 navbar-brand navbar-brand-autodark d-none-navbar-horizontal pe-0 pe-md-3">
|
<a href="#" class="h1 navbar-brand navbar-brand-autodark d-none-navbar-horizontal pe-0 pe-md-3">
|
||||||
{{ config('app.name') }} CMS
|
{{ config('app.name') }} CMS
|
||||||
</a>
|
|
||||||
<div class="navbar-nav flex-row order-md-last">
|
|
||||||
|
|
||||||
@auth
|
|
||||||
<div class="nav-item dropdown">
|
|
||||||
<a href="#" class="nav-link d-flex lh-1 text-reset p-0" data-bs-toggle="dropdown" aria-label="Open user menu">
|
|
||||||
<span class="avatar avatar-sm" style="background-image: url(https://eu.ui-avatars.com/api/?name={{ urlencode(auth()->user()->name) }})"></span>
|
|
||||||
<div class="d-none d-xl-block ps-2">
|
|
||||||
{{ auth()->user()->name ?? null }}
|
|
||||||
</div>
|
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow">
|
<div class="navbar-nav flex-row order-md-last">
|
||||||
<a href="{{ route('profile.show') }}" class="dropdown-item">{{ __('Profile') }}</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<form method="POST" action="{{ route('logout') }}">
|
|
||||||
@csrf
|
|
||||||
<a href="{{ route('logout') }}" class="dropdown-item" onclick="event.preventDefault(); this.closest('form').submit();">
|
|
||||||
{{ __('Log Out') }}
|
|
||||||
</a>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endauth
|
|
||||||
|
|
||||||
|
@auth
|
||||||
|
<div class="nav-item dropdown">
|
||||||
|
<a href="#" class="nav-link d-flex lh-1 text-reset p-0" data-bs-toggle="dropdown"
|
||||||
|
aria-label="Open user menu">
|
||||||
|
<span class="avatar avatar-sm"
|
||||||
|
style="background-image: url(https://eu.ui-avatars.com/api/?name={{ urlencode(auth()->user()->name) }})"></span>
|
||||||
|
<div class="d-none d-xl-block ps-2">
|
||||||
|
{{ auth()->user()->name ?? null }}
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow">
|
||||||
|
<a href="{{ route('profile.show') }}" class="dropdown-item">{{ __('Profile') }}</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<form method="POST" action="{{ route('logout') }}">
|
||||||
|
@csrf
|
||||||
|
<a href="{{ route('logout') }}" class="dropdown-item"
|
||||||
|
onclick="event.preventDefault(); this.closest('form').submit();">
|
||||||
|
{{ __('Log Out') }}
|
||||||
|
</a>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endauth
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</header>
|
</header>
|
||||||
@@ -4,15 +4,18 @@
|
|||||||
<div class="container-xl">
|
<div class="container-xl">
|
||||||
<ul class="navbar-nav">
|
<ul class="navbar-nav">
|
||||||
|
|
||||||
<li class="nav-item @if(request()->routeIs('home')) active @endif">
|
<li class="nav-item @if (request()->routeIs('home')) active @endif">
|
||||||
<a class="nav-link" href="{{ route('home') }}" >
|
<a class="nav-link" href="{{ route('home') }}">
|
||||||
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
<span
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-door-exit" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
||||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-door-exit"
|
||||||
<path d="M13 12v.01"></path>
|
width="24" height="24" viewBox="0 0 24 24" stroke-width="2"
|
||||||
<path d="M3 21h18"></path>
|
stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<path d="M5 21v-16a2 2 0 0 1 2 -2h7.5m2.5 10.5v7.5"></path>
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||||
<path d="M14 7h7m-3 -3l3 3l-3 3"></path>
|
<path d="M13 12v.01"></path>
|
||||||
|
<path d="M3 21h18"></path>
|
||||||
|
<path d="M5 21v-16a2 2 0 0 1 2 -2h7.5m2.5 10.5v7.5"></path>
|
||||||
|
<path d="M14 7h7m-3 -3l3 3l-3 3"></path>
|
||||||
</svg>
|
</svg>
|
||||||
</span>
|
</span>
|
||||||
<span class="nav-link-title">
|
<span class="nav-link-title">
|
||||||
@@ -22,10 +25,18 @@
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|
||||||
<li class="nav-item @if(request()->routeIs('dashboard')) active @endif">
|
<li class="nav-item @if (request()->routeIs('dashboard')) active @endif">
|
||||||
<a class="nav-link" href="{{ route('dashboard') }}" >
|
<a class="nav-link" href="{{ route('dashboard') }}">
|
||||||
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
<span
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><polyline points="5 12 3 12 12 3 21 12 19 12" /><path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" /><path d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6" /></svg>
|
class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/home -->
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24"
|
||||||
|
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
|
||||||
|
stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
||||||
|
<polyline points="5 12 3 12 12 3 21 12 19 12" />
|
||||||
|
<path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" />
|
||||||
|
<path d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6" />
|
||||||
|
</svg>
|
||||||
</span>
|
</span>
|
||||||
<span class="nav-link-title">
|
<span class="nav-link-title">
|
||||||
{{ __('Dashboard') }}
|
{{ __('Dashboard') }}
|
||||||
@@ -33,10 +44,13 @@
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="nav-item @if(request()->routeIs('users.index')) active @endif">
|
<li class="nav-item @if (request()->routeIs('users.index')) active @endif">
|
||||||
<a class="nav-link" href="{{ route('users.index') }}" >
|
<a class="nav-link" href="{{ route('users.index') }}">
|
||||||
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/file-text -->
|
<span
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-users" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/file-text -->
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-users"
|
||||||
|
width="24" height="24" viewBox="0 0 24 24" stroke-width="2"
|
||||||
|
stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||||
<circle cx="9" cy="7" r="4"></circle>
|
<circle cx="9" cy="7" r="4"></circle>
|
||||||
<path d="M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"></path>
|
<path d="M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"></path>
|
||||||
@@ -50,15 +64,18 @@
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="nav-item @if(request()->routeIs('about')) active @endif">
|
<li class="nav-item @if (request()->routeIs('about')) active @endif">
|
||||||
<a class="nav-link" href="{{ route('about') }}" >
|
<a class="nav-link" href="{{ route('about') }}">
|
||||||
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/file-text -->
|
<span
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-info-circle" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/file-text -->
|
||||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-info-circle"
|
||||||
<circle cx="12" cy="12" r="9"></circle>
|
width="24" height="24" viewBox="0 0 24 24" stroke-width="2"
|
||||||
<line x1="12" y1="8" x2="12.01" y2="8"></line>
|
stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<polyline points="11 12 12 12 12 16 13 16"></polyline>
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||||
</svg>
|
<circle cx="12" cy="12" r="9"></circle>
|
||||||
|
<line x1="12" y1="8" x2="12.01" y2="8"></line>
|
||||||
|
<polyline points="11 12 12 12 12 16 13 16"></polyline>
|
||||||
|
</svg>
|
||||||
</span>
|
</span>
|
||||||
<span class="nav-link-title">
|
<span class="nav-link-title">
|
||||||
{{ __('About') }}
|
{{ __('About') }}
|
||||||
@@ -67,43 +84,51 @@
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#navbar-extra" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
|
<a class="nav-link dropdown-toggle" href="#navbar-extra" data-bs-toggle="dropdown"
|
||||||
<span class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/star -->
|
data-bs-auto-close="outside" role="button" aria-expanded="false">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-list-details" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
<span
|
||||||
|
class="nav-link-icon d-md-none d-lg-inline-block"><!-- Download SVG icon from http://tabler-icons.io/i/star -->
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class="icon icon-tabler icon-tabler-list-details" width="24" height="24"
|
||||||
|
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
|
||||||
|
stroke-linecap="round" stroke-linejoin="round">
|
||||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||||
<path d="M13 5h8"></path>
|
<path d="M13 5h8"></path>
|
||||||
<path d="M13 9h5"></path>
|
<path d="M13 9h5"></path>
|
||||||
<path d="M13 15h8"></path>
|
<path d="M13 15h8"></path>
|
||||||
<path d="M13 19h5"></path>
|
<path d="M13 19h5"></path>
|
||||||
<rect x="3" y="4" width="6" height="6" rx="1"></rect>
|
<rect x="3" y="4" width="6" height="6"
|
||||||
<rect x="3" y="14" width="6" height="6" rx="1"></rect>
|
rx="1"></rect>
|
||||||
|
<rect x="3" y="14" width="6" height="6"
|
||||||
|
rx="1"></rect>
|
||||||
</svg>
|
</svg>
|
||||||
</span>
|
</span>
|
||||||
<span class="nav-link-title">
|
<span class="nav-link-title">
|
||||||
Submenus
|
Submenus
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
<a class="dropdown-item" href="#" >
|
<a class="dropdown-item" href="#">
|
||||||
Submenu Item #1
|
Submenu Item #1
|
||||||
</a>
|
</a>
|
||||||
<div class="dropend">
|
<div class="dropend">
|
||||||
<a class="dropdown-item dropdown-toggle" href="#" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false">
|
<a class="dropdown-item dropdown-toggle" href="#" data-bs-toggle="dropdown"
|
||||||
|
data-bs-auto-close="outside" role="button" aria-expanded="false">
|
||||||
Submenu Item #2
|
Submenu Item #2
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
Subsubmenu Item #1
|
Subsubmenu Item #1
|
||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
Subsubmenu Item #2
|
Subsubmenu Item #2
|
||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
Subsubmenu Item #3
|
Subsubmenu Item #3
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a class="dropdown-item" href="#" >
|
<a class="dropdown-item" href="#">
|
||||||
Submenu Item #3
|
Submenu Item #3
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
@include('layouts.front.header')
|
@include('layouts.front.header')
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
@include('layouts.front.navigation')
|
@include('layouts.front.navigation')
|
||||||
@@ -31,4 +32,5 @@
|
|||||||
@yield('custom_scripts')
|
@yield('custom_scripts')
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,59 +1,73 @@
|
|||||||
<div class="container-fluid border-top">
|
<div class="container-fluid border-top">
|
||||||
<footer class="py-5 container">
|
<footer class="py-5 container">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-6 col-md-2 mb-3">
|
<div class="col-6 col-md-2 mb-3">
|
||||||
<h5>Section</h5>
|
<h5>Section</h5>
|
||||||
<ul class="nav flex-column">
|
<ul class="nav flex-column">
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a></li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
</li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
||||||
</ul>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
||||||
</div>
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-6 col-md-2 mb-3">
|
<div class="col-6 col-md-2 mb-3">
|
||||||
<h5>Section</h5>
|
<h5>Section</h5>
|
||||||
<ul class="nav flex-column">
|
<ul class="nav flex-column">
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a></li>
|
</li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
</li>
|
||||||
</ul>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
||||||
</div>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-6 col-md-2 mb-3">
|
<div class="col-6 col-md-2 mb-3">
|
||||||
<h5>Section</h5>
|
<h5>Section</h5>
|
||||||
<ul class="nav flex-column">
|
<ul class="nav flex-column">
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Home</a></li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Features</a>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a></li>
|
</li>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">Pricing</a>
|
||||||
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
</li>
|
||||||
</ul>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">FAQs</a></li>
|
||||||
</div>
|
<li class="nav-item mb-2"><a href="#" class="nav-link p-0 text-body-secondary">About</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-md-5 offset-md-1 mb-3">
|
<div class="col-md-5 offset-md-1 mb-3">
|
||||||
<form>
|
<form>
|
||||||
<h5>Subscribe to our newsletter</h5>
|
<h5>Subscribe to our newsletter</h5>
|
||||||
<p>Monthly digest of what's new and exciting from us.</p>
|
<p>Monthly digest of what's new and exciting from us.</p>
|
||||||
<div class="d-flex flex-column flex-sm-row w-100 gap-2">
|
<div class="d-flex flex-column flex-sm-row w-100 gap-2">
|
||||||
<label for="newsletter1" class="visually-hidden">Email address</label>
|
<label for="newsletter1" class="visually-hidden">Email address</label>
|
||||||
<input id="newsletter1" type="text" class="form-control" placeholder="Email address">
|
<input id="newsletter1" type="text" class="form-control" placeholder="Email address">
|
||||||
<button class="btn btn-primary" type="button">Subscribe</button>
|
<button class="btn btn-primary" type="button">Subscribe</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="d-flex flex-column flex-sm-row justify-content-between py-4 my-4">
|
<div class="d-flex flex-column flex-sm-row justify-content-between py-4 my-4">
|
||||||
<p>© {{ date('Y') }} {{ config('app.name') }}. All rights reserved.</p>
|
<p>© {{ date('Y') }} {{ config('app.name') }}. All rights reserved.</p>
|
||||||
<ul class="list-unstyled d-flex">
|
<ul class="list-unstyled d-flex">
|
||||||
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24" height="24"><use xlink:href="#twitter"></use></svg></a></li>
|
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24"
|
||||||
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24" height="24"><use xlink:href="#instagram"></use></svg></a></li>
|
height="24">
|
||||||
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24" height="24"><use xlink:href="#facebook"></use></svg></a></li>
|
<use xlink:href="#twitter"></use>
|
||||||
</ul>
|
</svg></a></li>
|
||||||
</div>
|
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24"
|
||||||
</footer>
|
height="24">
|
||||||
|
<use xlink:href="#instagram"></use>
|
||||||
|
</svg></a></li>
|
||||||
|
<li class="ms-3"><a class="link-body-emphasis" href="#"><svg class="bi" width="24"
|
||||||
|
height="24">
|
||||||
|
<use xlink:href="#facebook"></use>
|
||||||
|
</svg></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
|
|||||||
@@ -1,52 +1,55 @@
|
|||||||
<div class="container-fluid border-bottom">
|
<div class="container-fluid border-bottom">
|
||||||
<header class="d-flex flex-wrap align-items-center justify-content-center justify-content-md-between py-3">
|
<header class="d-flex flex-wrap align-items-center justify-content-center justify-content-md-between py-3">
|
||||||
<div class="col-md-3 mb-2 mb-md-0">
|
<div class="col-md-3 mb-2 mb-md-0">
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavbar" aria-controls="offcanvasNavbar" aria-label="Toggle navigation">
|
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavbar"
|
||||||
<i class="h4 bi bi-list"></i>
|
aria-controls="offcanvasNavbar" aria-label="Toggle navigation">
|
||||||
</button>
|
<i class="h4 bi bi-list"></i>
|
||||||
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasNavbar" aria-labelledby="offcanvasNavbarLabel">
|
</button>
|
||||||
<div class="offcanvas-header">
|
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasNavbar"
|
||||||
<h4 class="offcanvas-title fw-bold mb-0" id="offcanvasNavbarLabel">{{ config('app.name') }}</h4>
|
aria-labelledby="offcanvasNavbarLabel">
|
||||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
<div class="offcanvas-header">
|
||||||
</div>
|
<h4 class="offcanvas-title fw-bold mb-0" id="offcanvasNavbarLabel">{{ config('app.name') }}</h4>
|
||||||
<div class="offcanvas-body">
|
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||||
<ul class="navbar-nav justify-content-end flex-grow-1 pe-3">
|
</div>
|
||||||
<li class="nav-item">
|
<div class="offcanvas-body">
|
||||||
<a class="nav-link active" aria-current="page" href="#">Home</a>
|
<ul class="navbar-nav justify-content-end flex-grow-1 pe-3">
|
||||||
</li>
|
<li class="nav-item">
|
||||||
@foreach ($categories as $category)
|
<a class="nav-link active" aria-current="page" href="#">Home</a>
|
||||||
<li class="nav-item">
|
</li>
|
||||||
<a class="nav-link active" aria-current="page" href="#">{{ $category->name }}</a>
|
@foreach ($categories as $category)
|
||||||
</li>
|
<li class="nav-item">
|
||||||
@endforeach
|
<a class="nav-link active" aria-current="page" href="#">{{ $category->name }}</a>
|
||||||
|
</li>
|
||||||
|
@endforeach
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a href="/" class="d-inline-flex link-body-emphasis text-decoration-none">
|
||||||
|
<h1 class="h4 mb-0 fw-bold">{{ config('app.name') }}</h1>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="nav col-12 col-md-auto mb-2 justify-content-center mb-md-0">
|
||||||
|
@foreach ($categories as $category)
|
||||||
|
@if ($category->is_top)
|
||||||
|
<li><a href="#" class="nav-link px-2 link-secondary">{{ $category->short_name }}</a></li>
|
||||||
|
@endif
|
||||||
|
@endforeach
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<a href="/" class="d-inline-flex link-body-emphasis text-decoration-none">
|
|
||||||
<h1 class="h4 mb-0 fw-bold">{{ config('app.name') }}</h1>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<ul class="nav col-12 col-md-auto mb-2 justify-content-center mb-md-0">
|
<div class="col-md-3 text-end">
|
||||||
@foreach ($categories as $category)
|
<div class="dropdown">
|
||||||
@if ($category->is_top)
|
<button class="btn btn-outline-secondary dropdown-toggle" type="button" id="dropdownMenuSwitch"
|
||||||
<li><a href="#" class="nav-link px-2 link-secondary">{{ $category->short_name }}</a></li>
|
data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
@endif
|
{{ $country->name }}
|
||||||
@endforeach
|
</button>
|
||||||
</ul>
|
<ul class="dropdown-menu" aria-labelledby="dropdownMenuSwitch">
|
||||||
|
<li><a class="dropdown-item" href="#">Country 1</a></li>
|
||||||
<div class="col-md-3 text-end">
|
<li><a class="dropdown-item" href="#">Country 2</a></li>
|
||||||
<div class="dropdown">
|
<li><a class="dropdown-item" href="#">Country 3</a></li>
|
||||||
<button class="btn btn-outline-secondary dropdown-toggle" type="button" id="dropdownMenuSwitch" data-bs-toggle="dropdown" aria-expanded="false">
|
</ul>
|
||||||
{{ $country->name }}
|
</div>
|
||||||
</button>
|
</div>
|
||||||
<ul class="dropdown-menu" aria-labelledby="dropdownMenuSwitch">
|
</header>
|
||||||
<li><a class="dropdown-item" href="#">Country 1</a></li>
|
|
||||||
<li><a class="dropdown-item" href="#">Country 2</a></li>
|
|
||||||
<li><a class="dropdown-item" href="#">Country 3</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
</div>
|
</div>
|
||||||
@@ -19,12 +19,10 @@
|
|||||||
|
|
||||||
Auth::routes();
|
Auth::routes();
|
||||||
|
|
||||||
|
|
||||||
Route::prefix('admin')->middleware('auth')->group(function () {
|
Route::prefix('admin')->middleware('auth')->group(function () {
|
||||||
|
|
||||||
Route::get('/', [App\Http\Controllers\Admin\DashboardController::class, 'index'])->name('dashboard');
|
Route::get('/', [App\Http\Controllers\Admin\DashboardController::class, 'index'])->name('dashboard');
|
||||||
|
|
||||||
|
|
||||||
Route::view('about', 'admin.about')->name('about');
|
Route::view('about', 'admin.about')->name('about');
|
||||||
|
|
||||||
Route::get('users', [\App\Http\Controllers\Admin\UserController::class, 'index'])->name('users.index');
|
Route::get('users', [\App\Http\Controllers\Admin\UserController::class, 'index'])->name('users.index');
|
||||||
|
|||||||
Reference in New Issue
Block a user