Advertisement
Guest User

Untitled

a guest
Apr 24th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.00 KB | None | 0 0
  1. var INDEF_LABEL = '#Indef';
  2.  
  3. var RETENTION_DAYS = 365;
  4. var RETENTION_DATE = new Date();
  5. RETENTION_DATE.setDate(RETENTION_DATE.getDate() - RETENTION_DAYS);
  6.  
  7. function DriveIndef() {
  8. var root = DriveApp.getRootFolder();
  9.  
  10. RemoveOldFiles(root);
  11. Drive.Files.emptyTrash();
  12. }
  13.  
  14. function RemoveOldFiles(folder) {
  15. if (folder.getDescription() !== null && folder.getDescription().indexOf(INDEF_LABEL) != -1) {
  16. return;
  17. }
  18.  
  19. var files = folder.getFiles();
  20. while (files.hasNext()) {
  21. var file = files.next();
  22. if (file.getLastUpdated() > RETENTION_DATE) {
  23. continue;
  24. }
  25.  
  26. if (folder.getDescription() !== null && file.getDescription().indexOf(INDEF_LABEL) != -1) {
  27. continue;
  28. }
  29.  
  30. file.setTrashed(true);
  31. }
  32.  
  33. var subFolders = folder.getFolders();
  34. while (subFolders.hasNext()) {
  35. RemoveOldFiles(subFolders.next());
  36. }
  37.  
  38. if (!folder.getFiles().hasNext() && !folder.getFolders().hasNext() && folder.getLastUpdated() < RETENTION_DATE) {
  39. folder.setTrashed(true);
  40. }
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement