Преглед на файлове

Add changes requested by @sdushantha

arnavmehta1977@gmail.com преди 5 години
родител
ревизия
06973d5375
променени са 1 файла, в които са добавени 24 реда и са изтрити 8 реда
  1. 24 8
      tmpmail

+ 24 - 8
tmpmail

@@ -227,6 +227,7 @@ view_email() {
     FROM=$(printf %s "$DATA" | jq -r ".from")
     SUBJECT=$(printf %s "$DATA" | jq -r ".subject")
     HTML_BODY=$(printf %s "$DATA" | jq -r ".htmlBody")
+    ATTACHMENTS=$(printf %s "$DATA" | jq -r ".attachments | length")
 
     # If you get an email that is in pure text, the .htmlBody field will be empty and
     # we will need to get the content from .textBody instead
@@ -240,8 +241,19 @@ view_email() {
 <b>From: </b>$FROM
 <b>Subject: </b>$SUBJECT</pre>
 $HTML_BODY
+
 EOF
 )
+    # Add this logic to preven
+    if [[ ! $ATTACHMENTS = "0" ]] && [[ ! $ATTACHMENTS = 0 ]]
+    then
+        HTML_MAIL+="<hr><br>Attachments<br>"
+        for (( index=0; index < $ATTACHMENTS; index++ )); do
+            FILENAME=$(printf %s "$DATA" | jq -r '.attachments | .['$index'] | .filename')
+            LINK="<a href=${TMPMAIL_API_URL}?action=download&login=$USERNAME&domain=$DOMAIN&id=$EMAIL_ID&file=$FILENAME download>$FILENAME</a><br>"
+            HTML_MAIL+="$LINK"
+        done
+    fi
     # Save the $HTML_MAIL into $TMPMAIL_HTML_EMAIL
     printf %s "$HTML_MAIL" >"$TMPMAIL_HTML_EMAIL"
 
@@ -254,15 +266,19 @@ EOF
     $BROWSER "$TMPMAIL_HTML_EMAIL"
 }
 
-download_attachment () {
+list_attachments () {
     EMAIL_ID="$1"
-    FILE="$2"
-    DATA=$(curl -sL "${TMPMAIL_API_URL}?action=download&login=$USERNAME&domain=$DOMAIN&id=$EMAIL_ID&file=$FILE")
-    if [ "$DATA" = "" ]
-    then
-        print_error "Attachment or email id does not exist."
+    DATA=$(curl -sL "${TMPMAIL_API_URL}?action=readMessage&login=$USERNAME&domain=$DOMAIN&id=$EMAIL_ID")
+    if [[ $DATA == "Message not found" ]]; then
+        print_error "Message not found"
     fi
-    printf %s "$DATA" > "$FILE"
+    ATTACHMENTSLEN=$(printf %s "$DATA" | jq -r ".attachments | length")
+    echo "[ Attachments in $EMAIL_ID ]\n"
+    for (( index=0; index < $ATTACHMENTSLEN; index++ )); do
+        FILENAME=$(printf %s "$DATA" | jq -r '.attachments | .['$index'] | .filename')
+        DOWNLOADURL="${TMPMAIL_API_URL}?action=readMessage&login=$USERNAME&domain=$DOMAIN&id=$EMAIL_ID&file=$FILENAME"
+        echo $DOWNLOADURL
+    done
 }
 
 view_recent_email() {
@@ -320,7 +336,7 @@ main() {
             --browser | -b) BROWSER="$2" ;;
             --text | -t) RAW_TEXT=true ;;
             --version) echo "$VERSION" && exit ;;
-            --download | -d) download_attachment "$2" "$3" && exit ;;
+            --attachments | -a) list_attachments "$2" && exit ;;
             --recent | -r) view_recent_email && exit ;;
             *[0-9]*)
                 # If the user provides number as an argument,