Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Зуев Егор
/
wiki.dev
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Authored by
Dan Brown
2017-01-01 17:33:06 +0000
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Commit
bab27462aba7ec4370ce906913b663a13a289110
bab27462
1 parent
24127822
Fixed issue where default user was over-fetched
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
7 additions
and
10 deletions
app/Http/Middleware/Authenticate.php
app/Services/ViewService.php
app/Http/Middleware/Authenticate.php
View file @
bab2746
...
...
@@ -4,8 +4,6 @@ namespace BookStack\Http\Middleware;
use
Closure
;
use
Illuminate\Contracts\Auth\Guard
;
use
BookStack\Exceptions\UserRegistrationException
;
use
Setting
;
class
Authenticate
{
...
...
app/Services/ViewService.php
View file @
bab2746
...
...
@@ -5,9 +5,7 @@ use BookStack\View;
class
ViewService
{
protected
$view
;
protected
$user
;
protected
$permissionService
;
/**
...
...
@@ -18,7 +16,6 @@ class ViewService
public
function
__construct
(
View
$view
,
PermissionService
$permissionService
)
{
$this
->
view
=
$view
;
$this
->
user
=
user
();
$this
->
permissionService
=
$permissionService
;
}
...
...
@@ -29,8 +26,9 @@ class ViewService
*/
public
function
add
(
Entity
$entity
)
{
if
(
$this
->
user
===
null
)
return
0
;
$view
=
$entity
->
views
()
->
where
(
'user_id'
,
'='
,
$this
->
user
->
id
)
->
first
();
$user
=
user
();
if
(
$user
===
null
||
$user
->
isDefault
())
return
0
;
$view
=
$entity
->
views
()
->
where
(
'user_id'
,
'='
,
$user
->
id
)
->
first
();
// Add view if model exists
if
(
$view
)
{
$view
->
increment
(
'views'
);
...
...
@@ -39,7 +37,7 @@ class ViewService
// Otherwise create new view count
$entity
->
views
()
->
save
(
$this
->
view
->
create
([
'user_id'
=>
$this
->
user
->
id
,
'user_id'
=>
user
()
->
id
,
'views'
=>
1
]));
...
...
@@ -78,13 +76,14 @@ class ViewService
*/
public
function
getUserRecentlyViewed
(
$count
=
10
,
$page
=
0
,
$filterModel
=
false
)
{
if
(
$this
->
user
===
null
)
return
collect
();
$user
=
user
();
if
(
$user
===
null
||
$user
->
isDefault
())
return
collect
();
$query
=
$this
->
permissionService
->
filterRestrictedEntityRelations
(
$this
->
view
,
'views'
,
'viewable_id'
,
'viewable_type'
);
if
(
$filterModel
)
$query
=
$query
->
where
(
'viewable_type'
,
'='
,
get_class
(
$filterModel
));
$query
=
$query
->
where
(
'user_id'
,
'='
,
user
()
->
id
);
$query
=
$query
->
where
(
'user_id'
,
'='
,
$user
->
id
);
$viewables
=
$query
->
with
(
'viewable'
)
->
orderBy
(
'updated_at'
,
'desc'
)
->
skip
(
$count
*
$page
)
->
take
(
$count
)
->
get
()
->
pluck
(
'viewable'
);
...
...
Please
register
or
sign in
to post a comment