Drag

The extension adds drag and drop when loading the report

  1. // ==UserScript==
  2. // @name Drag
  3. // @description The extension adds drag and drop when loading the report
  4. // @namespace http://tampermonkey.net/
  5. // @version 0.1
  6. // @author You
  7. // @match https://pro.guap.ru/inside/student/reports/*/create
  8. // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
  9. // @grant none
  10. // @license MIT
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. const drop_area = document.getElementsByClassName('card')[0];
  15. const load_button = document.getElementsByClassName('btn-info')[0];
  16.  
  17. ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(eventName => {
  18. drop_area.addEventListener(eventName, (e) => {
  19. e.preventDefault();
  20. e.stopPropagation();
  21. }, false)
  22. });
  23.  
  24. drop_area.addEventListener('drop', (e) => {
  25. document.getElementById('file').files = e.dataTransfer.files;
  26. load_button.text = e.dataTransfer.files[0].name;
  27. });
  28.  
  29. ['dragenter', 'dragover'].forEach(eventName => {
  30. drop_area.addEventListener(eventName, _ => {
  31. drop_area.style.cssText = 'box-shadow: 0 0 .5rem rgba(0,250,0,.75) !important;'
  32. }, false)
  33. });
  34.  
  35. ['dragleave', 'drop'].forEach(eventName => {
  36. drop_area.addEventListener(eventName, _ => {
  37. drop_area.style.cssText = 'box-shadow: var(--suai-shadow) !important'
  38. }, false)
  39. });
  40. })();