IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an email to s dot adaszewski at gmail dot com. User accounts are meant only to report issues and/or generate pull requests. This is a purpose-specific Git hosting for ADARED projects. Thank you for your understanding!
Browse Source

Make collection content crumbs functional.

pull/1/head
parent
commit
38d75278a7
2 changed files with 13 additions and 5 deletions
  1. +5
    -1
      frontend/src/js/component/wb-collection-content.js
  2. +8
    -4
      frontend/src/js/widget/wb-breadcrumbs.js

+ 5
- 1
frontend/src/js/component/wb-collection-content.js View File

@@ -164,7 +164,11 @@ class WBCollectionContent extends Component {
return ( return (
<div> <div>
<WBBreadcrumbs items={ ('.' + collectionPath).split('/') } />
<WBBreadcrumbs items={ ('.' + collectionPath).split('/').map((name, index) => ({ name, index })) }
getItemUrl={ it => this.getUrl({
collectionPath: ('.' + collectionPath).split('/').slice(0, it.index + 1).join('/').substr(1),
page: 0
}) } />
{ (mode === 'manifestDownload') ? { (mode === 'manifestDownload') ?
( (


+ 8
- 4
frontend/src/js/widget/wb-breadcrumbs.js View File

@@ -1,7 +1,7 @@
import { h, Component } from 'preact'; import { h, Component } from 'preact';
class WBBreadcrumbs extends Component { class WBBreadcrumbs extends Component {
render({ items, onItemClicked }) {
render({ items, onItemClicked, getItemUrl }) {
return ( return (
<nav aria-label="breadcrumb"> <nav aria-label="breadcrumb">
<ol class="breadcrumb"> <ol class="breadcrumb">
@@ -10,8 +10,11 @@ class WBBreadcrumbs extends Component {
(idx == items.length - 1 ? ' active' : '') }> (idx == items.length - 1 ? ' active' : '') }>
{ {
(idx < items.length - 1) ? ( (idx < items.length - 1) ? (
<a href="#" onclick={ e => { e.preventDefault();
onItemClicked(item); } }>{ typeof(item) === 'string' ? item : item['name'] }</a>
<a href={ getItemUrl ? getItemUrl(item) : '#' }
onclick={ onItemClicked ? ( e => { e.preventDefault();
onItemClicked(item); } ) : null }>
{ typeof(item) === 'string' ? item : item['name'] }
</a>
) : ( ) : (
typeof(item) === 'string' ? item : item['name'] typeof(item) === 'string' ? item : item['name']
) )
@@ -25,7 +28,8 @@ class WBBreadcrumbs extends Component {
} }
WBBreadcrumbs.defaultProps = { WBBreadcrumbs.defaultProps = {
'onItemClicked': () => {}
onItemClicked: null,
getItemUrl: null
} }
export default WBBreadcrumbs; export default WBBreadcrumbs;

Loading…
Cancel
Save