Hello my first post here, and a beginner at scripting.
I’m looking for some help with this folder and subfolder script.
tell application "Finder"
set projName to text returned of (display dialog "Please enter a Project Name:" default answer "Project_Name")
set serNum to text returned of (display dialog "Enter a Series number or name:" default answer "")
set serName to "Series_" & serNum
set dialogResult to (display dialog "Enter the number of episodes:" default answer "1")
repeat
try
set epsNumber to (text returned of dialogResult) as integer
-- This test should be unnecessary, just exiting the loop should be fine.
if class of epsNumber is integer then exit repeat
on error m number n from o partial result r to t
set unableToConvertToInteger to n is -1700 and o is text returned of dialogResult and t is integer -- e.g. "asdf"
set numericResultTooLarge to n is -2702 and t is integer -- e.g. anything larger than 2^29-1
if not (unableToConvertToInteger or numericResultTooLarge) then error m number n from o partial result r to t -- return {m, n, o, r, t} -- to see the error values, use the return instead
display dialog "The starting number needs to be a valid integer!" buttons {"Enter again", "Cancel"} default button 1
if result = {button returned:"Enter again"} then
set dialogResult to (display dialog "Enter the number of episodes:" default answer "1")
end if
end try
end repeat
set Loc to choose folder "Choose Parent Folder Location"
set newproj to (make new folder at Loc with properties {name:projName & "_" & serName}) as alias
end tell
set epNumberList to {}
repeat with i from 1 to epsNumber
set end of epNumberList to i
end repeat
set subfolderList to {epNumberList, "Generics", {"Info", {"Credits"}}, {"Labels & Record Reports", {"Labels", "Record Reports"}}, "Web"}
set n to count of items in subfolderList
repeat with i from 1 to n
set eachitem to item i of subfolderList
if class of eachitem is list then
my mysubfolders(newproj, eachitem)
else
tell application "Finder" to make new folder at newproj with properties {name:eachitem}
end if
end repeat
on mysubfolders(parentfolder, mysublist)
set nn to count of items in mysublist
repeat with j from 1 to nn
set eachitem to item j of mysublist
if class of eachitem is list then
set k to j - 1
set nm to item k of mysublist
set subfolder to ((parentfolder as text) & nm) as alias
my mysubfolders(subfolder, eachitem)
else
tell application "Finder"
make new folder at parentfolder with properties {name:eachitem}
end tell
end if
end repeat
end mysubfolders
I would like to be able to add some (fixed) subfolders to each of the generated list of ‘episode’ folders, and also to have the episode folders have a suffix of ‘_Episode’ then number when generated.
Any help gratefully received.
Thank you
Duncan