Skip to content

Commit

Permalink
version 6.0.9
Browse files Browse the repository at this point in the history
  • Loading branch information
Filippo Matteo Riggio committed Aug 25, 2021
1 parent 880af41 commit 618beee
Show file tree
Hide file tree
Showing 50 changed files with 404 additions and 108 deletions.
3 changes: 1 addition & 2 deletions composer.json
Expand Up @@ -33,8 +33,7 @@
],
"psr-4": {
"Kaleidoscope\\Factotum\\": "src",
"Kaleidoscope\\Factotum\\": "src/app",
"Kaleidoscope\\Factotum\\Models\\": "src/app/Models"
"Kaleidoscope\\Factotum\\Seeds\\": "database/seeds"
},
"files": [
"src/app/Library/ContentSearch.php",
Expand Down
22 changes: 12 additions & 10 deletions database/seeds/DatabaseSeeder.php
@@ -1,19 +1,21 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;

use Kaleidoscope\Factotum\Capability;
use Kaleidoscope\Factotum\Category;
use Kaleidoscope\Factotum\Content;
use Kaleidoscope\Factotum\CategoryContent;
use Kaleidoscope\Factotum\ContentField;
use Kaleidoscope\Factotum\ContentType;
use Kaleidoscope\Factotum\Media;
use Kaleidoscope\Factotum\Profile;
use Kaleidoscope\Factotum\Role;
use Kaleidoscope\Factotum\User;
use Kaleidoscope\Factotum\Models\Capability;
use Kaleidoscope\Factotum\Models\Category;
use Kaleidoscope\Factotum\Models\Content;
use Kaleidoscope\Factotum\Models\CategoryContent;
use Kaleidoscope\Factotum\Models\ContentField;
use Kaleidoscope\Factotum\Models\ContentType;
use Kaleidoscope\Factotum\Models\Media;
use Kaleidoscope\Factotum\Models\Profile;
use Kaleidoscope\Factotum\Models\Role;
use Kaleidoscope\Factotum\Models\User;


class DatabaseSeeder extends Seeder
Expand Down
6 changes: 3 additions & 3 deletions database/seeds/EcommerceTableSeeder.php
@@ -1,10 +1,10 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;

use Kaleidoscope\Factotum\ContentType;
use Kaleidoscope\Factotum\ContentField;
use Kaleidoscope\Factotum\Role;
use Kaleidoscope\Factotum\Models\Role;



Expand Down
16 changes: 10 additions & 6 deletions database/seeds/PageTableSeeder.php
@@ -1,13 +1,17 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

use Kaleidoscope\Factotum\Models\ContentType;
use Kaleidoscope\Factotum\Models\ContentField;
use Kaleidoscope\Factotum\Models\Capability;
use Kaleidoscope\Factotum\Models\Role;
use Kaleidoscope\Factotum\Models\User;
use Kaleidoscope\Factotum\Models\Content;

use Kaleidoscope\Factotum\ContentType;
use Kaleidoscope\Factotum\ContentField;
use Kaleidoscope\Factotum\Capability;
use Kaleidoscope\Factotum\Role;
use Kaleidoscope\Factotum\User;
use Kaleidoscope\Factotum\Content;

class PageTableSeeder extends Seeder
{
Expand Down
6 changes: 5 additions & 1 deletion database/seeds/ProfilesTableSeeder.php
@@ -1,8 +1,12 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

use Kaleidoscope\Factotum\Models\User;

use Kaleidoscope\Factotum\User;

class ProfilesTableSeeder extends Seeder
{
Expand Down
4 changes: 4 additions & 0 deletions database/seeds/RolesTableSeeder.php
@@ -1,6 +1,10 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;


class RolesTableSeeder extends Seeder
{
Expand Down
6 changes: 5 additions & 1 deletion database/seeds/UsersTableSeeder.php
@@ -1,8 +1,12 @@
<?php

namespace Kaleidoscope\Factotum\Seeds;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;

use Kaleidoscope\Factotum\Models\Role;

use Kaleidoscope\Factotum\Role;

class UsersTableSeeder extends Seeder
{
Expand Down
Binary file modified src/.DS_Store
Binary file not shown.
36 changes: 16 additions & 20 deletions src/FactotumServiceProvider.php
Expand Up @@ -172,10 +172,11 @@ public function boot(GateContract $gate)


// Middlewares
$this->getRouter()->pushMiddlewareToGroup('session_start', \Illuminate\Session\Middleware\StartSession::class);
$this->getRouter()->pushMiddlewareToGroup('preflight', \Kaleidoscope\Factotum\Http\Middleware\PreflightResponse::class);
$this->getRouter()->pushMiddlewareToGroup('cors', \Fruitcake\Cors\HandleCors::class);
$this->getRouter()->pushMiddlewareToGroup('add_access_token', \Kaleidoscope\Factotum\Http\Middleware\AddHeaderAccessToken::class);
$this->getRouter()->pushMiddlewareToGroup('session_start', \Illuminate\Session\Middleware\StartSession::class);
$this->getRouter()->pushMiddlewareToGroup('preflight', \Kaleidoscope\Factotum\Http\Middleware\PreflightResponse::class);
$this->getRouter()->pushMiddlewareToGroup('uncomplete_profile', \Kaleidoscope\Factotum\Http\Middleware\UncompleteProfile::class);
$this->getRouter()->pushMiddlewareToGroup('cors', \Fruitcake\Cors\HandleCors::class);
$this->getRouter()->pushMiddlewareToGroup('add_access_token', \Kaleidoscope\Factotum\Http\Middleware\AddHeaderAccessToken::class);



Expand Down Expand Up @@ -381,7 +382,10 @@ private function _setupRoutes()
if ( !file_exists( base_path('routes') . '/web/ecommerce/checkout.php' ) ) {

Route::group([
'middleware' => [ 'web' ],
'middleware' => [
'web',
'uncomplete_profile'
],
'namespace' => 'Kaleidoscope\Factotum\Http\Controllers\Web\Ecommerce\Checkout'
], function ($router) {
require __DIR__ . '/routes/web/ecommerce/checkout.php';
Expand All @@ -394,7 +398,10 @@ private function _setupRoutes()
if ( !file_exists( base_path('routes') . '/web/ecommerce/payment.php' ) ) {

Route::group([
'middleware' => [ 'web' ],
'middleware' => [
'web',
'uncomplete_profile'
],
'namespace' => 'Kaleidoscope\Factotum\Http\Controllers\Web\Ecommerce\Payment'
], function ($router) {
require __DIR__ . '/routes/web/ecommerce/payment.php';
Expand Down Expand Up @@ -444,22 +451,11 @@ private function _setupRoutes()

}

if ( !file_exists( base_path('routes') . '/web/public/web.php' ) ) {
require __DIR__ . '/routes/web/public/web.php';


// PAY ATTENTION!
// IF YOU OVERRIDE ONE OF THE DEFAULT FACTOTUM ROUTES, YOU SHOULD ALSO OVERRIDE THE MAIN public/web.php ROUTE FILE
if ( !file_exists( base_path('routes') . '/web.php' ) ) {
// Public routes
Route::group([
'middleware' => [
'web'
],
'namespace' => 'Kaleidoscope\Factotum\Http\Controllers\Web'
], function ($router) {
require __DIR__ . '/routes/web/public/web.php';
});
$overridingRoutes = true;
}

}


Expand Down
7 changes: 4 additions & 3 deletions src/app/Console/Commands/FactotumInstallation.php
Expand Up @@ -28,8 +28,7 @@ public function __construct()
$this->installEcommerce = false;
$this->installNewsletter = false;
$this->reInstall = false;
$this->migrationPath = 'vendor/kaleidoscope/' . ( env('APP_ENV') == 'local' ? 'dev-' : '')
. 'factotum/database/migrations';
$this->migrationPath = 'vendor/kaleidoscope/factotum/database/migrations';
}


Expand Down Expand Up @@ -110,7 +109,9 @@ private function _installPassport()
private function _dbSeeding()
{
$this->info('Seeding running...');
$this->call('db:seed');
$this->call('db:seed', [
'--class' => 'Kaleidoscope\Factotum\Seeds\DatabaseSeeder'
]);
$this->info('Seeding done.');

if ( $this->installEcommerce ) {
Expand Down
2 changes: 1 addition & 1 deletion src/app/Helpers/PrintMenuHelper.php
Expand Up @@ -42,7 +42,7 @@ private static function print_menu_items( $menu, $level = 0 )

} else {
$active = false;
$currUrl = trim( Request::url(), '/' );
$currUrl = trim( request()->url(), '/' );
$checkUrl = trim( $item->abs_url, '/' );
if ( $currUrl == $checkUrl || ( strstr( $currUrl, $checkUrl) && $checkUrl != url('')) ) {
$active = true;
Expand Down
Expand Up @@ -2,12 +2,12 @@

namespace Kaleidoscope\Factotum\Http\Controllers\Api\NewsletterSubscription;

use Kaleidoscope\Factotum\Http\Controllers\Api\Controller;
use Kaleidoscope\Factotum\Http\Controllers\Api\ApiBaseController;
use Kaleidoscope\Factotum\Http\Requests\StoreNewsletterSubscription;
use Kaleidoscope\Factotum\NewsletterSubscription;
use Kaleidoscope\Factotum\Models\NewsletterSubscription;


class CreateController extends Controller
class CreateController extends ApiBaseController
{

public function create( StoreNewsletterSubscription $request )
Expand Down
Expand Up @@ -4,11 +4,11 @@

use Illuminate\Http\Request;

use Kaleidoscope\Factotum\Http\Controllers\Api\Controller;
use Kaleidoscope\Factotum\Http\Controllers\Api\ApiBaseController;
use Kaleidoscope\Factotum\Models\NewsletterSubscription;

use Kaleidoscope\Factotum\NewsletterSubscription;

class DeleteController extends Controller
class DeleteController extends ApiBaseController
{

public function remove(Request $request, $id)
Expand Down
Expand Up @@ -4,12 +4,12 @@

use Illuminate\Http\Request;

use Kaleidoscope\Factotum\Http\Controllers\Api\Controller;
use Kaleidoscope\Factotum\Http\Controllers\Api\ApiBaseController;

use Kaleidoscope\Factotum\NewsletterSubscription;
use Kaleidoscope\Factotum\Models\NewsletterSubscription;


class ReadController extends Controller
class ReadController extends ApiBaseController
{

public function getListPaginated( Request $request )
Expand Down
Expand Up @@ -2,12 +2,13 @@

namespace Kaleidoscope\Factotum\Http\Controllers\Api\NewsletterSubscription;

use Kaleidoscope\Factotum\Http\Controllers\Api\Controller;
use Kaleidoscope\Factotum\Http\Controllers\Api\ApiBaseController;
use Kaleidoscope\Factotum\Http\Requests\StoreNewsletterSubscription;
use Kaleidoscope\Factotum\NewsletterSubscription;

use Kaleidoscope\Factotum\Models\NewsletterSubscription;

class UpdateController extends Controller

class UpdateController extends ApiBaseController
{

public function update( StoreNewsletterSubscription $request, $id )
Expand Down
37 changes: 34 additions & 3 deletions src/app/Http/Controllers/Web/Auth/AuthController.php
Expand Up @@ -17,7 +17,9 @@

class AuthController extends Controller
{
protected $redirectTo = '/auth/login';
protected $redirectTo = '/auth/login';
protected $redirectToEmailNotVerified = '/auth/email-not-verified';
protected $successRedirectTo = '/?login=ok';

use AuthenticatesUsers;

Expand All @@ -28,6 +30,7 @@ public function redirectTo()
return '/auth/login';
}


public function showLoginForm( Request $request )
{
if ( $request->input('abandonedCart') ) {
Expand All @@ -49,6 +52,24 @@ public function showLoginForm( Request $request )
}


public function showEmailNotVerified( Request $request )
{

$view = 'factotum::auth.email-not-verified';
if ( file_exists( resource_path('views/auth/email-not-verified.blade.php') ) ) {
$view = 'auth.email-not-verified';
}

return view($view)
->with([
'metatags' => [
'title' => Lang::get('factotum::auth.email_not_verified_title'),
'description' => Lang::get('factotum::auth.email_not_verified_description')
]
]);
}


protected function sendFailedLoginResponse(Request $request)
{
$exception = ValidationException::withMessages([
Expand All @@ -73,16 +94,26 @@ protected function sendLoginResponse(Request $request)

return $request->wantsJson()
? new JsonResponse([], 204)
: redirect()->intended( '/?login=ok' );
: redirect()->intended( $this->successRedirectTo );
}


protected function authenticated(Request $request, $user)
{
$user = Auth::user();

if ( !$user->email_verified_at ) {
Auth::logout();
return $request->wantsJson() ? new JsonResponse([], 401) : redirect( $this->redirectToEmailNotVerified );
}

if ( !$user->isProfileComplete() ) {
$this->successRedirectTo = '/user/profile?complete_profile=1';
}

if ( env('FACTOTUM_ECOMMERCE_INSTALLED') ) {

if ( $request->session()->get('force_extend_cart') ) {
$user = Auth::user();
$cart = Cart::where( 'customer_id', $user->id )->orderBy('id', 'DESC')->first();
$cart->expires_at = date('Y-m-d H:i:s', time() + 120 );
$cart->save();
Expand Down
27 changes: 27 additions & 0 deletions src/app/Http/Controllers/Web/Auth/ResetPasswordController.php
Expand Up @@ -5,6 +5,8 @@
use Illuminate\Support\Facades\Lang;
use Illuminate\Http\Request;
use Illuminate\Foundation\Auth\ResetsPasswords;
use Illuminate\Auth\Events\PasswordReset;
use Illuminate\Support\Str;

use Kaleidoscope\Factotum\Http\Controllers\Web\Controller;

Expand Down Expand Up @@ -32,4 +34,29 @@ public function showResetForm(Request $request, $token = null)
]
]);
}

/**
* Reset the given user's password.
*
* @param \Illuminate\Contracts\Auth\CanResetPassword $user
* @param string $password
* @return void
*/
protected function resetPassword($user, $password)
{
$this->setUserPassword($user, $password);

$user->setRememberToken(Str::random(60));
$user->email_verified_at = date('Y-m-d H:i:s');
$user->save();

event(new PasswordReset($user));

if ( !$user->isProfileComplete() ) {
$this->redirectTo = '/user/profile';
}

$this->guard()->login($user);
}

}

0 comments on commit 618beee

Please sign in to comment.