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-02 12:13:03 +0000
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Commit
7c8c4c2a0568b792f084379de73bdb83113a2e6b
7c8c4c2a
1 parent
3595ac25
Normalised page nav header inset when only small headers are used
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
5 deletions
app/Repos/EntityRepo.php
resources/views/pages/sidebar-tree-list.blade.php
app/Repos/EntityRepo.php
View file @
7c8c4c2
...
...
@@ -836,7 +836,7 @@ class EntityRepo
/**
* Parse the headers on the page to get a navigation menu
* @param Page $page
* @return
array
* @return
Collection
*/
public
function
getPageNav
(
Page
$page
)
{
...
...
@@ -849,15 +849,24 @@ class EntityRepo
if
(
is_null
(
$headers
))
return
null
;
$tree
=
[]
;
$tree
=
collect
([])
;
foreach
(
$headers
as
$header
)
{
$text
=
$header
->
nodeValue
;
$tree
[]
=
[
$tree
->
push
(
[
'nodeName'
=>
strtolower
(
$header
->
nodeName
),
'level'
=>
intval
(
str_replace
(
'h'
,
''
,
$header
->
nodeName
)),
'link'
=>
'#'
.
$header
->
getAttribute
(
'id'
),
'text'
=>
strlen
(
$text
)
>
30
?
substr
(
$text
,
0
,
27
)
.
'...'
:
$text
];
]);
}
// Normalise headers if only smaller headers have been used
if
(
count
(
$tree
)
>
0
)
{
$minLevel
=
$tree
->
pluck
(
'level'
)
->
min
();
$tree
=
$tree
->
map
(
function
(
$header
)
use
(
$minLevel
)
{
$header
[
'level'
]
-=
(
$minLevel
-
2
);
return
$header
;
});
}
return
$tree
;
}
...
...
resources/views/pages/sidebar-tree-list.blade.php
View file @
7c8c4c2
...
...
@@ -30,7 +30,7 @@
<h6
class=
"text-muted"
>
{{ trans('entities.pages_navigation') }}
</h6>
<div
class=
"sidebar-page-nav menu"
>
@foreach($pageNav as $navItem)
<li
class=
"page-nav-item
{{ $navItem['nodeName
'] }}"
>
<li
class=
"page-nav-item
h{{ $navItem['level
'] }}"
>
<a
href=
"{{ $navItem['link'] }}"
>
{{ $navItem['text'] }}
</a>
</li>
@endforeach
...
...
Please
register
or
sign in
to post a comment