No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 

53 líneas
1.6 KiB

  1. /* eslint-disable no-console */
  2. /* eslint-disable no-undef */
  3. $('#formSettings').submit(async e => {
  4. e.preventDefault();
  5. const data = $(e.target).serializeArray();
  6. const getToken = await fetch(`/session/key?s=jwt`);
  7. if (getToken.ok) {
  8. var token = await getToken.text();
  9. loading(10, true);
  10. let res = await fetch('/api/editable', {
  11. method: 'PUT',
  12. headers: {
  13. Authorization: `Bearer ${token}`,
  14. 'Content-Type': 'application/json',
  15. },
  16. body: JSON.stringify({data:{
  17. Active: (data.filter(i => i.name == 'editable')[0])?data.filter(i => i.name == 'editable')[0].value == 'on':false,
  18. }}),
  19. });
  20. if (res.ok) {
  21. loading(70, true);
  22. res = await fetch('/api/clear-monthly', {
  23. method: 'PUT',
  24. headers: {
  25. Authorization: `Bearer ${token}`,
  26. 'Content-Type': 'application/json',
  27. },
  28. body: JSON.stringify({data:(data.filter(i => i.name == 'autoClear')[0])?{
  29. Active: data.filter(i => i.name == 'autoClear')[0].value == 'on',
  30. Every: data.filter(i => i.name == 'Every')[0].value||0,
  31. }:{
  32. Active: false,
  33. Every: 0,
  34. }}),
  35. });
  36. if (res.ok) {
  37. loading(100, true);
  38. showAlert('success', 'Berhasil menyimpan settings!');
  39. loading(0, false);
  40. } else {
  41. loading(0, false);
  42. showAlert('error', 'Terjadi kesalahan. Harap login kembali!');
  43. }
  44. } else {
  45. loading(0, false);
  46. showAlert('error', 'Terjadi kesalahan. Harap login kembali!');
  47. }
  48. } else {
  49. loading(0, false);
  50. showAlert('error', 'Terjadi kesalahan. Harap login kembali!');
  51. }
  52. });