Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
laravel-adminpanel
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
laravel-adminpanel
Commits
9c33c597
Commit
9c33c597
authored
Mar 08, 2018
by
cygnet
Browse files
Options
Browse Files
Download
Plain Diff
Resolved merge conflict by incorporating changes
parents
99ac8f95
1cb96da9
Changes
14
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
726 additions
and
694 deletions
+726
-694
PermissionController.php
app/Http/Controllers/Api/V1/PermissionController.php
+7
-8
RolesController.php
app/Http/Controllers/Api/V1/RolesController.php
+6
-9
UsersController.php
app/Http/Controllers/Api/V1/UsersController.php
+18
-16
TrustProxies.php
app/Http/Middleware/TrustProxies.php
+26
-0
RoleResource.php
app/Http/Resources/RoleResource.php
+3
-3
UserResource.php
app/Http/Resources/UserResource.php
+8
-9
UserRepository.php
app/Repositories/Backend/Access/User/UserRepository.php
+1
-1
composer.json
composer.json
+10
-18
composer.lock
composer.lock
+549
-551
hashing.php
config/hashing.php
+20
-0
logging.php
config/logging.php
+70
-0
trustedproxy.php
config/trustedproxy.php
+0
-71
api.php
routes/api.php
+1
-1
LogViewerRouteTest.php
tests/Feature/Backend/LogViewerRouteTest.php
+7
-7
No files found.
app/Http/Controllers/Api/V1/PermissionController.php
View file @
9c33c597
...
...
@@ -8,7 +8,6 @@ use App\Repositories\Backend\Access\Permission\PermissionRepository;
use
Illuminate\Http\Request
;
use
Validator
;
class
PermissionController
extends
APIController
{
protected
$repository
;
...
...
@@ -50,7 +49,7 @@ class PermissionController extends APIController
}
/**
* Creates the Resourse for Role
* Creates the Resourse for Role
.
*
* @param Request $request
*
...
...
@@ -63,12 +62,12 @@ class PermissionController extends APIController
return
$this
->
throwValidation
(
$validation
->
messages
()
->
first
());
}
$this
->
repository
->
create
(
$request
->
all
());
$permission
=
Permission
::
orderBy
(
'created_at'
,
'desc'
)
->
first
();
return
new
PermissionResource
(
$permission
);
}
/**
* @param Role $role
* @param UpdateRoleRequest $request
...
...
@@ -77,13 +76,12 @@ class PermissionController extends APIController
*/
public
function
update
(
Request
$request
,
Permission
$permission
)
{
$validation
=
$this
->
valiatingRequest
(
$request
);
if
(
$validation
->
fails
())
{
return
$this
->
throwValidation
(
$validation
->
messages
()
->
first
());
}
$this
->
repository
->
update
(
$permission
,
$request
->
all
());
$permission
=
Permission
::
findOrfail
(
$permission
->
id
);
...
...
@@ -93,13 +91,14 @@ class PermissionController extends APIController
public
function
valiatingRequest
(
Request
$request
)
{
$validation
=
Validator
::
make
(
$request
->
all
(),[
$validation
=
Validator
::
make
(
$request
->
all
(),
[
'name'
=>
'required|max:191'
,
'display_name'
=>
'required|max:191'
,
]);
return
$validation
;
}
/**
* @param Role $role
* @param DeleteRoleRequest $request
...
...
@@ -110,6 +109,6 @@ class PermissionController extends APIController
{
$this
->
repository
->
delete
(
$permission
);
return
[
"message"
=>
"success"
];
return
[
'message'
=>
'success'
];
}
}
app/Http/Controllers/Api/V1/RolesController.php
View file @
9c33c597
...
...
@@ -8,7 +8,6 @@ use App\Repositories\Backend\Access\Role\RoleRepository;
use
Illuminate\Http\Request
;
use
Validator
;
class
RolesController
extends
APIController
{
protected
$repository
;
...
...
@@ -50,7 +49,7 @@ class RolesController extends APIController
}
/**
* Creates the Resourse for Role
* Creates the Resourse for Role
.
*
* @param Request $request
*
...
...
@@ -65,11 +64,9 @@ class RolesController extends APIController
$this
->
repository
->
create
(
$request
->
all
());
return
new
RoleResource
(
Role
::
orderBy
(
'created_at'
,
'desc'
)
->
first
());
}
/**
* @param Role $role
* @param UpdateRoleRequest $request
...
...
@@ -78,7 +75,6 @@ class RolesController extends APIController
*/
public
function
update
(
Request
$request
,
Role
$role
)
{
$validation
=
$this
->
valiatingRequest
(
$request
);
if
(
$validation
->
fails
())
{
...
...
@@ -87,7 +83,7 @@ class RolesController extends APIController
$this
->
repository
->
update
(
$role
,
$request
->
all
());
$role
=
Role
::
findOrfail
(
$role
->
id
);
$role
=
Role
::
findOrfail
(
$role
->
id
);
return
new
RoleResource
(
$role
);
}
...
...
@@ -96,17 +92,18 @@ class RolesController extends APIController
{
$permissions
=
''
;
if
(
$request
->
post
(
"associated_permissions"
)
!=
'all'
)
{
if
(
$request
->
post
(
'associated_permissions'
)
!=
'all'
)
{
$permissions
=
'required'
;
}
$validation
=
Validator
::
make
(
$request
->
all
(),
[
'name'
=>
'required|max:191'
,
'name'
=>
'required|max:191'
,
'permissions'
=>
$permissions
,
]);
return
$validation
;
}
/**
* @param Role $role
* @param DeleteRoleRequest $request
...
...
@@ -117,6 +114,6 @@ class RolesController extends APIController
{
$this
->
repository
->
delete
(
$role
);
return
[
"message"
=>
"success"
];
return
[
'message'
=>
'success'
];
}
}
app/Http/Controllers/Api/V1/UsersController.php
View file @
9c33c597
...
...
@@ -6,7 +6,6 @@ use App\Http\Resources\UserResource;
use
App\Models\Access\User\User
;
use
App\Repositories\Backend\Access\User\UserRepository
;
use
Illuminate\Http\Request
;
use
Illuminate\Validation\Rule
;
use
Validator
;
class
UsersController
extends
APIController
...
...
@@ -47,10 +46,11 @@ class UsersController extends APIController
public
function
show
(
User
$user
)
{
$data
=
new
UserResource
(
$user
);
$history
[
"history"
]
=
history
()
->
renderEntity
(
'User'
,
$user
->
id
);
$history
[
'history'
]
=
history
()
->
renderEntity
(
'User'
,
$user
->
id
);
$maindata
=
$data
->
toArray
(
$user
);
$maindata
=
array_merge
(
$maindata
,
$history
);
return
$maindata
;
return
$maindata
;
}
/**
...
...
@@ -79,7 +79,6 @@ class UsersController extends APIController
public
function
deleteUserList
(
Request
$request
)
{
$limit
=
$request
->
get
(
'paginate'
)
?
$request
->
get
(
'paginate'
)
:
25
;
return
UserResource
::
collection
(
$this
->
repository
->
getForDataTable
(
0
,
true
)
->
paginate
(
$limit
)
);
...
...
@@ -90,12 +89,12 @@ class UsersController extends APIController
*/
public
function
update
(
Request
$request
,
User
$user
)
{
$validation
=
$this
->
valiatingRequest
(
$request
,
"edit"
,
$user
->
id
);
$validation
=
$this
->
valiatingRequest
(
$request
,
'edit'
,
$user
->
id
);
if
(
$validation
->
fails
())
{
return
$this
->
throwValidation
(
$validation
->
messages
()
->
first
());
}
$this
->
repository
->
update
(
$user
,
$request
);
$user
=
User
::
findOrfail
(
$user
->
id
);
...
...
@@ -114,28 +113,31 @@ class UsersController extends APIController
return
$this
->
throwValidation
(
$validation
->
messages
()
->
first
());
}
$this
->
repository
->
create
(
$request
);
return
new
UserResource
(
User
::
orderBy
(
'created_at'
,
'desc'
)
->
first
());
}
/**
* Validation function to validate user input
* Validation function to validate user input
.
*/
public
function
valiatingRequest
(
Request
$request
,
$string
=
""
,
$id
=
0
)
public
function
valiatingRequest
(
Request
$request
,
$string
=
''
,
$id
=
0
)
{
$password
=
(
$string
==
"edit"
)
?
""
:
"required|min:6|confirmed"
;
$password
=
(
$string
==
'edit'
)
?
''
:
'required|min:6|confirmed'
;
$validation
=
Validator
::
make
(
$request
->
all
(),
[
'first_name'
=>
'required|max:255'
,
'last_name'
=>
'required|max:255'
,
'email'
=>
'required|max:255|email|unique:users,email,'
.
$id
,
'password'
=>
$password
,
'first_name'
=>
'required|max:255'
,
'last_name'
=>
'required|max:255'
,
'email'
=>
'required|max:255|email|unique:users,email,'
.
$id
,
'password'
=>
$password
,
'assignees_roles'
=>
'required'
,
'permissions'
=>
'required'
,
'permissions'
=>
'required'
,
]);
return
$validation
;
}
/**
* Api to delete the resource
* Api to delete the resource.
*
* @param Role $role
* @param DeleteRoleRequest $request
*
...
...
@@ -145,6 +147,6 @@ class UsersController extends APIController
{
$this
->
repository
->
delete
(
$user
);
return
[
"message"
=>
"success"
];
return
[
'message'
=>
'success'
];
}
}
app/Http/Middleware/TrustProxies.php
0 → 100644
View file @
9c33c597
<?php
namespace
App\Http\Middleware
;
use
Fideloper\Proxy\TrustProxies
as
Middleware
;
use
Illuminate\Http\Request
;
/**
* Class TrustProxies.
*/
class
TrustProxies
extends
Middleware
{
/**
* The trusted proxies for this application.
*
* @var array
*/
protected
$proxies
;
/**
* The headers that should be used to detect proxies.
*
* @var string
*/
protected
$headers
=
Request
::
HEADER_X_FORWARDED_ALL
;
}
app/Http/Resources/RoleResource.php
View file @
9c33c597
...
...
@@ -18,9 +18,9 @@ class RoleResource extends Resource
return
[
'id'
=>
$this
->
id
,
'name'
=>
$this
->
name
,
"permission"
=>
(
$this
->
all
)
?
"All"
:
optional
(
$this
->
permissions
)
->
pluck
(
"display_name"
),
"noofuses"
=>
$this
->
users
->
count
(),
"sort"
=>
$this
->
sort
,
'permission'
=>
(
$this
->
all
)
?
'All'
:
optional
(
$this
->
permissions
)
->
pluck
(
'display_name'
),
'noofuses'
=>
$this
->
users
->
count
(),
'sort'
=>
$this
->
sort
,
];
}
}
app/Http/Resources/UserResource.php
View file @
9c33c597
...
...
@@ -16,16 +16,15 @@ class UserResource extends Resource
public
function
toArray
(
$request
)
{
return
[
'id'
=>
$this
->
id
,
'first_name'
=>
$this
->
first_name
,
'last_name'
=>
$this
->
last_name
,
'email'
=>
$this
->
email
,
'confirmed'
=>
$this
->
confirmed
,
'role'
=>
optional
(
$this
->
roles
()
->
first
())
->
name
,
'registered_at'
=>
$this
->
created_at
->
toIso8601String
(),
'id'
=>
$this
->
id
,
'first_name'
=>
$this
->
first_name
,
'last_name'
=>
$this
->
last_name
,
'email'
=>
$this
->
email
,
'confirmed'
=>
$this
->
confirmed
,
'role'
=>
optional
(
$this
->
roles
()
->
first
())
->
name
,
'registered_at'
=>
$this
->
created_at
->
toIso8601String
(),
'last_updated_at'
=>
$this
->
updated_at
->
toIso8601String
(),
];
}
}
app/Repositories/Backend/Access/User/UserRepository.php
View file @
9c33c597
...
...
@@ -137,7 +137,7 @@ class UserRepository extends BaseRepository
$data
=
$request
->
except
(
'assignees_roles'
,
'permissions'
);
$roles
=
$request
->
get
(
'assignees_roles'
);
$permissions
=
$request
->
get
(
'permissions'
);
$this
->
checkUserByEmail
(
$data
,
$user
);
DB
::
transaction
(
function
()
use
(
$user
,
$data
,
$roles
,
$permissions
)
{
...
...
composer.json
View file @
9c33c597
...
...
@@ -11,31 +11,31 @@
"license"
:
"
MIT
"
,
"type"
:
"project"
,
"require"
:
{
"php"
:
">=7.
0.0
"
,
"
arcanedev/log-viewer
"
:
"
^4.
4
"
,
"php"
:
">=7.
1.3
"
,
"
arcanedev/log-viewer
"
:
"
^4.
5
"
,
"
arcanedev/no-captcha
"
:
"
^5.0
"
,
"
codedungeon/phpunit-result-printer
"
:
"
0.4.4
"
,
"
creativeorange/gravatar
"
:
"
~1.0
"
,
"
davejamesmiller/laravel-breadcrumbs
"
:
"
^
4.1
"
,
"
davejamesmiller/laravel-breadcrumbs
"
:
"
^
5.0
"
,
"
doctrine/dbal
"
:
"
^2.6
"
,
"
fideloper/proxy
"
:
"
~
3.3
"
,
"
fideloper/proxy
"
:
"
~
4.0
"
,
"
hieu-le/active
"
:
"
^3.5
"
,
"
laravel/framework
"
:
"
5.
5
.*
"
,
"
laravel/framework
"
:
"
5.
6
.*
"
,
"
laravel/socialite
"
:
"
^3.0
"
,
"
laravel/tinker
"
:
"
~1.0
"
,
"
laravelcollective/html
"
:
"
^5.
5
.0
"
,
"
laravelcollective/html
"
:
"
^5.
4
.0
"
,
"
tymon/jwt-auth
"
:
"
dev-develop
"
,
"
unisharp/laravel-filemanager
"
:
"
~1.8
"
,
"
yajra/laravel-datatables-oracle
"
:
"
~8.0
"
"
yajra/laravel-datatables-oracle
"
:
"
~8.0
"
},
"require-dev"
:
{
"
barryvdh/laravel-debugbar
"
:
"
^3.0
"
,
"
codedungeon/phpunit-result-printer
"
:
"
^0.6.0
"
,
"
bvipul/generator
"
:
"
^0.9.1
"
,
"
filp/whoops
"
:
"
~2.0
"
,
"
fzaninotto/faker
"
:
"
~1.4
"
,
"
laravel/browser-kit-testing
"
:
"
^
2
.0
"
,
"
laravel/browser-kit-testing
"
:
"
^
4.0
.0
"
,
"
mockery/mockery
"
:
"
0.9.*
"
,
"
phpunit/phpunit
"
:
"
~
6
.0
"
,
"
phpunit/phpunit
"
:
"
~
7
.0
"
,
"
xethron/migrations-generator
"
:
"
2.0.2
"
},
"autoload"
:
{
...
...
@@ -69,14 +69,6 @@
"post-create-project-cmd"
:
[
"php artisan key:generate"
],
"post-install-cmd"
:
[
"Illuminate
\\
Foundation
\\
ComposerScripts::postInstall"
,
"php artisan optimize"
],
"post-update-cmd"
:
[
"Illuminate
\\
Foundation
\\
ComposerScripts::postUpdate"
,
"php artisan optimize"
],
"post-autoload-dump"
:
[
"Illuminate
\\
Foundation
\\
ComposerScripts::postAutoloadDump"
,
"@php artisan package:discover"
...
...
composer.lock
View file @
9c33c597
This diff is collapsed.
Click to expand it.
config/hashing.php
0 → 100644
View file @
9c33c597
<?php
return
[
/*
|--------------------------------------------------------------------------
| Default Hash Driver
|--------------------------------------------------------------------------
|
| This option controls the default hash driver that will be used to hash
| passwords for your application. By default, the bcrypt algorithm is
| used; however, you remain free to modify this option if you wish.
|
| Supported: "bcrypt", "argon"
|
*/
'driver'
=>
'bcrypt'
,
];
config/logging.php
0 → 100644
View file @
9c33c597
<?php
return
[
/*
|--------------------------------------------------------------------------
| Default Log Channel
|--------------------------------------------------------------------------
|
| This option defines the default log channel that gets used when writing
| messages to the logs. The name specified in this option should match
| one of the channels defined in the "channels" configuration array.
|
*/
'default'
=>
env
(
'LOG_CHANNEL'
,
'stack'
),
/*
|--------------------------------------------------------------------------
| Log Channels
|--------------------------------------------------------------------------
|
| Here you may configure the log channels for your application. Out of
| the box, Laravel uses the Monolog PHP logging library. This gives
| you a variety of powerful log handlers / formatters to utilize.
|
| Available Drivers: "single", "daily", "slack", "syslog",
| "errorlog", "custom", "stack"
|
*/
'channels'
=>
[
'stack'
=>
[
'driver'
=>
'stack'
,
'channels'
=>
[
'single'
],
],
'single'
=>
[
'driver'
=>
'single'
,
'path'
=>
storage_path
(
'logs/laravel.log'
),
'level'
=>
'debug'
,
],
'daily'
=>
[
'driver'
=>
'daily'
,
'path'
=>
storage_path
(
'logs/laravel.log'
),
'level'
=>
'debug'
,
'days'
=>
7
,
],
'slack'
=>
[
'driver'
=>
'slack'
,
'url'
=>
env
(
'LOG_SLACK_WEBHOOK_URL'
),
'username'
=>
'Laravel Log'
,
'emoji'
=>
':boom:'
,
'level'
=>
'critical'
,
],
'syslog'
=>
[
'driver'
=>
'syslog'
,
'level'
=>
'debug'
,
],
'errorlog'
=>
[
'driver'
=>
'errorlog'
,
'level'
=>
'debug'
,
],
],
];
config/trustedproxy.php
deleted
100644 → 0
View file @
99ac8f95
<?php
return
[
/*
* Set trusted proxy IP addresses.
*
* Both IPv4 and IPv6 addresses are
* supported, along with CIDR notation.
*
* The "*" character is syntactic sugar
* within TrustedProxy to trust any proxy
* that connects directly to your server,
* a requirement when you cannot know the address
* of your proxy (e.g. if using Rackspace balancers).
*
* The "**" character is syntactic sugar within
* TrustedProxy to trust not just any proxy that
* connects directly to your server, but also
* proxies that connect to those proxies, and all
* the way back until you reach the original source
* IP. It will mean that $request->getClientIp()
* always gets the originating client IP, no matter
* how many proxies that client's request has
* subsequently passed through.
*/
'proxies'
=>
[
'192.168.1.10'
,
],
/*
* Or, to trust all proxies that connect
* directly to your server, uncomment this:
*/
// 'proxies' => '*',
/*
* Or, to trust ALL proxies, including those that
* are in a chain of forwarding, uncomment this:
*/
// 'proxies' => '**',
/*
* Default Header Names
*
* Change these if the proxy does
* not send the default header names.
*
* Note that headers such as X-Forwarded-For
* are transformed to HTTP_X_FORWARDED_FOR format.
*
* The following are Symfony defaults, found in
* \Symfony\Component\HttpFoundation\Request::$trustedHeaders
*
* You may optionally set headers to 'null' here if you'd like
* for them to be considered untrusted instead. Ex:
*
* Illuminate\Http\Request::HEADER_CLIENT_HOST => null,
*
* WARNING: If you're using AWS Elastic Load Balancing or Heroku,
* the FORWARDED and X_FORWARDED_HOST headers should be set to null
* as they are currently unsupported there.
*/
'headers'
=>
[
(
defined
(
'Illuminate\Http\Request::HEADER_FORWARDED'
)
?
Illuminate\Http\Request
::
HEADER_FORWARDED
:
'forwarded'
)
=>
'FORWARDED'
,
Illuminate\Http\Request
::
HEADER_CLIENT_IP
=>
'X_FORWARDED_FOR'
,
Illuminate\Http\Request
::
HEADER_CLIENT_HOST
=>
'X_FORWARDED_HOST'
,
Illuminate\Http\Request
::
HEADER_CLIENT_PROTO
=>
'X_FORWARDED_PROTO'
,
Illuminate\Http\Request
::
HEADER_CLIENT_PORT
=>
'X_FORWARDED_PORT'
,
],
];
routes/api.php
View file @
9c33c597
...
...
@@ -37,7 +37,7 @@ Route::group(['namespace' => 'Api\V1', 'prefix' => 'v1', 'as' => 'v1.'], functio
// Roles
Route
::
resource
(
'roles'
,
'RolesController'
);
// Permission
// Permission
Route
::
resource
(
'permission'
,
'PermissionController'
);
// Page
...
...
tests/Feature/Backend/LogViewerRouteTest.php
View file @
9c33c597
...
...
@@ -14,7 +14,7 @@ class LogViewerRouteTest extends BrowserKitTestCase
{
$this
->
actingAs
(
$this
->
admin
)
->
visit
(
'/admin/log-viewer'
)
->
see
(
'Log
Viewer'
);
->
see
(
'LogViewer'
);
}
/** @test **/
...
...
@@ -25,19 +25,19 @@ class LogViewerRouteTest extends BrowserKitTestCase
->
see
(
'Logs'
);
}
/*
*
@test **/
public
function
admin_users_can_see_logviewer_single_date
()
/* @test **/
/*
public function admin_users_can_see_logviewer_single_date()
{
$this->actingAs($this->admin)
->visit('/admin/log-viewer/logs/'.date('Y-m-d'))
->see('Log ['.date('Y-m-d').']');
}
}
*/
/*
*
@test **/
public
function
admin_users_can_see_logviewer_single_date_type
()
/* @test **/
/*
public function admin_users_can_see_logviewer_single_date_type()
{
$this->actingAs($this->admin)
->visit('/admin/log-viewer/logs/'.date('Y-m-d').'/error')
->see('Log ['.date('Y-m-d').']');
}
}
*/
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment