Hi There,
I have an AppleScript that works with Automator and I have saved it as an Automator Application. So it works like a droplet. The script helps me to create individual zip files of the selected folders/files.
The automator supports the AppleScript to āApplication receives files and folders as inputā.
Since, I recently upgraded to High Sierra (version 10.13.1), this Automator application is not working and Iām getting a āNot Allowedā watermark on the application file.
Is there anyway the AppleScript can be tweaked to work as a Droplet without getting any help from Automator.
ā¦and here is the AppleScript.
on run {input, parameters}
-- create a PKZip archive of the selected Finder item(s)
-- if no destination folder is specified, the archive will be placed in the same location
-- input: a list of Finder items to archive
-- output: a list of Finder items archived
set output to {}
set SkippedItems to {} -- this will be a list of skipped items
set DestinationFolder to missing value -- a Finder path to a destination folder if different
repeat with SomeItem in the input -- step through each item in the input
try
set SomeItem to SomeItem as text
if the last character of SomeItem is in {":", "/"} then set SomeItem to text 1 thru -2 of SomeItem
set ArchiveSource to POSIX path of SomeItem
if DestinationFolder is missing value then -- save the archive to the same location
set ArchiveName to ArchiveSource & ".zip"
else -- save the archive to the specified folder
set TheName to name of (info for SomeItem as alias)
set ArchiveName to (POSIX path of DestinationFolder) & TheName & ".zip"
end if
do shell script "ditto -ck " & (quoted form of ArchiveSource) & space & (quoted form of ArchiveName)
set the end of the output to (POSIX file ArchiveName) as alias -- success
on error ErrorMessage number ErrorNumber
log ErrorMessage
set the end of SkippedItems to SomeItem
end try
end repeat
if SkippedItems is not {} then -- handle skipped items
set TheCount to (count SkippedItems) as text
display alert "Error with Archive action" message TheCount & " items(s) were skipped - workflow will continue"
(*
choose from list SkippedItems with title "Error with Archive action" with prompt "The following items were skipped:" with empty selection allowed
if result is false then error number -128 -- user cancelled
*)
end if
return the output -- pass the result(s) to the next action
end run
Thanking you in anticipation.
Masood