Bug 32507: Use template wrapper to build breadcrumb navigation
This patch lays the groundwork for updating the way we build breadcrumb
navigation on each page, and implements it on the cities administration
page as a proof of concept.
The page creates two blocks, 'breadcrumbs' and 'breadcrumb_item'
'breadcrumbs' builds the outer structure of the menu, currently:
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
<ol class="breadcrumb">
It automatically adds the "Home" link which appears on all pages.
The 'breadcrumb_item' block builds the list item which contains the
individual link.
To test, apply the patch and go to Administration -> Cities & towns. On
each variation of the page, check the breadcrumbs menu:
- On the initial summary view it should be:
Home -> Administration -> Cities
- Click "New city" and the menu should be:
Home -> Administration -> Cities -> New city
- When you edit a city:
Home -> Administration -> Cities -> Modify city
- When you delete a city:
Home -> Administration -> Cities -> Confirm deletion of city
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
bc9a37534f
commit
8a01c095b7
|
|
@ -400,3 +400,63 @@
|
|||
[% content| $raw %]
|
||||
</div>
|
||||
[% END %]
|
||||
|
||||
[%# BOOTSTRAP BREADCRUMBS WRAPPER USAGE
|
||||
[ WRAPPER breadcrumbs ]
|
||||
[ Home breadcrumb automatically included ]
|
||||
[ WRAPPER breadcrumb_item ]
|
||||
<a href="/cgi-bin/koha/module/module-home.pl"> Module </a>
|
||||
[ END ]
|
||||
|
||||
[ IF op == 'add_form' ]
|
||||
[ WRAPPER breadcrumb_item ]
|
||||
<a href="/cgi-bin/koha/module/page.pl"> Module page </a>
|
||||
[ END ]
|
||||
[ WRAPPER breadcrumb_item active = 1 ]
|
||||
Add form
|
||||
[ END ]
|
||||
|
||||
[ ELSIF op == 'delete_confirm' ]
|
||||
[ WRAPPER breadcrumb_item ]
|
||||
<a href="/cgi-bin/koha/module/page.pl"> Module page </a>
|
||||
[ END ]
|
||||
[ WRAPPER breadcrumb_item active = 1 ]
|
||||
Confirm deletion
|
||||
[ END ]
|
||||
|
||||
[ ELSE ]
|
||||
[ WRAPPER breadcrumb_item active = 1 ]
|
||||
Module page
|
||||
[ END ]
|
||||
[ END #/IF op = add_form ]
|
||||
|
||||
[ END #/ WRAPPER breadcrumbs ]
|
||||
%]
|
||||
|
||||
[%# Used to build breadcrumb navigation nav %]
|
||||
[% BLOCK breadcrumbs %]
|
||||
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
|
||||
<ol>
|
||||
[%# Include the Home link every time %]
|
||||
[% WRAPPER breadcrumb_item %]
|
||||
<a href="/cgi-bin/koha/mainpage.pl">Home</a>
|
||||
[% END %]
|
||||
[% content | $raw %]
|
||||
</ol>
|
||||
</nav>
|
||||
[% END %]
|
||||
|
||||
[%# Used to build individual breadcrumb items in the breadcrumb nav %]
|
||||
[% BLOCK breadcrumb_item %]
|
||||
[% IF ( active ) %]
|
||||
<li>
|
||||
<a href="#" aria-current="page">
|
||||
[% content | $raw %]
|
||||
</a>
|
||||
</li>
|
||||
[% ELSE %]
|
||||
<li>
|
||||
[% content | $raw %]
|
||||
</li>
|
||||
[% END %]
|
||||
[% END %]
|
||||
|
|
|
|||
|
|
@ -24,49 +24,39 @@
|
|||
[% END %]
|
||||
|
||||
[% WRAPPER 'sub-header.inc' %]
|
||||
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
|
||||
<ol>
|
||||
<li>
|
||||
<a href="/cgi-bin/koha/mainpage.pl">Home</a>
|
||||
</li>
|
||||
<li>
|
||||
[% WRAPPER breadcrumbs %]
|
||||
[% WRAPPER breadcrumb_item %]
|
||||
<a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
|
||||
</li>
|
||||
[% END %]
|
||||
|
||||
[% IF op == 'add_form' %]
|
||||
<li>
|
||||
[% WRAPPER breadcrumb_item %]
|
||||
<a href="/cgi-bin/koha/admin/cities.pl">Cities</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" aria-current="page">
|
||||
[% IF city.cityid %]
|
||||
<span>Modify city</span>
|
||||
[% ELSE %]
|
||||
<span>New city</span>
|
||||
[% END %]
|
||||
</a>
|
||||
</li>
|
||||
[% END %]
|
||||
[% WRAPPER breadcrumb_item active = 1 %]
|
||||
[% IF city.cityid %]
|
||||
<span>Modify city</span>
|
||||
[% ELSE %]
|
||||
<span>New city</span>
|
||||
[% END %]
|
||||
[% END %]
|
||||
|
||||
[% ELSIF op == 'delete_confirm' %]
|
||||
<li>
|
||||
[% WRAPPER breadcrumb_item %]
|
||||
<a href="/cgi-bin/koha/admin/cities.pl">Cities</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" aria-current="page">
|
||||
Confirm deletion of city
|
||||
</a>
|
||||
</li>
|
||||
[% END %]
|
||||
[% WRAPPER breadcrumb_item active = 1 %]
|
||||
Confirm deletion of city
|
||||
[% END %]
|
||||
|
||||
[% ELSE %]
|
||||
<li>
|
||||
<a href="#" aria-current="page">
|
||||
Cities
|
||||
</a>
|
||||
</li>
|
||||
[% END %]
|
||||
</ol>
|
||||
</nav>
|
||||
[% END %]
|
||||
[% WRAPPER breadcrumb_item active = 1 %]
|
||||
Cities
|
||||
[% END %]
|
||||
[% END #/IF op = add_form %]
|
||||
|
||||
[% END #/ WRAPPER breadcrumbs %]
|
||||
[% END #/ WRAPPER sub-header.inc %]
|
||||
|
||||
<div class="main container-fluid">
|
||||
<div class="row">
|
||||
|
|
|
|||
Loading…
Reference in New Issue