Changeset 084d1c0 in Klonkt
- Timestamp:
- 06/30/2026 02:10:36 AM (2 months ago)
- Branches:
- main
- Children:
- e0a1ec1
- Parents:
- f2eacca
- Location:
- src
- Files:
-
- 2 edited
-
routes/admin-audio.js (modified) (1 diff)
-
views/pages/admin-audio.ejs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/routes/admin-audio.js
rf2eacca r084d1c0 494 494 fields.push('downloadable = ?'); values.push(body.downloadable ? 1 : 0); 495 495 } 496 if (Object.prototype.hasOwnProperty.call(body, 'fedi_open')) { 497 fields.push('fedi_open = ?'); values.push(body.fedi_open ? 1 : 0); 498 } 496 499 if (Object.prototype.hasOwnProperty.call(body, 'credit')) { 497 500 fields.push('credit = ?'); values.push(String(body.credit || '').trim() || null); -
src/views/pages/admin-audio.ejs
rf2eacca r084d1c0 123 123 style="<%= t.downloadable ? 'color:var(--accent,#6b8f71)' : 'opacity:.5' %>">⬇</button> 124 124 <% } %> 125 <form action="/admin/audio/<%= t.id %>/fedi-open" method="post" class="ax-track-fedi" style="display:inline"> 126 <button type="submit" class="ax-icon-btn" 127 aria-label="<%= t.fedi_open ? _aaudFediOn : _aaudFediOff %>" title="<%= t.fedi_open ? _aaudFediOn : _aaudFediOff %>" 128 style="<%= t.fedi_open ? 'color:var(--accent,#6b8f71)' : 'opacity:.5' %>">🌐</button> 129 </form> 125 <button type="button" class="ax-icon-btn" data-track-fedi data-id="<%= t.id %>" data-on="<%= t.fedi_open ? '1' : '0' %>" 126 aria-label="<%= t.fedi_open ? _aaudFediOn : _aaudFediOff %>" title="<%= t.fedi_open ? _aaudFediOn : _aaudFediOff %>" 127 style="<%= t.fedi_open ? 'color:var(--accent,#6b8f71)' : 'opacity:.5' %>">🌐</button> 130 128 <form action="/admin/audio/<%= t.id %>/delete" method="post" data-confirm="<%= _aaudDelConfirm %>" class="ax-track-delete"> 131 129 <button type="submit" class="ax-icon-btn ax-icon-btn-danger" aria-label="<%= _aaudDelete %>" title="<%= _aaudDelete %>">🗑</button> … … 1011 1009 }); 1012 1010 }); 1011 1012 // Fediverse-share (fedi_open) toggle — AJAX, no page reload (mirrors the download toggle). 1013 document.querySelectorAll('[data-track-fedi]').forEach(btn => { 1014 btn.addEventListener('click', async () => { 1015 if (btn.disabled) return; 1016 const want = btn.dataset.on === '1' ? 0 : 1; 1017 btn.disabled = true; 1018 try { 1019 const res = await fetch('/admin/audio/api/' + btn.dataset.id, { 1020 method: 'POST', 1021 headers: { 'Content-Type': 'application/json' }, 1022 body: JSON.stringify({ fedi_open: !!want }), 1023 }); 1024 if (!res.ok) throw new Error('HTTP ' + res.status); 1025 btn.dataset.on = String(want); 1026 btn.style.color = want ? 'var(--accent,#6b8f71)' : ''; 1027 btn.style.opacity = want ? '1' : '.5'; 1028 btn.title = want ? '<%= t('aaud.fedi_on') %>' : '<%= t('aaud.fedi_off') %>'; 1029 } catch (e) { 1030 alert('<%= t('aaud.change_failed') %>: ' + (e.message || e)); 1031 } finally { 1032 btn.disabled = false; 1033 } 1034 }); 1035 }); 1013 1036 })(); 1014 1037 </script>
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)