diff --git a/admin/js/dates.js b/admin/js/dates.js
index c2d93362308045c4174895362818cdc62d6ca9af..b472acfe62704d1b2747b086b376b45d58482ad7 100644
--- a/admin/js/dates.js
+++ b/admin/js/dates.js
@@ -730,26 +730,15 @@ $(document).ready(function () {
         complete: function () {
           $("#loader").hide();
           // generate e-mail
-          const email = $dp_mail;
-          const subject = "Moodle-Prüfungsbackup #" + exam_nr;
-          const emailBody =
-            "Hallo zusammen%0D%0A%0D%0ADas Backup der Prüfung «" +
-            exam +
-            "» (Doz.: " +
-            lecturer_name +
-            ") vom " +
-            date +
-            " ist gemacht und auf dem Share abgelegt.%0D%0ADateiname: " +
-            filename +
-            "%0D%0A%0D%0A-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --%0D%0APfad zur Ablage der Backups:%0D%0AWindows: \\\\d\\Groups\\ETH\\Stab\\let-exam-bkp%0D%0AMac: smb://nas22.ethz.ch/ethstab_let_2%0D%0A-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --%0D%0A%0D%0AGruss " +
-            user_prename;
-          document.location =
-            "mailto:" + email + "?subject=" + subject + "&body=" + emailBody;
-
-          let $archive = confirm(lang.archive_exam);
-          if ($archive) {
-            $("#t_a_" + id).trigger("click");
-          }
+          $.generateMail(
+            id,
+            exam_nr,
+            exam,
+            lecturer_name,
+            date,
+            filename,
+            user_prename
+          );
         },
         error: function (error) {
           if (error.errorcode) {
@@ -761,6 +750,67 @@ $(document).ready(function () {
       });
       e.preventDefault(); //STOP default action
     });
+
+    $(".mail_icon").off();
+    $(".mail_icon").click(function (e) {
+      let id = $(this).attr("name");
+      let obj = JSON.parse($(this).attr("data-href").replace(/'/g, '"'));
+
+      let exam_nr = obj.exam_nr;
+      let lecturer_name = $("#lecturer_" + id + " .lastname").text();
+      let lecturer_name_us = lecturer_name.replace(/ /g, "_");
+      let exam = $("#exam_" + id).text();
+      let date = $("#date_" + id).text();
+      let date_reverse = date.split(".").reverse().join(".");
+      date_reverse = date_reverse.split(".").join("");
+      let user_info = $("#user_info").attr("title");
+      let user_prename = user_info.substring(0, user_info.indexOf(" "));
+      let user_name = user_info.substring(
+        user_info.indexOf(" ") + 1,
+        user_info.length
+      );
+      let user_init = user_prename.substr(0, 1) + user_name.substr(0, 1);
+      let filename =
+        date_reverse + "_" + lecturer_name_us + "_Backup_" + user_init + ".mbz";
+
+      // generate e-mail
+      $.generateMail(
+        id,
+        exam_nr,
+        exam,
+        lecturer_name,
+        date,
+        filename,
+        user_prename
+      );
+      e.preventDefault(); //STOP default action
+    });
+  };
+})(jQuery);
+
+(function ($) {
+  $.generateMail = function (id, exam_nr, exam, lecturer_name, date, filename, user_prename) {
+    const email = $dp_mail;
+    const subject = "Moodle-Prüfungsbackup #" + exam_nr;
+    const emailBody =
+      "Hallo zusammen%0D%0A%0D%0ADas Backup der Prüfung «" +
+      exam +
+      "» (Doz.: " +
+      lecturer_name +
+      ") vom " +
+      date +
+      " ist gemacht und auf dem Share abgelegt.%0D%0ADateiname: " +
+      filename +
+      "%0D%0A%0D%0A-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --%0D%0APfad zur Ablage der Backups:%0D%0AWindows: \\\\d\\Groups\\ETH\\Stab\\let-exam-bkp%0D%0AMac: smb://nas22.ethz.ch/ethstab_let_2%0D%0A-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --%0D%0A%0D%0AGruss " +
+      user_prename;
+    document.location =
+      "mailto:" + email + "?subject=" + subject + "&body=" + emailBody;
+
+    // archive exam
+    let $archive = confirm(lang.archive_exam);
+    if ($archive) {
+      $("#t_a_" + id).trigger("click");
+    }
   };
 })(jQuery);
 
diff --git a/admin/mod/get_date_list.php b/admin/mod/get_date_list.php
index 24a26d6c0de1d4182c4a8aa858cb4e8d28434db9..4d3c85a104515b0a243e8d9bf290f4e4bbc4344c 100644
--- a/admin/mod/get_date_list.php
+++ b/admin/mod/get_date_list.php
@@ -16,7 +16,7 @@ if ($_SESSION['loggedin']) {
     $limit = htmlspecialchars($_POST["limit"]);
     $start = htmlspecialchars($_POST["start"]);
 
-    // Validate parameters
+    // validate parameters
     if (!is_numeric($limit)) {
         $limit = 20;
     }
@@ -24,7 +24,7 @@ if ($_SESSION['loggedin']) {
         $start = 0;
     }
 
-    // Include language file
+    // include language file
     if (isset($_SESSION['lang'])) {
         $lang = $_SESSION['lang'];
     } else {
@@ -100,6 +100,13 @@ function getData($mode, $start, $form, $qry)
     global $examNameID;
     global $peopleID;
 
+    // get moodle backup preference
+    $pref_qry = $SELECT_pref . " WHERE pref_name = 'moodle_backup'";
+    $res = pg_query($con, $pref_qry);
+    $row = pg_fetch_assoc($res);
+    $moodle_backup = $row['pref_value'];
+    $response_array['moodle_backup'] = $moodle_backup;
+
     switch ($mode) {
         case "exam_list":
             $res = pg_query($con, $qry);
@@ -205,7 +212,11 @@ function getData($mode, $start, $form, $qry)
                         $content = $content . "<i id=\"t_a_" . $id . "\" class=\"icon fa fa-archive fa-fw archive_exam_icon\" title=\"" . _ARCHIVE . "\" aria-label=\"" . _ARCHIVE . "\" name=\"" . $id . "\"></i>";
                         $content = $content . "<i class=\"icon fa fa-trash fa-fw delete_date_icon\" title=\"" . _DELETE . "\" aria-label=\"" . _DELETE . "\" name=\"" . $id . "\"></i>";
                         if ($courseID) {
-                            $content = $content . "<i id=\"backup_" . $id . "\" class=\"icon fa fa-file-archive-o fa-fw backup_icon\" title=\"" . _BACKUP . "\" aria-label=\"" . _BACKUP . "\" name=\"" . $id . "\" data-href=\"{'moodle_id':" . $courseID . ", 'exam_nr':'" . $examNumber . "'}\"></i></td></tr>";
+                            if ($moodle_backup == "true") {
+                                $content = $content . "<i id=\"backup_" . $id . "\" class=\"icon fa fa-file-archive-o fa-fw backup_icon\" title=\"" . _BACKUP . "\" aria-label=\"" . _BACKUP . "\" name=\"" . $id . "\" data-href=\"{'moodle_id':" . $courseID . ", 'exam_nr':'" . $examNumber . "'}\"></i></td></tr>";
+                            } else {
+                                $content = $content . "<i id=\"mail_" . $id . "\" class=\"icon fa fa-envelope fa-fw mail_icon\" title=\"" . _BACKUP . " (" . _EMAIL . ")\" aria-label=\"" . _BACKUP . " (" . _EMAIL . ")\" name=\"" . $id . "\" data-href=\"{'moodle_id':" . $courseID . ", 'exam_nr':'" . $examNumber . "'}\"></i></td></tr>";
+                            }
                         }
                     }