parent
c279d03028
commit
75930735ff
14 changed files with 186 additions and 85 deletions
Binary file not shown.
@ -0,0 +1,15 @@ |
|||||||
|
|
||||||
|
upper: IER |
||||||
|
title : Ilot d'Eau Le Retour |
||||||
|
published: 2017-01-01 |
||||||
|
location: Forest, Brussels-Capital Region, Belgium |
||||||
|
type: research, workshop, co-design, installation |
||||||
|
fund: Innoviris Co-Create |
||||||
|
network: Arkipel, Bruxelles Environnement, Casablanco, Celine de Vos, Forest Municipality, Ecotechnic, Etats Généraux de l’Eau à Bruxelles (EGEB), Faculté d'Architecture La Cambre Horta (Université Libre de Bruxelles), HYDR Lab (Vrije Universiteit Brussels), Jardin Essentiel, Jette Municipality, Le Début des Haricots, Maison de Quartier Saint-Antoine, Niccolò Masini, Potager de l’Imprimerie, Quartier Wiels Wijk, Verte Berthelot |
||||||
|
desc: |
||||||
|
author: Andrea Aragone, Davide Cauciello, Simone Conz, Romina Cornejo Escudero, Bruno Dias Ventura, Marta Finotello, Alessandra Marcon, Octavio Piñeiro Aramburu, Ana Moura Bastos, Marco Ranzato |
||||||
|
|
||||||
|
|
||||||
|
... |
||||||
|
|
||||||
|
|
||||||
@ -1,13 +1,13 @@ |
|||||||
|
upper: ESC |
||||||
title : Every Space Counts |
title : Every Space Counts |
||||||
author: Andrea Aragone, Lina Bentaleb, Davide Cauciello, Marta De Marchi, Octavio Piñeiro Aramburu, Marco Ranzato |
|
||||||
published: 2018-01-01 |
published: 2018-01-01 |
||||||
location: BOZAR Centre for fine arts |
location: BOZAR Centre for fine arts |
||||||
type: exhibition |
type: exhibition |
||||||
fund: . |
fund: |
||||||
upper: ESC |
|
||||||
network: Architecture Workroom Brussels, Bureau Bas Smets, JNC International, Taktyk |
network: Architecture Workroom Brussels, Bureau Bas Smets, JNC International, Taktyk |
||||||
cat: miaou |
cat: |
||||||
desc: ws |
desc: |
||||||
|
author: Andrea Aragone, Lina Bentaleb, Davide Cauciello, Marta De Marchi, Octavio Piñeiro Aramburu, Marco Ranzato |
||||||
|
|
||||||
... |
... |
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,14 @@ |
|||||||
|
|
||||||
|
upper: VHB |
||||||
|
title : Ville Haute Basse |
||||||
|
published: 2021-01-01 |
||||||
|
location: City of Brussels, Brussels-Capital Region, Belgium |
||||||
|
type: competition |
||||||
|
fund: City of Brussels |
||||||
|
network: a practice |
||||||
|
desc: |
||||||
|
author: Federico Broggini, Marco Ranzato, Andrea Bortolotti, Andrea Aragone, Alessandra Marcon, Federico Gobbato Liva |
||||||
|
|
||||||
|
... |
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,69 @@ |
|||||||
|
$(document).ready(function() { |
||||||
|
// Sorting state management |
||||||
|
const sortState = {}; |
||||||
|
|
||||||
|
// Function to sort articles |
||||||
|
function sortArticles(columnClass) { |
||||||
|
const $list = $('.alist'); |
||||||
|
const $listItems = $list.children('li'); |
||||||
|
|
||||||
|
// Determine sort direction |
||||||
|
if (!sortState[columnClass]) { |
||||||
|
sortState[columnClass] = 'asc'; |
||||||
|
} else { |
||||||
|
sortState[columnClass] = (sortState[columnClass] === 'asc') ? 'desc' : 'asc'; |
||||||
|
} |
||||||
|
|
||||||
|
// Sort the list items based on the text of the specified column |
||||||
|
$listItems.sort(function(a, b) { |
||||||
|
const aText = $(a).find('.' + columnClass).text().trim().toLowerCase(); |
||||||
|
const bText = $(b).find('.' + columnClass).text().trim().toLowerCase(); |
||||||
|
|
||||||
|
// Special handling for period (numeric sorting) |
||||||
|
if (columnClass === 'period') { |
||||||
|
const aNum = parseInt(aText); |
||||||
|
const bNum = parseInt(bText); |
||||||
|
return sortState[columnClass] === 'asc' |
||||||
|
? aNum - bNum |
||||||
|
: bNum - aNum; |
||||||
|
} |
||||||
|
|
||||||
|
// Default alphabetical sorting |
||||||
|
return sortState[columnClass] === 'asc' |
||||||
|
? aText.localeCompare(bText) |
||||||
|
: bText.localeCompare(aText); |
||||||
|
}); |
||||||
|
|
||||||
|
// Detach and reappend sorted items to maintain DOM structure |
||||||
|
$list.empty().append($listItems); |
||||||
|
|
||||||
|
// Update sort direction indicators |
||||||
|
$('.legend li').removeClass('sort-asc sort-desc'); |
||||||
|
$(`.legend li[data-sort="${columnClass}"]`).addClass( |
||||||
|
sortState[columnClass] === 'asc' ? 'sort-asc' : 'sort-desc' |
||||||
|
); |
||||||
|
} |
||||||
|
|
||||||
|
// Add click event to legend spans for sorting |
||||||
|
$('.legend li').on('click', function() { |
||||||
|
const columnClass = $(this).attr("data-sort"); |
||||||
|
|
||||||
|
// If the column exists in the article items, sort by that column |
||||||
|
if ($('.alist li').first().find('.' + columnClass).length > 0) { |
||||||
|
sortArticles(columnClass); |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
// Toggle content visibility |
||||||
|
$(".alist").on('click', 'li', function(e) { |
||||||
|
// Prevent sorting when clicking on content |
||||||
|
if (!$(e.target).closest('.legend').length) { |
||||||
|
const $contentWrapper = $(this).find('.content-wrapper'); |
||||||
|
|
||||||
|
// Ensure content-wrapper is not inside a link or legend |
||||||
|
if (!$(e.target).closest('a, .legend').length) { |
||||||
|
$contentWrapper.toggleClass("open"); |
||||||
|
} |
||||||
|
} |
||||||
|
}); |
||||||
|
}); |
||||||
Loading…
Reference in new issue