Poista vastauspohjat asetuksista, pidetään vain tikettipuolella

Vastauspohjien hallinta kuuluu asiakaspalvelu-osioon, ei API-asetusten alle.
Poistettu tuplana ollut HTML-osio + siihen liittyvät JS-eventlistenerit.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 08:20:44 +02:00
parent 07e9c63c47
commit 64bf6aa2da
2 changed files with 1 additions and 86 deletions

View File

@@ -651,31 +651,6 @@
<pre id="test-api-result" style="margin-top:0.75rem;background:#f8f9fb;padding:1rem;border-radius:8px;font-size:0.85rem;display:none;overflow-x:auto;"></pre> <pre id="test-api-result" style="margin-top:0.75rem;background:#f8f9fb;padding:1rem;border-radius:8px;font-size:0.85rem;display:none;overflow-x:auto;"></pre>
</div> </div>
<!-- Vastauspohjat -->
<div class="table-card" style="padding:1.5rem;margin-top:1rem;">
<div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;">
<h3 style="color:#0f3460;margin:0;border-bottom:none;">Vastauspohjat</h3>
<button class="btn-primary" id="btn-add-template" style="font-size:0.85rem;">+ Uusi pohja</button>
</div>
<p style="color:#666;font-size:0.85rem;margin-bottom:1rem;">Nopeat vastauspohjat tiketteihin. Valittavissa vastauslomakkeen valikosta.</p>
<div id="templates-list"></div>
<div id="template-form" style="display:none;margin-top:1rem;padding:1rem;background:#f8f9fb;border-radius:8px;">
<input type="hidden" id="template-edit-id">
<div class="form-group" style="margin-bottom:0.5rem;">
<label style="font-size:0.85rem;">Nimi</label>
<input type="text" id="template-edit-name" placeholder="esim. Kuittaus vastaanotettu">
</div>
<div class="form-group" style="margin-bottom:0.5rem;">
<label style="font-size:0.85rem;">Sisältö</label>
<textarea id="template-edit-body" rows="4" placeholder="Kiitos viestistäsi! Olemme vastaanottaneet asiasi ja palaamme siihen mahdollisimman pian."></textarea>
</div>
<div style="display:flex;gap:0.5rem;">
<button class="btn-primary" id="btn-save-template">Tallenna</button>
<button class="btn-secondary" id="btn-cancel-template">Peruuta</button>
</div>
</div>
</div>
<!-- Telegram-asetukset --> <!-- Telegram-asetukset -->
<div class="table-card" style="padding:1.5rem;margin-top:1rem;"> <div class="table-card" style="padding:1.5rem;margin-top:1rem;">
<h3 style="color:#0f3460;margin-bottom:0.5rem;border-bottom:2px solid #f0f2f5;padding-bottom:0.5rem;">Telegram-hälytykset</h3> <h3 style="color:#0f3460;margin-bottom:0.5rem;border-bottom:2px solid #f0f2f5;padding-bottom:0.5rem;">Telegram-hälytykset</h3>

View File

@@ -2085,70 +2085,10 @@ let replyTemplates = [];
async function loadTemplates() { async function loadTemplates() {
try { try {
replyTemplates = await apiCall('reply_templates'); replyTemplates = await apiCall('reply_templates');
renderTemplates(); renderTplList();
} catch (e) { console.error(e); } } catch (e) { console.error(e); }
} }
function renderTemplates() {
const list = document.getElementById('templates-list');
if (!list) return;
if (replyTemplates.length === 0) {
list.innerHTML = '<p style="color:#aaa;font-size:0.85rem;">Ei vastauspohjia vielä.</p>';
return;
}
list.innerHTML = replyTemplates.map(t =>
`<div style="display:flex;justify-content:space-between;align-items:center;padding:0.5rem 0;border-bottom:1px solid #f0f2f5;">
<div>
<strong style="font-size:0.9rem;">${esc(t.nimi)}</strong>
<div style="font-size:0.8rem;color:#888;max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;">${esc(t.body.substring(0, 80))}</div>
</div>
<div style="display:flex;gap:0.3rem;">
<button class="btn-secondary" onclick="editTemplate('${t.id}')" style="padding:4px 8px;font-size:0.78rem;">Muokkaa</button>
<button class="btn-danger" onclick="deleteTemplate('${t.id}')" style="padding:4px 8px;font-size:0.78rem;">Poista</button>
</div>
</div>`
).join('');
}
document.getElementById('btn-add-template').addEventListener('click', () => {
document.getElementById('template-edit-id').value = '';
document.getElementById('template-edit-name').value = '';
document.getElementById('template-edit-body').value = '';
document.getElementById('template-form').style.display = 'block';
});
document.getElementById('btn-cancel-template').addEventListener('click', () => {
document.getElementById('template-form').style.display = 'none';
});
document.getElementById('btn-save-template').addEventListener('click', async () => {
const id = document.getElementById('template-edit-id').value || undefined;
const nimi = document.getElementById('template-edit-name').value.trim();
const body = document.getElementById('template-edit-body').value.trim();
if (!nimi || !body) { alert('Täytä nimi ja sisältö'); return; }
try {
await apiCall('reply_template_save', 'POST', { id, nimi, body });
document.getElementById('template-form').style.display = 'none';
loadTemplates();
} catch (e) { alert(e.message); }
});
window.editTemplate = function(id) {
const t = replyTemplates.find(x => x.id === id);
if (!t) return;
document.getElementById('template-edit-id').value = t.id;
document.getElementById('template-edit-name').value = t.nimi;
document.getElementById('template-edit-body').value = t.body;
document.getElementById('template-form').style.display = 'block';
};
window.deleteTemplate = async function(id) {
if (!confirm('Poistetaanko vastauspohja?')) return;
try {
await apiCall('reply_template_delete', 'POST', { id });
loadTemplates();
} catch (e) { alert(e.message); }
};
// ==================== TELEGRAM ==================== // ==================== TELEGRAM ====================