var SendMessageForm = function(formid,fn_ok,fn_err){ console.log("Got form id"); form = document.getElementById(formid); form.addEventListener('submit', e => { e.preventDefault(); if(data = validate(form)){ ['appid','hashtag'].forEach((n) => { if(elm = form.elements.namedItem(n)) data[n] = elm.value; }); post_messsage(data).then(result =>{ if( result['status'] == 'error' ) { fn_err(result['error']); return; } fn_ok(); }).catch(err=>{ console.log(err); fn_err("Script processing error"); }); } }); function validate(f){ data = {} for(i in f.elements){ el = f.elements[i] if(!el.name || !el.name.startsWith('sm_')) continue; el.parentNode.classList.remove("error"); if( el.value == "" ){ el.parentNode.classList.add("error"); el.focus(); el.scrollIntoView(); return false; } data[f[i].name] = el.value; }; return data; } } const post_messsage = async (data) => { data['hkey'] = '855f938d67b52b5a7eb124320a21a139'; const request = await fetch('/sendmessage/send', { method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify(data) }); response = await request.json(); return await response }