Skip to content

Commit 63216c2

Browse files
authored
Merge pull request #37 from Kovah/dev
v0.0.8
2 parents d4a4aa3 + e9ca3d7 commit 63216c2

30 files changed

+171
-235
lines changed

.env.docker

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,6 @@ APP_KEY=
1212
# Enable the debug more if you are running into issues or while developing
1313
APP_DEBUG=true
1414

15-
## LinkAce settings
16-
# The page title configures the content of the <title></title> element
17-
PAGE_TITLE=''
18-
# If set to true, guests can access your public bookmarks and notes
19-
GUEST_ACCESS=false
20-
2115
## Configuration of the database connection
2216
# Set the database driver (mysql, )
2317
DB_CONNECTION=mysql

.env.example

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,6 @@ APP_KEY=
1212
# Enable the debug more if you are running into issues or while developing
1313
APP_DEBUG=true
1414

15-
## LinkAce settings
16-
# The page title configures the content of the <title></title> element
17-
PAGE_TITLE=''
18-
# If set to true, guests can access your public bookmarks and notes
19-
GUEST_ACCESS=false
20-
2115
## Configuration of the database connection
2216
# Set the database driver (mysql, )
2317
DB_CONNECTION=mysql

app/Console/RegisterUserCommand.php

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,6 @@ class RegisterUserCommand extends Command
3030
*/
3131
protected $description = 'Register a new user';
3232

33-
private $user_roles = [
34-
'admin',
35-
'user',
36-
];
37-
3833
/**
3934
* RegisterUser constructor.
4035
*/
@@ -69,16 +64,12 @@ public function handle()
6964

7065
$password = $this->secret('Please enter a password for ' . $name);
7166

72-
$role = $this->choice('Please choose the user role:', $this->user_roles, 'user');
73-
7467
$new_user = User::create([
7568
'name' => $name,
7669
'email' => $email,
7770
'password' => Hash::make($password),
7871
]);
7972

80-
$new_user->assignRole($role);
81-
8273
$this->info('User ' . $name . ' registered.');
8374
return;
8475
}

app/Http/Controllers/App/SystemSettingsController.php

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,37 @@ class SystemSettingsController extends Controller
1919
*/
2020
public function getSystemSettings()
2121
{
22-
if (!auth()->user()->hasRole('admin')) {
23-
abort(403);
24-
}
25-
2622
return view('actions.settings.system');
2723
}
2824

2925
/**
26+
* Syve the new system settings to the database
27+
*
3028
* @param Request $request
29+
* @return \Illuminate\Http\RedirectResponse
3130
*/
3231
public function saveSystemSettings(Request $request)
3332
{
34-
//
33+
$request->validate([
34+
'system_guest_access' => 'numeric',
35+
]);
36+
37+
$settings = $request->except(['_token']);
38+
39+
foreach ($settings as $key => $value) {
40+
Setting::updateOrCreate([
41+
'key' => $key,
42+
'user_id' => null,
43+
], [
44+
'key' => $key,
45+
'value' => $value,
46+
'user_id' => null,
47+
]);
48+
}
49+
50+
alert(trans('settings.settings_saved'));
51+
52+
return redirect()->back();
3553
}
3654

3755
/**
@@ -42,10 +60,6 @@ public function saveSystemSettings(Request $request)
4260
*/
4361
public function generateCronToken(Request $request)
4462
{
45-
if (!auth()->user()->hasRole('admin')) {
46-
abort(403);
47-
}
48-
4963
$new_token = Str::random(32);
5064

5165
Setting::updateOrCreate(

app/Http/Controllers/FrontController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class FrontController extends Controller
1717
public function index()
1818
{
1919
if (!auth()->check()) {
20-
if (env('GUEST_ACCESS', false)) {
20+
if (systemsettings('system_guest_access')) {
2121
return redirect()->route('guest.links.index');
2222
}
2323

app/Http/Controllers/Guest/CategoryController.php

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,32 +8,6 @@
88

99
class CategoryController extends Controller
1010
{
11-
/**
12-
* Display a listing of the resource.
13-
*
14-
* @param Request $request
15-
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
16-
*/
17-
public function index(Request $request)
18-
{
19-
$categories = Category::parentOnly();
20-
21-
if ($request->has('orderBy') && $request->has('orderDir')) {
22-
$categories->orderBy($request->get('orderBy'), $request->get('orderDir'));
23-
} else {
24-
$categories->orderBy('name', 'ASC');
25-
}
26-
27-
$categories = $categories->paginate(getPaginationLimit());
28-
29-
return view('guest.categories.index', [
30-
'categories' => $categories,
31-
'route' => $request->fullUrl(),
32-
'order_by' => $request->get('orderBy'),
33-
'order_dir' => $request->get('orderDir'),
34-
]);
35-
}
36-
3711
/**
3812
* Display the specified resource.
3913
*

app/Http/Controllers/Guest/TagController.php

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,30 +8,6 @@
88

99
class TagController extends Controller
1010
{
11-
/**
12-
* Display a listing of the resource.
13-
*
14-
* @param Request $request
15-
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
16-
*/
17-
public function index(Request $request)
18-
{
19-
if ($request->has('orderBy') && $request->has('orderDir')) {
20-
$tags = Tag::orderBy($request->get('orderBy'), $request->get('orderDir'));
21-
} else {
22-
$tags = Tag::orderBy('name', 'ASC');
23-
}
24-
25-
$tags = $tags->paginate(getPaginationLimit());
26-
27-
return view('guest.tags.index', [
28-
'tags' => $tags,
29-
'route' => $request->fullUrl(),
30-
'order_by' => $request->get('orderBy'),
31-
'order_dir' => $request->get('orderDir'),
32-
]);
33-
}
34-
3511
/**
3612
* Display the specified resource.
3713
*

app/Http/Kernel.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ class Kernel extends HttpKernel
5858
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
5959
'can' => \Illuminate\Auth\Middleware\Authorize::class,
6060
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
61+
'guestaccess' => \App\Http\Middleware\GuestAccess::class,
6162
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
6263
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
6364
];
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
namespace App\Http\Middleware;
4+
5+
use Closure;
6+
7+
class GuestAccess
8+
{
9+
/**
10+
* Handle an incoming request.
11+
*
12+
* @param \Illuminate\Http\Request $request
13+
* @param \Closure $next
14+
* @return mixed
15+
*/
16+
public function handle($request, Closure $next)
17+
{
18+
// Check for logged in users
19+
if (auth()->check()) {
20+
return redirect()->route('dashboard');
21+
}
22+
23+
// Check if guest access is enabled
24+
if (systemsettings('system_guest_access') === '1') {
25+
return $next($request);
26+
}
27+
28+
return redirect()->route('login');
29+
}
30+
}

app/Models/User.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
use Illuminate\Foundation\Auth\User as Authenticatable;
66
use Illuminate\Notifications\Notifiable;
7-
use Spatie\Permission\Traits\HasRoles;
87

98
/**
109
* Class User
@@ -21,7 +20,6 @@
2120
class User extends Authenticatable
2221
{
2322
use Notifiable;
24-
use HasRoles;
2523

2624
/**
2725
* The attributes that are mass assignable.

0 commit comments

Comments
 (0)