Mails ins Postfach bewegen… 2.0
Ist jetzt zwar nicht mehr ganz so simpel und "elegant" wie die erste Version, dafür kommt das Ding nun aber mit existierenden Unterordner und POP-Accounts (bisher nur IMAP) klar.
-- MoveMailTo
-- Created by Hubi on 16.06.2009
--Änderung vom 07.12.2009
-- ->Unterordner können nu auch als Ziel genutzt werden
-- ->POP Accounts bzw. lokale Ordner können nun auch angesprochen werden.
-- Copyright 2009 hubionmac.com. All rights reserved. ;-)
tell application "Mail"
set theSelection to selection
if theSelection ≠ {} then
try
set ac_name to (name of account of mailbox of (item 1 of theSelection))
set ac_typ to account type of account of mailbox of (item 1 of theSelection)
on error
--wenn eine Nachricht in einem lokalen Postfach ausgewählt wurde kann das nur schief gehen, also:
set ac_name to ""
set ac_typ to pop
end try
set t_mail to {}
if ac_typ = imap then
repeat with i from 1 to (count of every mailbox of account ac_name)
--set t_mail to t_mail & ((i & " " & name of mailbox i of account ac_name) as text)
set t_mail to t_mail & ((name of mailbox i of account ac_name & " (" & i & ")") as text)
end repeat
else if ac_typ = pop then
repeat with i from 1 to (count of every mailbox)
--set t_mail to t_mail & ((i & " " & name of mailbox i of account ac_name) as text)
set t_mail to t_mail & ((name of mailbox i & " (" & i & ")") as text)
end repeat
end if
set my_mailboxes to {"•••NEW•••"} & t_mail
set theaction to choose from list my_mailboxes default items {item 1 of my_mailboxes}
if theaction as text ≠ "false" then
if theaction as text = (item 1 of my_mailboxes) as text then
set new_mailboxname to text returned of (display dialog "New Mailbox" default answer "---New Mailbox ---")
if new_mailboxname as text ≠ "false" then
if ac_typ = imap then
tell account ac_name to set desti_box to (make new mailbox with properties {name:new_mailboxname})
else if ac_typ = pop then
make new mailbox with properties {name:new_mailboxname}
set desti_box to new_mailboxname
end if
end if
else
--set desti_box to mailbox ((first word of (theaction as text)) as integer) of account ac_name
if ac_typ = imap then
set desti_box to mailbox ((last word of (theaction as text)) as integer) of account ac_name
else if ac_typ = pop then
set desti_box to mailbox ((last word of (theaction as text)) as integer)
end if
end if
move theSelection to desti_box
end if
else
display dialog "Nix ausgewählt zum verschieben" giving up after 1
end if
end tell
Ähnliche Themen
Comments
Comment from Shadow
Time December 8, 2009 at 4:47 pm
Noch eine Anmerkung:
Wenn du die einfach nur ein if ac_typ = pop und ansonsten else machst (ohne imap bedingung), dann geht das auch mit Exchange Mailboxen unter Snow Leopard :)
Grüße
Pingback from hubionmac.com » AppleScript: Bild-Datein und PDFs weg sortieren…
Time March 19, 2010 at 1:22 am
[...] zeigt einem eine Liste der Zielordner an und man kann recht flott die Bilder weg sortieren. Ist dem Mail-Skript nicht unähnlich…. Code zum markieren einmal anklicken Code im Skript-Editor [...]
Comment from Shadow
Time December 8, 2009 at 4:34 pm
Hey Hubi,
das funktioniert jetzt tadellos!
Besten Dank!