forked from aslan/applicant-site
Compare commits
11 Commits
ad27d8ecdc
...
05d928595a
Author | SHA1 | Date |
---|---|---|
Holiienko Roman | 05d928595a | |
AslanAV | 08ce25f11e | |
AslanAV | 12bb6e076f | |
AslanAV | 306d73ff23 | |
AslanAV | 1e3228e8b3 | |
AslanAV | d5062e8ebe | |
AslanAV | d0778daadb | |
aslan | c3188208ba | |
AslanAV | 1383cad8b9 | |
AslanAV | 6dcf2c390f | |
aslan | 727fcff641 |
|
@ -0,0 +1,49 @@
|
||||||
|
name: Tests & Lint & Deploy to Railway
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
php-versions: [ '8.1' ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Set up PHP ${{ matrix.php-versions }}
|
||||||
|
uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: ${{ matrix.php-versions }}
|
||||||
|
|
||||||
|
- name: PHP Security Checker
|
||||||
|
uses: StephaneBour/actions-php-security-checker@1.1
|
||||||
|
|
||||||
|
- name: Setup project
|
||||||
|
run: make setup
|
||||||
|
|
||||||
|
- name: Check lint
|
||||||
|
run: make lint
|
||||||
|
|
||||||
|
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
||||||
|
run: make test-coverage
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
needs: build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
run: make deploy
|
||||||
|
env:
|
||||||
|
SSH_TOKEN: ${{ secrets.SSH_TOKEN }}
|
|
@ -20,7 +20,7 @@ class Kernel extends ConsoleKernel
|
||||||
*/
|
*/
|
||||||
protected function commands(): void
|
protected function commands(): void
|
||||||
{
|
{
|
||||||
$this->load(__DIR__.'/Commands');
|
$this->load(__DIR__ . '/Commands');
|
||||||
|
|
||||||
require base_path('routes/console.php');
|
require base_path('routes/console.php');
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,10 +25,12 @@ class ConfirmablePasswordController extends Controller
|
||||||
*/
|
*/
|
||||||
public function store(Request $request): RedirectResponse
|
public function store(Request $request): RedirectResponse
|
||||||
{
|
{
|
||||||
if (! Auth::guard('web')->validate([
|
if (
|
||||||
|
! Auth::guard('web')->validate([
|
||||||
'email' => $request->user()->email,
|
'email' => $request->user()->email,
|
||||||
'password' => $request->password,
|
'password' => $request->password,
|
||||||
])) {
|
])
|
||||||
|
) {
|
||||||
throw ValidationException::withMessages([
|
throw ValidationException::withMessages([
|
||||||
'password' => __('auth.password'),
|
'password' => __('auth.password'),
|
||||||
]);
|
]);
|
||||||
|
|
|
@ -32,7 +32,7 @@ class RegisteredUserController extends Controller
|
||||||
{
|
{
|
||||||
$request->validate([
|
$request->validate([
|
||||||
'name' => ['required', 'string', 'max:255'],
|
'name' => ['required', 'string', 'max:255'],
|
||||||
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class],
|
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:' . User::class],
|
||||||
'password' => ['required', 'confirmed', Rules\Password::defaults()],
|
'password' => ['required', 'confirmed', Rules\Password::defaults()],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|
|
@ -16,13 +16,13 @@ class VerifyEmailController extends Controller
|
||||||
public function __invoke(EmailVerificationRequest $request): RedirectResponse
|
public function __invoke(EmailVerificationRequest $request): RedirectResponse
|
||||||
{
|
{
|
||||||
if ($request->user()->hasVerifiedEmail()) {
|
if ($request->user()->hasVerifiedEmail()) {
|
||||||
return redirect()->intended(RouteServiceProvider::HOME.'?verified=1');
|
return redirect()->intended(RouteServiceProvider::HOME . '?verified=1');
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($request->user()->markEmailAsVerified()) {
|
if ($request->user()->markEmailAsVerified()) {
|
||||||
event(new Verified($request->user()));
|
event(new Verified($request->user()));
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect()->intended(RouteServiceProvider::HOME.'?verified=1');
|
return redirect()->intended(RouteServiceProvider::HOME . '?verified=1');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,5 +8,6 @@ use Illuminate\Routing\Controller as BaseController;
|
||||||
|
|
||||||
class Controller extends BaseController
|
class Controller extends BaseController
|
||||||
{
|
{
|
||||||
use AuthorizesRequests, ValidatesRequests;
|
use AuthorizesRequests;
|
||||||
|
use ValidatesRequests;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,46 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Models\User;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
|
class UserController extends Controller
|
||||||
|
{
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$users = User::all();
|
||||||
|
return view('users.index', compact('users'));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function store($request)
|
||||||
|
{
|
||||||
|
if (Auth::guest()) {
|
||||||
|
abort(403, 'Вы не авторизованы!');
|
||||||
|
}
|
||||||
|
|
||||||
|
$validated = $request->validated();
|
||||||
|
$createdById = Auth::id();
|
||||||
|
$data = [...$validated, 'created_by_id' => $createdById];
|
||||||
|
|
||||||
|
$task = new User();
|
||||||
|
$task->fill($data);
|
||||||
|
$task->save();
|
||||||
|
|
||||||
|
if (array_key_exists('labels', $validated)) {
|
||||||
|
$task->labels()->attach($validated['labels']);
|
||||||
|
}
|
||||||
|
|
||||||
|
$message = __('controllers.tasks_create');
|
||||||
|
return redirect()->route('tasks.index');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function create()
|
||||||
|
{
|
||||||
|
if (Auth::guest()) {
|
||||||
|
abort(403, 'Вы не авторизованы!');
|
||||||
|
}
|
||||||
|
return view('users.create');
|
||||||
|
}
|
||||||
|
}
|
|
@ -40,7 +40,7 @@ class Kernel extends HttpKernel
|
||||||
|
|
||||||
'api' => [
|
'api' => [
|
||||||
// \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
|
// \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
|
||||||
\Illuminate\Routing\Middleware\ThrottleRequests::class.':api',
|
\Illuminate\Routing\Middleware\ThrottleRequests::class . ':api',
|
||||||
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
|
@ -80,6 +80,6 @@ class LoginRequest extends FormRequest
|
||||||
*/
|
*/
|
||||||
public function throttleKey(): string
|
public function throttleKey(): string
|
||||||
{
|
{
|
||||||
return Str::transliterate(Str::lower($this->input('email')).'|'.$this->ip());
|
return Str::transliterate(Str::lower($this->input('email')) . '|' . $this->ip());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,8 @@ class ProfileUpdateRequest extends FormRequest
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'name' => ['required', 'string', 'max:255'],
|
'name' => ['required', 'string', 'max:255'],
|
||||||
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', Rule::unique(User::class)->ignore($this->user()->id)],
|
'email' => ['required', 'string', 'lowercase', 'email', 'max:255',
|
||||||
|
Rule::unique(User::class)->ignore($this->user()->id)],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,9 @@ use Laravel\Sanctum\HasApiTokens;
|
||||||
|
|
||||||
class User extends Authenticatable
|
class User extends Authenticatable
|
||||||
{
|
{
|
||||||
use HasApiTokens, HasFactory, Notifiable;
|
use HasApiTokens;
|
||||||
|
use HasFactory;
|
||||||
|
use Notifiable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The attributes that are mass assignable.
|
* The attributes that are mass assignable.
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
"guzzlehttp/guzzle": "^7.8.1",
|
"guzzlehttp/guzzle": "^7.8.1",
|
||||||
"laravel/framework": "^10.40.0",
|
"laravel/framework": "^10.40.0",
|
||||||
"laravel/sanctum": "^3.3.3",
|
"laravel/sanctum": "^3.3.3",
|
||||||
"laravel/tinker": "^2.9.0"
|
"laravel/tinker": "^2.9.0",
|
||||||
|
"laravelcollective/html": "^6.4.1"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fakerphp/faker": "^1.23.1",
|
"fakerphp/faker": "^1.23.1",
|
||||||
|
@ -20,7 +21,9 @@
|
||||||
"nunomaduro/collision": "^7.10.0",
|
"nunomaduro/collision": "^7.10.0",
|
||||||
"phpunit/phpunit": "^10.5.5",
|
"phpunit/phpunit": "^10.5.5",
|
||||||
"spatie/laravel-ignition": "^2.4.0",
|
"spatie/laravel-ignition": "^2.4.0",
|
||||||
"barryvdh/laravel-ide-helper": "^2.13.0"
|
"barryvdh/laravel-ide-helper": "^2.13.0",
|
||||||
|
"squizlabs/php_codesniffer": "^3.8.1",
|
||||||
|
"phpstan/phpstan": "^1.10.55"
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-4": {
|
"psr-4": {
|
||||||
|
@ -35,6 +38,8 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
"phpcs": "phpcs",
|
||||||
|
"phpcbf": "phpcbf",
|
||||||
"post-autoload-dump": [
|
"post-autoload-dump": [
|
||||||
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
||||||
"@php artisan package:discover --ansi"
|
"@php artisan package:discover --ansi"
|
||||||
|
|
|
@ -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": "7ab883d941740dee8af1ec0280a43509",
|
"content-hash": "30204d0ba928d14bfac0180a964aef93",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "brick/math",
|
"name": "brick/math",
|
||||||
|
@ -1499,6 +1499,79 @@
|
||||||
},
|
},
|
||||||
"time": "2024-01-04T16:10:04+00:00"
|
"time": "2024-01-04T16:10:04+00:00"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "laravelcollective/html",
|
||||||
|
"version": "v6.4.1",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/LaravelCollective/html.git",
|
||||||
|
"reference": "64ddfdcaeeb8d332bd98bef442bef81e39c3910b"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/LaravelCollective/html/zipball/64ddfdcaeeb8d332bd98bef442bef81e39c3910b",
|
||||||
|
"reference": "64ddfdcaeeb8d332bd98bef442bef81e39c3910b",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"illuminate/routing": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"illuminate/session": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"illuminate/view": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"php": ">=7.2.5"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"illuminate/database": "^6.0|^7.0|^8.0|^9.0|^10.0",
|
||||||
|
"mockery/mockery": "~1.0",
|
||||||
|
"phpunit/phpunit": "~8.5|^9.5.10"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "6.x-dev"
|
||||||
|
},
|
||||||
|
"laravel": {
|
||||||
|
"providers": [
|
||||||
|
"Collective\\Html\\HtmlServiceProvider"
|
||||||
|
],
|
||||||
|
"aliases": {
|
||||||
|
"Form": "Collective\\Html\\FormFacade",
|
||||||
|
"Html": "Collective\\Html\\HtmlFacade"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"files": [
|
||||||
|
"src/helpers.php"
|
||||||
|
],
|
||||||
|
"psr-4": {
|
||||||
|
"Collective\\Html\\": "src/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Adam Engebretson",
|
||||||
|
"email": "adam@laravelcollective.com"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Taylor Otwell",
|
||||||
|
"email": "taylorotwell@gmail.com"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "HTML and Form Builders for the Laravel Framework",
|
||||||
|
"homepage": "https://laravelcollective.com",
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/LaravelCollective/html/issues",
|
||||||
|
"source": "https://github.com/LaravelCollective/html"
|
||||||
|
},
|
||||||
|
"abandoned": "spatie/laravel-html",
|
||||||
|
"time": "2023-04-25T02:46:11+00:00"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "league/commonmark",
|
"name": "league/commonmark",
|
||||||
"version": "2.4.1",
|
"version": "2.4.1",
|
||||||
|
@ -7126,16 +7199,16 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phpdocumentor/type-resolver",
|
"name": "phpdocumentor/type-resolver",
|
||||||
"version": "1.7.3",
|
"version": "1.8.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/phpDocumentor/TypeResolver.git",
|
"url": "https://github.com/phpDocumentor/TypeResolver.git",
|
||||||
"reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419"
|
"reference": "fad452781b3d774e3337b0c0b245dd8e5a4455fc"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419",
|
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/fad452781b3d774e3337b0c0b245dd8e5a4455fc",
|
||||||
"reference": "3219c6ee25c9ea71e3d9bbaf39c67c9ebd499419",
|
"reference": "fad452781b3d774e3337b0c0b245dd8e5a4455fc",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
|
@ -7178,9 +7251,9 @@
|
||||||
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
|
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
|
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
|
||||||
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.3"
|
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.0"
|
||||||
},
|
},
|
||||||
"time": "2023-08-12T11:01:26+00:00"
|
"time": "2024-01-11T11:49:22+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phpstan/phpdoc-parser",
|
"name": "phpstan/phpdoc-parser",
|
||||||
|
@ -7229,6 +7302,68 @@
|
||||||
},
|
},
|
||||||
"time": "2024-01-04T17:06:16+00:00"
|
"time": "2024-01-04T17:06:16+00:00"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "phpstan/phpstan",
|
||||||
|
"version": "1.10.55",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/phpstan/phpstan.git",
|
||||||
|
"reference": "9a88f9d18ddf4cf54c922fbeac16c4cb164c5949"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/9a88f9d18ddf4cf54c922fbeac16c4cb164c5949",
|
||||||
|
"reference": "9a88f9d18ddf4cf54c922fbeac16c4cb164c5949",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": "^7.2|^8.0"
|
||||||
|
},
|
||||||
|
"conflict": {
|
||||||
|
"phpstan/phpstan-shim": "*"
|
||||||
|
},
|
||||||
|
"bin": [
|
||||||
|
"phpstan",
|
||||||
|
"phpstan.phar"
|
||||||
|
],
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"files": [
|
||||||
|
"bootstrap.php"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"description": "PHPStan - PHP Static Analysis Tool",
|
||||||
|
"keywords": [
|
||||||
|
"dev",
|
||||||
|
"static analysis"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"docs": "https://phpstan.org/user-guide/getting-started",
|
||||||
|
"forum": "https://github.com/phpstan/phpstan/discussions",
|
||||||
|
"issues": "https://github.com/phpstan/phpstan/issues",
|
||||||
|
"security": "https://github.com/phpstan/phpstan/security/policy",
|
||||||
|
"source": "https://github.com/phpstan/phpstan-src"
|
||||||
|
},
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://github.com/ondrejmirtes",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://github.com/phpstan",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
|
||||||
|
"type": "tidelift"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"time": "2024-01-08T12:32:40+00:00"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "phpunit/php-code-coverage",
|
"name": "phpunit/php-code-coverage",
|
||||||
"version": "10.1.11",
|
"version": "10.1.11",
|
||||||
|
@ -8922,6 +9057,86 @@
|
||||||
],
|
],
|
||||||
"time": "2024-01-04T14:51:24+00:00"
|
"time": "2024-01-04T14:51:24+00:00"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "squizlabs/php_codesniffer",
|
||||||
|
"version": "3.8.1",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git",
|
||||||
|
"reference": "14f5fff1e64118595db5408e946f3a22c75807f7"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/14f5fff1e64118595db5408e946f3a22c75807f7",
|
||||||
|
"reference": "14f5fff1e64118595db5408e946f3a22c75807f7",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"ext-simplexml": "*",
|
||||||
|
"ext-tokenizer": "*",
|
||||||
|
"ext-xmlwriter": "*",
|
||||||
|
"php": ">=5.4.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4"
|
||||||
|
},
|
||||||
|
"bin": [
|
||||||
|
"bin/phpcbf",
|
||||||
|
"bin/phpcs"
|
||||||
|
],
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.x-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"BSD-3-Clause"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Greg Sherwood",
|
||||||
|
"role": "Former lead"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Juliette Reinders Folmer",
|
||||||
|
"role": "Current lead"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Contributors",
|
||||||
|
"homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer/graphs/contributors"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
|
||||||
|
"homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer",
|
||||||
|
"keywords": [
|
||||||
|
"phpcs",
|
||||||
|
"standards",
|
||||||
|
"static analysis"
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/PHPCSStandards/PHP_CodeSniffer/issues",
|
||||||
|
"security": "https://github.com/PHPCSStandards/PHP_CodeSniffer/security/policy",
|
||||||
|
"source": "https://github.com/PHPCSStandards/PHP_CodeSniffer",
|
||||||
|
"wiki": "https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki"
|
||||||
|
},
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://github.com/PHPCSStandards",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://github.com/jrfnl",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://opencollective.com/php_codesniffer",
|
||||||
|
"type": "open_collective"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"time": "2024-01-11T20:47:48+00:00"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "symfony/yaml",
|
"name": "symfony/yaml",
|
||||||
"version": "v6.4.0",
|
"version": "v6.4.0",
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
namespace Database\Seeders;
|
namespace Database\Seeders;
|
||||||
|
|
||||||
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
|
use App\Models\User;
|
||||||
use Illuminate\Database\Seeder;
|
use Illuminate\Database\Seeder;
|
||||||
|
|
||||||
class DatabaseSeeder extends Seeder
|
class DatabaseSeeder extends Seeder
|
||||||
|
@ -12,11 +13,12 @@ class DatabaseSeeder extends Seeder
|
||||||
*/
|
*/
|
||||||
public function run(): void
|
public function run(): void
|
||||||
{
|
{
|
||||||
// \App\Models\User::factory(10)->create();
|
\App\Models\User::factory(10)->create();
|
||||||
|
|
||||||
// \App\Models\User::factory()->create([
|
\App\Models\User::factory()->create([
|
||||||
// 'name' => 'Test User',
|
'name' => 'admin',
|
||||||
// 'email' => 'test@example.com',
|
'email' => 'test@example.com',
|
||||||
// ]);
|
'password' => 123456
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<ruleset name="PlatformApi">
|
||||||
|
|
||||||
|
<description>PSR12 Laravel standards.</description>
|
||||||
|
|
||||||
|
<rule ref="PSR12"/>
|
||||||
|
|
||||||
|
<arg name="basepath" value="."/>
|
||||||
|
<arg name="colors"/>
|
||||||
|
<arg name="parallel" value="75"/>
|
||||||
|
<arg value="np"/>
|
||||||
|
<arg name="extensions" value="php"/>
|
||||||
|
|
||||||
|
<file>app</file>
|
||||||
|
<file>config</file>
|
||||||
|
<file>resources</file>
|
||||||
|
<file>routes</file>
|
||||||
|
<file>tests</file>
|
||||||
|
<file>database</file>
|
||||||
|
<rule ref="Generic.ControlStructures.InlineControlStructure">
|
||||||
|
<properties>
|
||||||
|
<property name="error" value="true"/>
|
||||||
|
</properties>
|
||||||
|
</rule>
|
||||||
|
|
||||||
|
<exclude-pattern>app/Console/Kernel.php</exclude-pattern>
|
||||||
|
<exclude-pattern>app/Http/Controllers/Controller.php</exclude-pattern>
|
||||||
|
<exclude-pattern>app/Http/Controllers/Auth/*</exclude-pattern>
|
||||||
|
<exclude-pattern>app/Http/Requests/Auth/LoginRequest.php</exclude-pattern>
|
||||||
|
<exclude-pattern>bootstrap/cache/*</exclude-pattern>
|
||||||
|
<exclude-pattern>config/*</exclude-pattern>
|
||||||
|
<exclude-pattern>public/index.php</exclude-pattern>
|
||||||
|
<exclude-pattern>storage/framework/views/*</exclude-pattern>
|
||||||
|
<exclude-pattern>server.php</exclude-pattern>
|
||||||
|
<exclude-pattern>*/migrations/*</exclude-pattern>
|
||||||
|
<exclude-pattern>*/seeds/*</exclude-pattern>
|
||||||
|
<exclude-pattern>*/*.blade.php</exclude-pattern>
|
||||||
|
<exclude-pattern>*/*.js</exclude-pattern>
|
||||||
|
<exclude-pattern>vendor/*</exclude-pattern>
|
||||||
|
<exclude-pattern>node_modules/*</exclude-pattern>
|
||||||
|
</ruleset>
|
|
@ -21,8 +21,8 @@
|
||||||
<env name="APP_ENV" value="testing"/>
|
<env name="APP_ENV" value="testing"/>
|
||||||
<env name="BCRYPT_ROUNDS" value="4"/>
|
<env name="BCRYPT_ROUNDS" value="4"/>
|
||||||
<env name="CACHE_DRIVER" value="array"/>
|
<env name="CACHE_DRIVER" value="array"/>
|
||||||
<!-- <env name="DB_CONNECTION" value="sqlite"/> -->
|
<env name="DB_CONNECTION" value="sqlite"/>
|
||||||
<!-- <env name="DB_DATABASE" value=":memory:"/> -->
|
<env name="DB_DATABASE" value=":memory:"/>
|
||||||
<env name="MAIL_MAILER" value="array"/>
|
<env name="MAIL_MAILER" value="array"/>
|
||||||
<env name="PULSE_ENABLED" value="false"/>
|
<env name="PULSE_ENABLED" value="false"/>
|
||||||
<env name="QUEUE_CONNECTION" value="sync"/>
|
<env name="QUEUE_CONNECTION" value="sync"/>
|
||||||
|
|
|
@ -1,114 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Only process POST reqeusts.
|
|
||||||
|
|
||||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|
||||||
|
|
||||||
// Get the form fields and remove MORALspace.
|
|
||||||
|
|
||||||
$name = strip_tags(trim($_POST["name"]));
|
|
||||||
|
|
||||||
$name = str_replace(array("\r","\n"),array(" "," "),$name);
|
|
||||||
|
|
||||||
$email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
|
|
||||||
|
|
||||||
$subject = trim($_POST["subject"]);
|
|
||||||
|
|
||||||
$message = trim($_POST["message"]);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Check that data was sent to the mailer.
|
|
||||||
|
|
||||||
if ( empty($name) OR empty($subject) OR empty($message) OR !filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
|
||||||
|
|
||||||
// Set a 400 (bad request) response code and exit.
|
|
||||||
|
|
||||||
http_response_code(400);
|
|
||||||
|
|
||||||
echo "Please complete the form and try again.";
|
|
||||||
|
|
||||||
exit;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Set the recipient email address.
|
|
||||||
|
|
||||||
// FIXME: Update this to your desired email address.
|
|
||||||
|
|
||||||
$recipient = "mdsalim400@gmail.com";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Set the email subject.
|
|
||||||
|
|
||||||
$sender = "New contact from $name";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//Email Header
|
|
||||||
|
|
||||||
$head = " /// STTHEMES \\\ ";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Build the email content.
|
|
||||||
|
|
||||||
$email_content = "$head\n\n\n";
|
|
||||||
|
|
||||||
$email_content .= "Name: $name\n";
|
|
||||||
|
|
||||||
$email_content .= "Email: $email\n\n";
|
|
||||||
|
|
||||||
$email_content .= "Subject: $subject\n\n";
|
|
||||||
|
|
||||||
$email_content .= "Message:\n$message\n";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Build the email headers.
|
|
||||||
|
|
||||||
$email_headers = "From: $name <$email>";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Send the email.
|
|
||||||
|
|
||||||
if (mail($recipient, $sender, $email_content, $email_headers)) {
|
|
||||||
|
|
||||||
// Set a 200 (okay) response code.
|
|
||||||
|
|
||||||
http_response_code(200);
|
|
||||||
|
|
||||||
echo "Thank You! Your message has been sent.";
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
// Set a 500 (internal server error) response code.
|
|
||||||
|
|
||||||
http_response_code(500);
|
|
||||||
|
|
||||||
echo "Oops! Something went wrong and we couldn't send your message.";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
// Not a POST request, set a 403 (forbidden) response code.
|
|
||||||
|
|
||||||
http_response_code(403);
|
|
||||||
|
|
||||||
echo "There was a problem with your submission, please try again.";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
sass --watch "C:\Users\Tushar\Dropbox\Tushar\tutorgo\assets\scss\main.scss":"C:\Users\Tushar\Dropbox\Tushar\tutorgo\assets\css\main.css"
|
|
|
@ -2,19 +2,19 @@
|
||||||
<!-- Session Status -->
|
<!-- Session Status -->
|
||||||
<x-auth-session-status class="mb-4" :status="session('status')" />
|
<x-auth-session-status class="mb-4" :status="session('status')" />
|
||||||
|
|
||||||
<form method="POST" action="{{ route('login') }}">
|
<form method="POST" action="{{ route('login') }}" >
|
||||||
@csrf
|
@csrf
|
||||||
|
|
||||||
<!-- Email Address -->
|
<!-- Email Address -->
|
||||||
<div>
|
<div>
|
||||||
<x-input-label for="email" :value="__('Email')" />
|
<x-input-label for="email" :value="__('Электронная почта')" />
|
||||||
<x-text-input id="email" class="block mt-1 w-full" type="email" name="email" :value="old('email')" required autofocus autocomplete="username" />
|
<x-text-input id="email" class="block mt-1 w-full" type="email" name="email" :value="old('email')" required autofocus autocomplete="username" />
|
||||||
<x-input-error :messages="$errors->get('email')" class="mt-2" />
|
<x-input-error :messages="$errors->get('email')" class="mt-2" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Password -->
|
<!-- Password -->
|
||||||
<div class="mt-4">
|
<div class="mt-4">
|
||||||
<x-input-label for="password" :value="__('Password')" />
|
<x-input-label for="password" :value="__('Пароль')" />
|
||||||
|
|
||||||
<x-text-input id="password" class="block mt-1 w-full"
|
<x-text-input id="password" class="block mt-1 w-full"
|
||||||
type="password"
|
type="password"
|
||||||
|
@ -28,27 +28,27 @@
|
||||||
<div class="block mt-4">
|
<div class="block mt-4">
|
||||||
<label for="remember_me" class="inline-flex items-center">
|
<label for="remember_me" class="inline-flex items-center">
|
||||||
<input id="remember_me" type="checkbox" class="rounded dark:bg-gray-900 border-gray-300 dark:border-gray-700 text-indigo-600 shadow-sm focus:ring-indigo-500 dark:focus:ring-indigo-600 dark:focus:ring-offset-gray-800" name="remember">
|
<input id="remember_me" type="checkbox" class="rounded dark:bg-gray-900 border-gray-300 dark:border-gray-700 text-indigo-600 shadow-sm focus:ring-indigo-500 dark:focus:ring-indigo-600 dark:focus:ring-offset-gray-800" name="remember">
|
||||||
<span class="ms-2 text-sm text-gray-600 dark:text-gray-400">{{ __('Remember me') }}</span>
|
<span class="ms-2 text-sm text-gray-600 dark:text-gray-400">{{ __('Запомнить меня') }}</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex items-center justify-end mt-4">
|
<div class="flex items-center justify-end mt-4">
|
||||||
@if (Route::has('password.request'))
|
@if (Route::has('password.request'))
|
||||||
<a class="underline text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 dark:focus:ring-offset-gray-800" href="{{ route('password.request') }}">
|
<a class="underline text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 dark:focus:ring-offset-gray-800" href="{{ route('password.request') }}">
|
||||||
{{ __('Forgot your password?') }}
|
{{ __('Забыли пароль?') }}
|
||||||
</a>
|
</a>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<x-primary-button class="ms-3">
|
<x-primary-button class="ms-3">
|
||||||
{{ __('Log in') }}
|
{{ __('Войти') }}
|
||||||
</x-primary-button>
|
</x-primary-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex items-center justify-center mt-4">
|
{{--<div class="flex items-center justify-center mt-4">
|
||||||
@if (Route::has('register'))
|
@if (Route::has('register'))
|
||||||
<a> Нет аккаунта? </a>
|
<a> Нет аккаунта? </a>
|
||||||
<a href="{{ route('register') }}">Зарегистрируйтесь</a>
|
<a href="{{ route('register') }}">Зарегистрируйтесь</a>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div> --}}
|
||||||
</form>
|
</form>
|
||||||
</x-guest-layout>
|
</x-guest-layout>
|
||||||
|
|
|
@ -1,103 +0,0 @@
|
||||||
<!-- footer area start -->
|
|
||||||
<footer>
|
|
||||||
<div class="footer__area grey-bg">
|
|
||||||
<div class="container">
|
|
||||||
<div class="footer__top ">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-xxl-3 col-xl-3 col-lg-3 col-md-6">
|
|
||||||
<div class="footer__widget mb-50 footer-col-1">
|
|
||||||
<div class="footer__widget-logo mb-30">
|
|
||||||
<a href="index.html"><img src="https://mkgtu.ru/local/templates/modern_green_new_s1/images/logo.svg" alt=""></a>
|
|
||||||
</div>
|
|
||||||
<div class="footer__widget-content">
|
|
||||||
<p>Следи за последними новостями в наших соц.сетях</p>
|
|
||||||
<div class="footer__social">
|
|
||||||
<span><a href="#"><i class="fab fa-vk"></i></a></span>
|
|
||||||
<span><a href="#" class="yt"><i class="fab fa-youtube"></i></a></span>
|
|
||||||
<span><a href="#" class="tw"><i class="fab fa-telegram"></i></a></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-xxl-2 col-xl-2 col-lg-3 col-6">
|
|
||||||
<div class="footer__widget mb-50 footer-col-2">
|
|
||||||
<h3 class="footer__widget-title">Информация</h3>
|
|
||||||
<div class="footer__widget-content">
|
|
||||||
<ul>
|
|
||||||
<li><a href="#">Правила приёма</a></li>
|
|
||||||
<li><a href="#">Иностранным абитуриентам</a></li>
|
|
||||||
<li><a href="#">Мероприятия</a></li>
|
|
||||||
<li><a href="#">Оф. сайт</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-xxl-3 col-xl-3 col-lg-3 col-6">
|
|
||||||
<div class="footer__widget mb-50 footer-col-3">
|
|
||||||
<h3 class="footer__widget-title">Контакты</h3>
|
|
||||||
<div class="footer__widget-content">
|
|
||||||
<ul>
|
|
||||||
<li><a href="#">Приёмная комиссия <br /><p>8 (8772) 52-30-08</p></a></li>
|
|
||||||
<li><a href="#">Приёмная комиссия филиала МГТУ в пос. Яблоновском <br /><p>8-938-530-53-14</p></a></li>
|
|
||||||
<li><a href="#">Почта info@mkgtu.ru</a></li>
|
|
||||||
<li><a href="#">385000, Республика Адыгея, г. Майкоп, ул. Первомайская, д. 191</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-xxl-4 col-xl-4 col-lg-3 col-md-6">
|
|
||||||
<div class="footer__widget mb-50 footer-col-4">
|
|
||||||
<h3 class="footer__widget-title">Подпишись на обновления</h3>
|
|
||||||
<div class="footer__widget-content">
|
|
||||||
<div class="footer__subscribe">
|
|
||||||
<p>Получай последние новости приёмной кампании на свою почту</p>
|
|
||||||
<form action="#">
|
|
||||||
<div class="footer__subscribe-box">
|
|
||||||
<div class="footer__subscribe-input">
|
|
||||||
<input type="email" placeholder="Email адрес ">
|
|
||||||
</div>
|
|
||||||
<button class="footer-sub-btn" type="submit">Подписаться</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer__bottom">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="footer__copyright text-center">
|
|
||||||
<p>© Copyright © 1994-2023
|
|
||||||
Федеральное государственное бюджетное образовательное учреждение высшего образования «Майкопский государственный технологический университет» Допускается цитирование материалов без получения предварительного согласия www.mkgtu.ru при условии размещения в тексте обязательной ссылки на сайт www.mkgtu.ru, приложение для android "Расписание университета2017" является официальным приложением использование в нем материалов допускается. Для интернет-изданий обязательно размещение прямой, открытой для поисковых систем гиперссылки на цитируемые статьи не ниже второго абзаца в тексте или в качестве источника. Нарушение исключительных прав преследуется по закону</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
<!-- footer area end -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- JS here 1-->
|
|
||||||
<script src="{{ URL::to('js/vendor/jquery.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/vendor/waypoints.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/bootstrap-bundle.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/meanmenu.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/slick.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/magnific-popup.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/parallax.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/nice-select.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/counterup.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/wow.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/isotope-pkgd.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/imagesloaded-pkgd.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/ajax-form.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/countdown.js') }}"></script>
|
|
||||||
<script src="{{ URL::to('js/main.js?v=2') }}"></script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
|
@ -1,223 +0,0 @@
|
||||||
<!doctype html>
|
|
||||||
<html class="no-js" lang="ru">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
||||||
<title>Абитуриенту ФГБОУ ВО "МГТУ"</title>
|
|
||||||
<meta name="description" content="">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
|
|
||||||
<!-- Place favicon.ico in the root directory -->
|
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="{{ URL::to('img/logo/favicon.png') }}">
|
|
||||||
|
|
||||||
<!-- CSS here -->
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/bootstrap.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/meanmenu.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/animate.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/slick.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/magnific-popup.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/nice-select.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/font-awesome-pro.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/elegent-icons.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/spacing.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/main.css') }}">
|
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/font-awesome.min.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/all.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/brands.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/solid.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/fonta-wesome.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/regular.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/svg-with-js.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/v4-shims.css') }}">
|
|
||||||
<!-- css end here-->
|
|
||||||
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
|
||||||
<meta http-equiv="Pragma" content="no-cache">
|
|
||||||
<meta http-equiv="Expires" content="0">
|
|
||||||
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- pre loader area start -->
|
|
||||||
<div class="tp-preloader">
|
|
||||||
<div class="tp-preloader__center">
|
|
||||||
|
|
||||||
<div style="position:relative; width:300px; height:300px;">
|
|
||||||
<img src="{{ URL::to('svg/img/circle.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
|
||||||
<img src="{{ URL::to('svg/img/schit.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
|
||||||
<img src="{{ URL::to('svg/img/book.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
|
||||||
</div>
|
|
||||||
<!--svg width="170" height="132" viewBox="0 0 170 132" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<g clip-path="url(#clip0_6_12)">
|
|
||||||
<path d="M113.978 61.1738L55.4552 2.8186C52.8594 0.230266 48.7298 0.230266 46.252 2.8186L1.88784 46.4673C-0.707934 49.0557 -0.707934 53.1735 1.88784 55.6441L14.5127 68.2329L66.9002 120.353L113.86 75.7626C118.108 71.8801 118.108 65.2916 113.978 61.1738Z" fill="black"/>
|
|
||||||
<path d="M167.781 51.5263L90.2621 129.059C86.1325 133.177 79.6431 133.177 75.5134 129.059L31.6212 85.2923C35.7509 89.4101 42.2403 89.4101 46.37 85.2923L123.889 7.75996C126.485 5.17163 130.615 5.17163 133.092 7.75996L167.663 42.2319C170.377 44.8202 170.377 48.938 167.781 51.5263Z" fill="#5392FB"/>
|
|
||||||
<path d="M74.9235 35.0551C76.6933 36.8199 78.4632 38.467 79.9971 39.8788C82.1209 41.6436 82.2389 44.8202 80.233 46.8203L48.8478 78.1156C44.1282 82.8217 36.4588 82.8217 31.7392 78.1156C27.0197 73.4095 27.0197 65.7622 31.7392 61.0561L63.1245 29.7608C65.1303 27.7607 68.3161 27.8784 70.0859 29.9961C71.5018 31.5256 73.1536 33.2904 74.9235 35.0551Z" fill="currentColor" class="path-yellow"/>
|
|
||||||
</g>
|
|
||||||
<defs>
|
|
||||||
<clipPath id="clip0_6_12">
|
|
||||||
<rect width="169.787" height="131.064" fill="white" transform="translate(0 0.936172)"/>
|
|
||||||
</clipPath>
|
|
||||||
</defs>
|
|
||||||
</svg-->
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- pre loader area end -->
|
|
||||||
|
|
||||||
<!-- back to top start -->
|
|
||||||
<button class="tp-backtotop">
|
|
||||||
<span><i class="fal fa-angle-double-up"></i></span>
|
|
||||||
</button>
|
|
||||||
<!-- back to top end -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- header area start -->
|
|
||||||
<header>
|
|
||||||
<div class="tp-header__area tp-header__transparent">
|
|
||||||
<div class="tp-header__main" id="header-sticky">
|
|
||||||
<div class="container">
|
|
||||||
<div class="row align-items-center">
|
|
||||||
<div class="col-xxl-2 col-xl-2 col-lg-2 col-md-6 col-6">
|
|
||||||
<div class="logo has-border">
|
|
||||||
<a href="index.php">
|
|
||||||
<!--img src="assets/img/logo/white-logo.png" alt="logo"-->
|
|
||||||
<h5 style="color: #fff">АБИТУРИЕНТУ МГТУ</h5>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-xxl-6 col-xl-6 col-lg-7 d-none d-lg-block">
|
|
||||||
<div class="main-menu">
|
|
||||||
<nav id="mobile-menu">
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
<a href="index.php">Главная</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="about-us.html">Правила приема</a>
|
|
||||||
</li>
|
|
||||||
<li class="has-dropdown">
|
|
||||||
<a href="course.html">Образование</a>
|
|
||||||
<ul class="submenu">
|
|
||||||
<li><a href="course-list.html">Бакалвриат</a></li>
|
|
||||||
<li><a href="course.html">Специалитет</a></li>
|
|
||||||
<li><a href="course-details.html">Магистратура</a></li>
|
|
||||||
<li><a href="cart.html">Аспирантура</a></li>
|
|
||||||
<li><a href="checkout.html">Доп. образование</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<!--li class="has-dropdown">
|
|
||||||
<a href="#">Pages</a>
|
|
||||||
<ul class="submenu">
|
|
||||||
<li><a href="event.html">Events</a></li>
|
|
||||||
<li><a href="event-details.html">Event Details</a></li>
|
|
||||||
<li><a href="instructor.html">Instructor V1</a></li>
|
|
||||||
<li><a href="instructor-2.html">Instructor V2</a></li>
|
|
||||||
<li><a href="instructor-details.html">Instructor Details</a></li>
|
|
||||||
<li><a href="wishlist.html">Wishlist</a></li>
|
|
||||||
<li><a href="sign-in.html">Sign In</a></li>
|
|
||||||
<li><a href="sign-up.html">Sign Up</a></li>
|
|
||||||
<li><a href="faq.html">Faq</a></li>
|
|
||||||
<li><a href="404.html">404</a></li>
|
|
||||||
</ul>
|
|
||||||
</li-->
|
|
||||||
<!--li class="has-dropdown">
|
|
||||||
<a href="blog.html"></a>
|
|
||||||
<ul class="submenu">
|
|
||||||
<li><a href="blog.html">Blog</a></li>
|
|
||||||
<li><a href="blog-details.html">Blog Details</a></li>
|
|
||||||
</ul>
|
|
||||||
</li-->
|
|
||||||
<li>
|
|
||||||
<a href="contact.html">Контакты</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
@if (Route::has('login'))
|
|
||||||
|
|
||||||
@auth
|
|
||||||
<a href="{{ url('/dashboard') }}" > {{ Auth::user()->name }} </a>
|
|
||||||
@else
|
|
||||||
<a href="{{ route('login') }}" >Вход</a>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@endauth
|
|
||||||
|
|
||||||
@endif
|
|
||||||
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-xxl-4 col-xl-4 col-lg-3 col-md-6 col-6">
|
|
||||||
<div class="tp-header__main-right d-flex justify-content-end align-items-center pl-30">
|
|
||||||
<div class="header-acttion-btns d-flex align-items-center d-none d-md-flex">
|
|
||||||
<a href="tel:+(443)003030266" class="tp-phone-btn d-none d-xl-block">
|
|
||||||
<i class="fa-thin fa-phone"></i>8 (8772) 52-30-08 <span>Приёмная комиссия</span></a>
|
|
||||||
</div>
|
|
||||||
<div class="tp-header__hamburger ml-50 d-lg-none">
|
|
||||||
<button class="hamburger-btn offcanvas-open-btn">
|
|
||||||
<span></span>
|
|
||||||
<span></span>
|
|
||||||
<span></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<!-- header area end -->
|
|
||||||
|
|
||||||
<!-- offcanvas area start -->
|
|
||||||
<div class="offcanvas__area" >
|
|
||||||
<div class="offcanvas__wrapper">
|
|
||||||
<div class="offcanvas__content">
|
|
||||||
<div class="offcanvas__close text-end">
|
|
||||||
<button class="offcanvas__close-btn offcanvas-close-btn">
|
|
||||||
<i class="fal fa-times"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="offcanvas__top mb-40">
|
|
||||||
<div class="offcanvas__subtitle">
|
|
||||||
<span class="text-white d-inline-block mb-25 d-none d-lg-block">ELEVATE YOUR BUSINESS WITH</span>
|
|
||||||
</div>
|
|
||||||
<div class="offcanvas__logo mb-40">
|
|
||||||
<a href="/">
|
|
||||||
<img src="{{ URL::to('img/logo/logo.png') }}" alt="logo">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="offcanvas-info d-none d-lg-block">
|
|
||||||
<p>Limitless customization options & Elementor compatibility let anyone create a beautiful website
|
|
||||||
with Valiance. </p>
|
|
||||||
</div>
|
|
||||||
<div class="offcanvas__btn d-none d-lg-block">
|
|
||||||
<a href="contact.html" class="tp-btn">Contact us <span></span></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mobile-menu fix mb-40"></div>
|
|
||||||
|
|
||||||
|
|
||||||
<div class="offcamvas__bottom">
|
|
||||||
<div class="offcanvas__cta mt-30 mb-20">
|
|
||||||
<h3 class="offcanvas__cta-title">Contact info</h3>
|
|
||||||
<span>27 Division St, New York,</span>
|
|
||||||
<span>+154 4808 84082 4830</span>
|
|
||||||
<span>support@noxia.com</span>
|
|
||||||
<span>Office Hours: 8AM - 5PM</span>
|
|
||||||
<span>Sunday - Wekend Day</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="body-overlay"></div>
|
|
||||||
<!-- offcanvas area end -->
|
|
|
@ -1,3 +1,7 @@
|
||||||
<button {{ $attributes->merge(['type' => 'submit', 'class' => 'inline-flex items-center px-4 py-2 bg-gray-800 dark:bg-gray-200 border border-transparent rounded-md font-semibold text-xs text-white dark:text-gray-800 uppercase tracking-widest hover:bg-gray-700 dark:hover:bg-white focus:bg-gray-700 dark:focus:bg-white active:bg-gray-900 dark:active:bg-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800 transition ease-in-out duration-150']) }}>
|
{{--<button {{ $attributes->merge(['type' => 'submit', 'class' => 'inline-flex items-center px-4 py-2 bg-gray-800 dark:bg-gray-200 border border-transparent rounded-md font-semibold text-xs text-white dark:text-gray-800 uppercase tracking-widest hover:bg-gray-700 dark:hover:bg-white focus:bg-gray-700 dark:focus:bg-white active:bg-gray-900 dark:active:bg-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800 transition ease-in-out duration-150']) }}>
|
||||||
|
{{ $slot }}
|
||||||
|
</button>
|
||||||
|
--}}
|
||||||
|
<button {{ $attributes->merge(['type' => 'submit', 'class' => ' transition ease-in-out duration-150 px-4 py-2 text-white rounded rounded-5 ', 'style' => 'background-color: #019870']) }}>
|
||||||
{{ $slot }}
|
{{ $slot }}
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -14,15 +14,15 @@
|
||||||
<!-- Scripts -->
|
<!-- Scripts -->
|
||||||
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
@vite(['resources/css/app.css', 'resources/js/app.js'])
|
||||||
</head>
|
</head>
|
||||||
<body class="font-sans text-gray-900 antialiased">
|
<body class="font-sans text-gray-900 antialiased" >
|
||||||
<div class="min-h-screen flex flex-col sm:justify-center items-center pt-6 sm:pt-0 bg-gray-100 dark:bg-gray-900">
|
<div class="min-h-screen flex flex-col sm:justify-center items-center pt-6 sm:pt-0 bg-gray-100 dark:bg-gray-900" style="background-color:#006147">
|
||||||
<div>
|
<div class="d-flex justify-content-center align-items-center text-center">
|
||||||
<a href="/">
|
<a href="/">
|
||||||
<x-application-logo class="w-20 h-20 fill-current text-gray-500" />
|
<img src="{{ URL::to('svg/img/schit.svg') }}" style="max-width: 60%; display: unset " alt="" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="w-full sm:max-w-md mt-6 px-6 py-4 bg-white dark:bg-gray-800 shadow-md overflow-hidden sm:rounded-lg">
|
<div class="w-full sm:max-w-md mt-6 px-6 py-4 shadow-md overflow-hidden sm:rounded-lg" style="background-color: whitesmoke">
|
||||||
{{ $slot }}
|
{{ $slot }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -0,0 +1,329 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html class="no-js" lang="ru">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||||
|
<title>Абитуриенту ФГБОУ ВО "МГТУ"</title>
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
|
<!-- Place favicon.ico in the root directory -->
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="{{ URL::to('img/logo/favicon.png') }}">
|
||||||
|
|
||||||
|
<!-- CSS here -->
|
||||||
|
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ asset('css/bootstrap.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/meanmenu.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/animate.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/slick.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/magnific-popup.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/nice-select.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/font-awesome-pro.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/elegent-icons.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/spacing.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/main.css') }}">
|
||||||
|
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/font-awesome.min.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/all.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/brands.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/solid.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/fonta-wesome.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/regular.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/svg-with-js.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ URL::to('css/awesome/css/v4-shims.css') }}">
|
||||||
|
<!-- css end here-->
|
||||||
|
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
||||||
|
<meta http-equiv="Pragma" content="no-cache">
|
||||||
|
<meta http-equiv="Expires" content="0">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- pre loader area start -->
|
||||||
|
<div class="tp-preloader">
|
||||||
|
<div class="tp-preloader__center">
|
||||||
|
|
||||||
|
<div style="position:relative; width:300px; height:300px;">
|
||||||
|
<img src="{{ URL::to('svg/img/circle.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
||||||
|
<img src="{{ URL::to('svg/img/schit.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
||||||
|
<img src="{{ URL::to('svg/img/book.svg') }}" style="position:absolute; left:0px; top:0px;" alt="" />
|
||||||
|
</div>
|
||||||
|
<!--svg width="170" height="132" viewBox="0 0 170 132" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_6_12)">
|
||||||
|
<path d="M113.978 61.1738L55.4552 2.8186C52.8594 0.230266 48.7298 0.230266 46.252 2.8186L1.88784 46.4673C-0.707934 49.0557 -0.707934 53.1735 1.88784 55.6441L14.5127 68.2329L66.9002 120.353L113.86 75.7626C118.108 71.8801 118.108 65.2916 113.978 61.1738Z" fill="black"/>
|
||||||
|
<path d="M167.781 51.5263L90.2621 129.059C86.1325 133.177 79.6431 133.177 75.5134 129.059L31.6212 85.2923C35.7509 89.4101 42.2403 89.4101 46.37 85.2923L123.889 7.75996C126.485 5.17163 130.615 5.17163 133.092 7.75996L167.663 42.2319C170.377 44.8202 170.377 48.938 167.781 51.5263Z" fill="#5392FB"/>
|
||||||
|
<path d="M74.9235 35.0551C76.6933 36.8199 78.4632 38.467 79.9971 39.8788C82.1209 41.6436 82.2389 44.8202 80.233 46.8203L48.8478 78.1156C44.1282 82.8217 36.4588 82.8217 31.7392 78.1156C27.0197 73.4095 27.0197 65.7622 31.7392 61.0561L63.1245 29.7608C65.1303 27.7607 68.3161 27.8784 70.0859 29.9961C71.5018 31.5256 73.1536 33.2904 74.9235 35.0551Z" fill="currentColor" class="path-yellow"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_6_12">
|
||||||
|
<rect width="169.787" height="131.064" fill="white" transform="translate(0 0.936172)"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg-->
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- pre loader area end -->
|
||||||
|
|
||||||
|
<!-- back to top start -->
|
||||||
|
<button class="tp-backtotop">
|
||||||
|
<span><i class="fal fa-angle-double-up"></i></span>
|
||||||
|
</button>
|
||||||
|
<!-- back to top end -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- header area start -->
|
||||||
|
<header>
|
||||||
|
<div class="tp-header__area tp-header__transparent">
|
||||||
|
<div class="tp-header__main" id="header-sticky">
|
||||||
|
<div class="container">
|
||||||
|
<div class="row align-items-center">
|
||||||
|
<div class="col-xxl-2 col-xl-2 col-lg-2 col-md-6 col-6">
|
||||||
|
<div class="logo has-border">
|
||||||
|
<a href="index.php">
|
||||||
|
<!--img src="assets/img/logo/white-logo.png" alt="logo"-->
|
||||||
|
<h5 style="color: #fff">АБИТУРИЕНТУ МГТУ</h5>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-xxl-6 col-xl-6 col-lg-7 d-none d-lg-block">
|
||||||
|
<div class="main-menu">
|
||||||
|
<nav id="mobile-menu">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a href="index.php">Главная</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="about-us.html">Правила приема</a>
|
||||||
|
</li>
|
||||||
|
<li class="has-dropdown">
|
||||||
|
<a href="course.html">Образование</a>
|
||||||
|
<ul class="submenu">
|
||||||
|
<li><a href="course-list.html">Бакалвриат</a></li>
|
||||||
|
<li><a href="course.html">Специалитет</a></li>
|
||||||
|
<li><a href="course-details.html">Магистратура</a></li>
|
||||||
|
<li><a href="cart.html">Аспирантура</a></li>
|
||||||
|
<li><a href="checkout.html">Доп. образование</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<!--li class="has-dropdown">
|
||||||
|
<a href="#">Pages</a>
|
||||||
|
<ul class="submenu">
|
||||||
|
<li><a href="event.html">Events</a></li>
|
||||||
|
<li><a href="event-details.html">Event Details</a></li>
|
||||||
|
<li><a href="instructor.html">Instructor V1</a></li>
|
||||||
|
<li><a href="instructor-2.html">Instructor V2</a></li>
|
||||||
|
<li><a href="instructor-details.html">Instructor Details</a></li>
|
||||||
|
<li><a href="wishlist.html">Wishlist</a></li>
|
||||||
|
<li><a href="sign-in.html">Sign In</a></li>
|
||||||
|
<li><a href="sign-up.html">Sign Up</a></li>
|
||||||
|
<li><a href="faq.html">Faq</a></li>
|
||||||
|
<li><a href="404.html">404</a></li>
|
||||||
|
</ul>
|
||||||
|
</li-->
|
||||||
|
<!--li class="has-dropdown">
|
||||||
|
<a href="blog.html"></a>
|
||||||
|
<ul class="submenu">
|
||||||
|
<li><a href="blog.html">Blog</a></li>
|
||||||
|
<li><a href="blog-details.html">Blog Details</a></li>
|
||||||
|
</ul>
|
||||||
|
</li-->
|
||||||
|
<li>
|
||||||
|
<a href="contact.html">Контакты</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
@if (Route::has('login'))
|
||||||
|
|
||||||
|
@auth
|
||||||
|
<a href="{{ url('/dashboard') }}" > {{ Auth::user()->name }} </a>
|
||||||
|
@else
|
||||||
|
<a href="{{ route('login') }}" >Вход</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@endauth
|
||||||
|
|
||||||
|
@endif
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-xxl-4 col-xl-4 col-lg-3 col-md-6 col-6">
|
||||||
|
<div class="tp-header__main-right d-flex justify-content-end align-items-center pl-30">
|
||||||
|
<div class="header-acttion-btns d-flex align-items-center d-none d-md-flex">
|
||||||
|
<a href="tel:+(443)003030266" class="tp-phone-btn d-none d-xl-block">
|
||||||
|
<i class="fa-thin fa-phone"></i>8 (8772) 52-30-08 <span>Приёмная комиссия</span></a>
|
||||||
|
</div>
|
||||||
|
<div class="tp-header__hamburger ml-50 d-lg-none">
|
||||||
|
<button class="hamburger-btn offcanvas-open-btn">
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<!-- header area end -->
|
||||||
|
|
||||||
|
<!-- offcanvas area start -->
|
||||||
|
<div class="offcanvas__area" >
|
||||||
|
<div class="offcanvas__wrapper">
|
||||||
|
<div class="offcanvas__content">
|
||||||
|
<div class="offcanvas__close text-end">
|
||||||
|
<button class="offcanvas__close-btn offcanvas-close-btn">
|
||||||
|
<i class="fal fa-times"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="offcanvas__top mb-40">
|
||||||
|
<div class="offcanvas__subtitle">
|
||||||
|
<span class="text-white d-inline-block mb-25 d-none d-lg-block">ELEVATE YOUR BUSINESS WITH</span>
|
||||||
|
</div>
|
||||||
|
<div class="offcanvas__logo mb-40">
|
||||||
|
<a href="/">
|
||||||
|
<img src="{{ URL::to('img/logo/logo.png') }}" alt="logo">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="offcanvas-info d-none d-lg-block">
|
||||||
|
<p>Limitless customization options & Elementor compatibility let anyone create a beautiful website
|
||||||
|
with Valiance. </p>
|
||||||
|
</div>
|
||||||
|
<div class="offcanvas__btn d-none d-lg-block">
|
||||||
|
<a href="contact.html" class="tp-btn">Contact us <span></span></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mobile-menu fix mb-40"></div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="offcamvas__bottom">
|
||||||
|
<div class="offcanvas__cta mt-30 mb-20">
|
||||||
|
<h3 class="offcanvas__cta-title">Contact info</h3>
|
||||||
|
<span>27 Division St, New York,</span>
|
||||||
|
<span>+154 4808 84082 4830</span>
|
||||||
|
<span>support@noxia.com</span>
|
||||||
|
<span>Office Hours: 8AM - 5PM</span>
|
||||||
|
<span>Sunday - Wekend Day</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="body-overlay"></div>
|
||||||
|
<!-- offcanvas area end -->
|
||||||
|
|
||||||
|
@yield('content')
|
||||||
|
|
||||||
|
<!-- footer area start -->
|
||||||
|
<footer>
|
||||||
|
<div class="footer__area grey-bg">
|
||||||
|
<div class="container">
|
||||||
|
<div class="footer__top ">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-xxl-3 col-xl-3 col-lg-3 col-md-6">
|
||||||
|
<div class="footer__widget mb-50 footer-col-1">
|
||||||
|
<div class="footer__widget-logo mb-30">
|
||||||
|
<a href="index.html"><img src="https://mkgtu.ru/local/templates/modern_green_new_s1/images/logo.svg" alt=""></a>
|
||||||
|
</div>
|
||||||
|
<div class="footer__widget-content">
|
||||||
|
<p>Следи за последними новостями в наших соц.сетях</p>
|
||||||
|
<div class="footer__social">
|
||||||
|
<span><a href="#"><i class="fab fa-vk"></i></a></span>
|
||||||
|
<span><a href="#" class="yt"><i class="fab fa-youtube"></i></a></span>
|
||||||
|
<span><a href="#" class="tw"><i class="fab fa-telegram"></i></a></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-xxl-2 col-xl-2 col-lg-3 col-6">
|
||||||
|
<div class="footer__widget mb-50 footer-col-2">
|
||||||
|
<h3 class="footer__widget-title">Информация</h3>
|
||||||
|
<div class="footer__widget-content">
|
||||||
|
<ul>
|
||||||
|
<li><a href="#">Правила приёма</a></li>
|
||||||
|
<li><a href="#">Иностранным абитуриентам</a></li>
|
||||||
|
<li><a href="#">Мероприятия</a></li>
|
||||||
|
<li><a href="#">Оф. сайт</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-xxl-3 col-xl-3 col-lg-3 col-6">
|
||||||
|
<div class="footer__widget mb-50 footer-col-3">
|
||||||
|
<h3 class="footer__widget-title">Контакты</h3>
|
||||||
|
<div class="footer__widget-content">
|
||||||
|
<ul>
|
||||||
|
<li><a href="#">Приёмная комиссия <br /><p>8 (8772) 52-30-08</p></a></li>
|
||||||
|
<li><a href="#">Приёмная комиссия филиала МГТУ в пос. Яблоновском <br /><p>8-938-530-53-14</p></a></li>
|
||||||
|
<li><a href="#">Почта info@mkgtu.ru</a></li>
|
||||||
|
<li><a href="#">385000, Республика Адыгея, г. Майкоп, ул. Первомайская, д. 191</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xxl-4 col-xl-4 col-lg-3 col-md-6">
|
||||||
|
<div class="footer__widget mb-50 footer-col-4">
|
||||||
|
<h3 class="footer__widget-title">Подпишись на обновления</h3>
|
||||||
|
<div class="footer__widget-content">
|
||||||
|
<div class="footer__subscribe">
|
||||||
|
<p>Получай последние новости приёмной кампании на свою почту</p>
|
||||||
|
<form action="#">
|
||||||
|
<div class="footer__subscribe-box">
|
||||||
|
<div class="footer__subscribe-input">
|
||||||
|
<input type="email" placeholder="Email адрес ">
|
||||||
|
</div>
|
||||||
|
<button class="footer-sub-btn" type="submit">Подписаться</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="footer__bottom">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="footer__copyright text-center">
|
||||||
|
<p>© Copyright © 1994-2023
|
||||||
|
Федеральное государственное бюджетное образовательное учреждение высшего образования «Майкопский государственный технологический университет» Допускается цитирование материалов без получения предварительного согласия www.mkgtu.ru при условии размещения в тексте обязательной ссылки на сайт www.mkgtu.ru, приложение для android "Расписание университета2017" является официальным приложением использование в нем материалов допускается. Для интернет-изданий обязательно размещение прямой, открытой для поисковых систем гиперссылки на цитируемые статьи не ниже второго абзаца в тексте или в качестве источника. Нарушение исключительных прав преследуется по закону</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
<!-- footer area end -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- JS here 1-->
|
||||||
|
<script src="{{ URL::to('js/vendor/jquery.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/vendor/waypoints.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/bootstrap-bundle.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/meanmenu.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/slick.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/magnific-popup.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/parallax.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/nice-select.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/counterup.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/wow.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/isotope-pkgd.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/imagesloaded-pkgd.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/ajax-form.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/countdown.js') }}"></script>
|
||||||
|
<script src="{{ URL::to('js/main.js?v=2') }}"></script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -1,4 +1,5 @@
|
||||||
@include('components.header')
|
@extends('layouts.layout')
|
||||||
|
@section('content')
|
||||||
<main>
|
<main>
|
||||||
|
|
||||||
<!-- hero section -->
|
<!-- hero section -->
|
||||||
|
@ -444,4 +445,4 @@
|
||||||
|
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
@include('components.footer')
|
@endsection
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
@auth()
|
||||||
|
<div class="grid col-span-full">
|
||||||
|
<h1 class="max-w-2xl mb-4 text-4xl leading-none tracking-tight md:text-5xl xl:text-6xl dark:text-white"> создать
|
||||||
|
пользователя</h1>
|
||||||
|
|
||||||
|
{{ Form::open(['url' => route('users.store'), 'method' => 'POST', 'class' => 'w-50']) }}
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div>
|
||||||
|
{{ Form::label('name', 'Логин') }}
|
||||||
|
</div>
|
||||||
|
<div class="mt-2">
|
||||||
|
{{ Form::text('name', '', ['class' => 'form-control rounded border-gray-300 w-1/3']) }}
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
@if ($errors->any())
|
||||||
|
{{ $errors->first('name') }}
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
{{ Form::label('email', 'электронная почта') }}
|
||||||
|
</div>
|
||||||
|
<div class="mt-2">
|
||||||
|
{{ Form::text('email', '', ['class' => 'form-control rounded border-gray-300 w-1/3']) }}
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
@if ($errors->any())
|
||||||
|
{{ $errors->first('email') }}
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
{{ Form::label('password', 'Пароль') }}
|
||||||
|
</div>
|
||||||
|
<div class="mt-2">
|
||||||
|
{{ Form::text('password', '', ['class' => 'form-control rounded border-gray-300 w-1/3']) }}
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
@if ($errors->any())
|
||||||
|
{{ $errors->first('password') }}
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mt-4">
|
||||||
|
{{ Form::submit('создать', ['class' => 'bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded']) }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{ Form::close() }}
|
||||||
|
</div>
|
||||||
|
@endauth
|
|
@ -0,0 +1,75 @@
|
||||||
|
<h2>список пользователей</h2>
|
||||||
|
|
||||||
|
<a href="{{ route('users.create') }}"> создать пользователя</a>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
<table class="mt-4">
|
||||||
|
<thead class="border-b-2 border-solid border-black text-left" style="text-align: left">
|
||||||
|
<tr>
|
||||||
|
<th>id</th>
|
||||||
|
<td>name</td>
|
||||||
|
<td>email</td>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach($users as $user)
|
||||||
|
<tr>
|
||||||
|
<td>{{ $user->id }}</td>
|
||||||
|
<td>{{ $user->name }}</td>
|
||||||
|
<td>{{ $user->email }}</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{{--<table class="mt-4">--}}
|
||||||
|
{{-- <thead class="border-b-2 border-solid border-black text-left" style="text-align: left">--}}
|
||||||
|
{{-- <tr>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_id') }}</th>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_task_status') }}</th>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_name') }}</th>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_creater') }}</th>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_assigned') }}</th>--}}
|
||||||
|
{{-- <th>{{ __('layout.table_date_of_creation') }}</th>--}}
|
||||||
|
{{-- @auth()--}}
|
||||||
|
{{-- <th>{{ __('layout.table_actions') }}</th>--}}
|
||||||
|
{{-- @endauth--}}
|
||||||
|
{{-- </tr>--}}
|
||||||
|
{{-- </thead>--}}
|
||||||
|
{{-- <tbody>--}}
|
||||||
|
{{-- @foreach($tasks as $task)--}}
|
||||||
|
{{-- <tr class="border-b border-dashed text-left">--}}
|
||||||
|
{{-- <td>{{ $task->id }}</td>--}}
|
||||||
|
{{-- <td>{{ $taskStatuses[$task->status_id] }}</td>--}}
|
||||||
|
{{-- <td><a href="{{ route('tasks.show', $task) }}">{{ $task->name }}</a></td>--}}
|
||||||
|
{{-- <td>{{ $users[$task->created_by_id] }}</td>--}}
|
||||||
|
{{-- <td>{{ $users[$task->assigned_to_id] }}</td>--}}
|
||||||
|
{{-- <td>{{ date_format($task->created_at, 'd.m.Y') }}</td>--}}
|
||||||
|
{{-- @auth()--}}
|
||||||
|
{{-- <td>--}}
|
||||||
|
{{-- @can('delete', $task)--}}
|
||||||
|
{{-- <a--}}
|
||||||
|
{{-- class="text-red-600 hover:text-red-900"--}}
|
||||||
|
{{-- rel="nofollow"--}}
|
||||||
|
{{-- data-method="delete"--}}
|
||||||
|
{{-- data-confirm="{{ __('layout.table_delete_question') }}"--}}
|
||||||
|
{{-- href="{{ route('tasks.destroy', $task) }}"--}}
|
||||||
|
{{-- >--}}
|
||||||
|
{{-- {{ __('layout.table_delete') }}--}}
|
||||||
|
{{-- </a>--}}
|
||||||
|
{{-- @endcan--}}
|
||||||
|
{{-- @can('update', $task)--}}
|
||||||
|
{{-- <a class="text-blue-600 hover:text-blue-900"--}}
|
||||||
|
{{-- href="{{ route("tasks.edit", $task) }}"--}}
|
||||||
|
{{-- >--}}
|
||||||
|
{{-- {{ __('layout.table_edit') }}--}}
|
||||||
|
{{-- </a>--}}
|
||||||
|
{{-- @endcan--}}
|
||||||
|
{{-- </td>--}}
|
||||||
|
{{-- @endauth--}}
|
||||||
|
{{-- </tr>--}}
|
||||||
|
{{-- @endforeach--}}
|
||||||
|
{{-- </tbody>--}}
|
||||||
|
{{--</table>--}}
|
|
@ -1,6 +1,7 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
use App\Http\Controllers\ProfileController;
|
use App\Http\Controllers\ProfileController;
|
||||||
|
use App\Http\Controllers\UserController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -15,12 +16,20 @@ use Illuminate\Support\Facades\Route;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Route::get('/', function () {
|
Route::get('/', function () {
|
||||||
return view('welcome');
|
return view('test');
|
||||||
});
|
})->name('home');
|
||||||
Route::get('test', function () {
|
|
||||||
|
Route::resource('/users', UserController::class);
|
||||||
|
|
||||||
|
Route::get('/test', function () {
|
||||||
return view('test');
|
return view('test');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
Route::get('/dashboard', function () {
|
||||||
|
return view('dashboard');
|
||||||
|
})->middleware(['auth', 'verified'])->name('dashboard');
|
||||||
|
|
||||||
Route::get('/dashboard', function () {
|
Route::get('/dashboard', function () {
|
||||||
return view('dashboard');
|
return view('dashboard');
|
||||||
})->middleware(['auth', 'verified'])->name('dashboard');
|
})->middleware(['auth', 'verified'])->name('dashboard');
|
||||||
|
@ -31,4 +40,4 @@ Route::middleware('auth')->group(function () {
|
||||||
Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
|
Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
|
||||||
});
|
});
|
||||||
|
|
||||||
require __DIR__.'/auth.php';
|
require __DIR__ . '/auth.php';
|
||||||
|
|
|
@ -12,7 +12,7 @@ trait CreatesApplication
|
||||||
*/
|
*/
|
||||||
public function createApplication(): Application
|
public function createApplication(): Application
|
||||||
{
|
{
|
||||||
$app = require __DIR__.'/../bootstrap/app.php';
|
$app = require __DIR__ . '/../bootstrap/app.php';
|
||||||
|
|
||||||
$app->make(Kernel::class)->bootstrap();
|
$app->make(Kernel::class)->bootstrap();
|
||||||
|
|
||||||
|
|
|
@ -11,14 +11,14 @@ class AuthenticationTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_login_screen_can_be_rendered(): void
|
public function testLoginScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
$response = $this->get('/login');
|
$response = $this->get('/login');
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_users_can_authenticate_using_the_login_screen(): void
|
public function testUsersCanAuthenticateUsingTheLoginScreen(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class AuthenticationTest extends TestCase
|
||||||
$response->assertRedirect(RouteServiceProvider::HOME);
|
$response->assertRedirect(RouteServiceProvider::HOME);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_users_can_not_authenticate_with_invalid_password(): void
|
public function testUsersCanNotAuthenticateWithInvalidPassword(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class AuthenticationTest extends TestCase
|
||||||
$this->assertGuest();
|
$this->assertGuest();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_users_can_logout(): void
|
public function testUsersCanLogout(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ class EmailVerificationTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_email_verification_screen_can_be_rendered(): void
|
public function testEmailVerificationScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create([
|
$user = User::factory()->create([
|
||||||
'email_verified_at' => null,
|
'email_verified_at' => null,
|
||||||
|
@ -25,7 +25,7 @@ class EmailVerificationTest extends TestCase
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_email_can_be_verified(): void
|
public function testEmailCanBeVerified(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create([
|
$user = User::factory()->create([
|
||||||
'email_verified_at' => null,
|
'email_verified_at' => null,
|
||||||
|
@ -43,10 +43,10 @@ class EmailVerificationTest extends TestCase
|
||||||
|
|
||||||
Event::assertDispatched(Verified::class);
|
Event::assertDispatched(Verified::class);
|
||||||
$this->assertTrue($user->fresh()->hasVerifiedEmail());
|
$this->assertTrue($user->fresh()->hasVerifiedEmail());
|
||||||
$response->assertRedirect(RouteServiceProvider::HOME.'?verified=1');
|
$response->assertRedirect(RouteServiceProvider::HOME . '?verified=1');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_email_is_not_verified_with_invalid_hash(): void
|
public function testEmailIsNotVerifiedWithInvalidHash(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create([
|
$user = User::factory()->create([
|
||||||
'email_verified_at' => null,
|
'email_verified_at' => null,
|
||||||
|
|
|
@ -10,7 +10,7 @@ class PasswordConfirmationTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_confirm_password_screen_can_be_rendered(): void
|
public function testConfirmPasswordScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ class PasswordConfirmationTest extends TestCase
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_password_can_be_confirmed(): void
|
public function testPasswordCanBeConfirmed(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class PasswordConfirmationTest extends TestCase
|
||||||
$response->assertSessionHasNoErrors();
|
$response->assertSessionHasNoErrors();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_password_is_not_confirmed_with_invalid_password(): void
|
public function testPasswordIsNotConfirmedWithInvalidPassword(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
|
|
@ -12,14 +12,14 @@ class PasswordResetTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_reset_password_link_screen_can_be_rendered(): void
|
public function testResetPasswordLinkScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
$response = $this->get('/forgot-password');
|
$response = $this->get('/forgot-password');
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_reset_password_link_can_be_requested(): void
|
public function testResetPasswordLinkCanBeRequested(): void
|
||||||
{
|
{
|
||||||
Notification::fake();
|
Notification::fake();
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ class PasswordResetTest extends TestCase
|
||||||
Notification::assertSentTo($user, ResetPassword::class);
|
Notification::assertSentTo($user, ResetPassword::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_reset_password_screen_can_be_rendered(): void
|
public function testResetPasswordScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
Notification::fake();
|
Notification::fake();
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ class PasswordResetTest extends TestCase
|
||||||
$this->post('/forgot-password', ['email' => $user->email]);
|
$this->post('/forgot-password', ['email' => $user->email]);
|
||||||
|
|
||||||
Notification::assertSentTo($user, ResetPassword::class, function ($notification) {
|
Notification::assertSentTo($user, ResetPassword::class, function ($notification) {
|
||||||
$response = $this->get('/reset-password/'.$notification->token);
|
$response = $this->get('/reset-password/' . $notification->token);
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ class PasswordResetTest extends TestCase
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_password_can_be_reset_with_valid_token(): void
|
public function testPasswordCanbeResetWithValidToken(): void
|
||||||
{
|
{
|
||||||
Notification::fake();
|
Notification::fake();
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ class PasswordUpdateTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_password_can_be_updated(): void
|
public function testPasswordCanBeUpdated(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class PasswordUpdateTest extends TestCase
|
||||||
$this->assertTrue(Hash::check('new-password', $user->refresh()->password));
|
$this->assertTrue(Hash::check('new-password', $user->refresh()->password));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_correct_password_must_be_provided_to_update_password(): void
|
public function testCorrectPasswordMustBeProvidedToUpdatePassword(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
|
|
@ -10,14 +10,14 @@ class RegistrationTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_registration_screen_can_be_rendered(): void
|
public function testRegistrationScreenCanBeRendered(): void
|
||||||
{
|
{
|
||||||
$response = $this->get('/register');
|
$response = $this->get('/register');
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_new_users_can_register(): void
|
public function testNewUsersCanRegister(): void
|
||||||
{
|
{
|
||||||
$response = $this->post('/register', [
|
$response = $this->post('/register', [
|
||||||
'name' => 'Test User',
|
'name' => 'Test User',
|
||||||
|
|
|
@ -10,7 +10,7 @@ class ExampleTest extends TestCase
|
||||||
/**
|
/**
|
||||||
* A basic test example.
|
* A basic test example.
|
||||||
*/
|
*/
|
||||||
public function test_the_application_returns_a_successful_response(): void
|
public function testTheApplicationReturnsASuccessfulResponse(): void
|
||||||
{
|
{
|
||||||
$response = $this->get('/');
|
$response = $this->get('/');
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ class ProfileTest extends TestCase
|
||||||
{
|
{
|
||||||
use RefreshDatabase;
|
use RefreshDatabase;
|
||||||
|
|
||||||
public function test_profile_page_is_displayed(): void
|
public function testProfilePageIsDisplayed(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ class ProfileTest extends TestCase
|
||||||
$response->assertOk();
|
$response->assertOk();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_profile_information_can_be_updated(): void
|
public function testProfileInformationCanBeUpdated(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ class ProfileTest extends TestCase
|
||||||
$this->assertNull($user->email_verified_at);
|
$this->assertNull($user->email_verified_at);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_email_verification_status_is_unchanged_when_the_email_address_is_unchanged(): void
|
public function testEmailVerificationStatusIsUnchangedWhenTheEmailAddressAsUnchanged(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ class ProfileTest extends TestCase
|
||||||
$this->assertNotNull($user->refresh()->email_verified_at);
|
$this->assertNotNull($user->refresh()->email_verified_at);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_user_can_delete_their_account(): void
|
public function testUserCanDeleteTheirAccount(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ class ProfileTest extends TestCase
|
||||||
$this->assertNull($user->fresh());
|
$this->assertNull($user->fresh());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_correct_password_must_be_provided_to_delete_account(): void
|
public function testCorrectPasswordMustBeProvidedToDeleteAccount(): void
|
||||||
{
|
{
|
||||||
$user = User::factory()->create();
|
$user = User::factory()->create();
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ class ExampleTest extends TestCase
|
||||||
/**
|
/**
|
||||||
* A basic test example.
|
* A basic test example.
|
||||||
*/
|
*/
|
||||||
public function test_that_true_is_true(): void
|
public function testThatTrueIsTrue(): void
|
||||||
{
|
{
|
||||||
$this->assertTrue(true);
|
$this->assertTrue(true);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue