Fix: Freunde-Aktivitäten öffnen direkt das Ziel-Item
- friends.py: entry_id für diary + walk Einträge zurückgeben
- diary.js: openDetail(id) öffentlich gemacht
- friends.js: App.callModule('diary','openDetail',id) bzw.
App.callModule('walks','openDetail',id) statt nur App.navigate(page)
This commit is contained in:
parent
6809cfae23
commit
f9e2202ac7
5 changed files with 20 additions and 6 deletions
|
|
@ -1187,6 +1187,6 @@ window.Page_diary = (() => {
|
|||
.trim();
|
||||
}
|
||||
|
||||
return { init, refresh, openNew, onDogChange };
|
||||
return { init, refresh, openNew, onDogChange, openDetail: _openDetail };
|
||||
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -249,8 +249,17 @@ window.Page_friends = (() => {
|
|||
|
||||
el.querySelectorAll('.fr-activity-item[data-nav]').forEach(btn => {
|
||||
btn.addEventListener('click', () => {
|
||||
const page = btn.dataset.nav;
|
||||
if (page) App.navigate(page);
|
||||
const page = btn.dataset.nav;
|
||||
const entryId = btn.dataset.entryId ? parseInt(btn.dataset.entryId) : null;
|
||||
const type = btn.dataset.type;
|
||||
if (!page) return;
|
||||
if (entryId && type === 'diary') {
|
||||
App.callModule('diary', 'openDetail', entryId);
|
||||
} else if (entryId && type === 'walk') {
|
||||
App.callModule('walks', 'openDetail', entryId);
|
||||
} else {
|
||||
App.navigate(page);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -283,7 +292,9 @@ window.Page_friends = (() => {
|
|||
const tag = page ? `button type="button"` : `div`;
|
||||
return `
|
||||
<${tag} class="fr-activity-item${page ? ' fr-activity-item--link' : ''}"
|
||||
${page ? `data-nav="${page}"` : ''}>
|
||||
${page ? `data-nav="${page}"` : ''}
|
||||
${item.entry_id ? `data-entry-id="${item.entry_id}"` : ''}
|
||||
data-type="${item.type}">
|
||||
<div class="fr-activity-avatar-wrap">
|
||||
${avatar}
|
||||
<div class="fr-activity-icon-badge">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue