The version of vichan running on lainchan.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.5KB

  1. /*
  2. * options/general.js - general settings tab for options panel
  3. *
  4. * Copyright (c) 2014 Marcin Łabanowski <marcin@6irc.net>
  5. *
  6. * Usage:
  7. * $config['additional_javascript'][] = 'js/jquery.min.js';
  8. * $config['additional_javascript'][] = 'js/options.js';
  9. * $config['additional_javascript'][] = 'js/style-select.js';
  10. * $config['additional_javascript'][] = 'js/options/general.js';
  11. */
  12. +function(){
  13. var tab = Options.add_tab("general", "home", _("General"));
  14. $(function(){
  15. var stor = $("<div>"+_("Storage: ")+"</div>");
  16. stor.appendTo(tab.content);
  17. $("<button>"+_("Export")+"</button>").appendTo(stor).on("click", function() {
  18. var str = JSON.stringify(localStorage);
  19. $(".output").remove();
  20. $("<input type='text' class='output'>").appendTo(stor).val(str);
  21. });
  22. $("<button>"+_("Import")+"</button>").appendTo(stor).on("click", function() {
  23. var str = prompt(_("Paste your storage data"));
  24. if (!str) return false;
  25. var obj = JSON.parse(str);
  26. if (!obj) return false;
  27. localStorage.clear();
  28. for (var i in obj) {
  29. localStorage[i] = obj[i];
  30. }
  31. document.location.reload();
  32. });
  33. $("<button>"+_("Erase")+"</button>").appendTo(stor).on("click", function() {
  34. if (confirm(_("Are you sure you want to erase your storage? This involves your hidden threads, watched threads, post password and many more."))) {
  35. localStorage.clear();
  36. document.location.reload();
  37. }
  38. });
  39. $("#style-select").detach().css({float:"none","margin-bottom":0}).appendTo(tab.content);
  40. });
  41. }();