Seite 1 von 1

FTP und MACOS 10.5.xx

Verfasst: So 19. Jul 2009, 10:21
von alexis_sorbas
Moin,

kann ich jetzt eigentlich mit 10.5x via ftp auch SCHREIBEND
auf meinen FTP-Server zugreifen... aus´m Finder heraus?
OHNE "Extras" :???:

Verfasst: So 19. Jul 2009, 19:03
von FotoOtto
Sieht nicht so aus... Ausser Dein Server unterstuetzt Apples Interpretation von ACLs.

Vom Terminal geht's mit ftp... aber dann kannst Du auch gleich ne andere Software nehmen. Wofuer brauchst Du das denn? Zum Uploaden von Photos auf Webserver?

Gruss, Otto

Verfasst: So 19. Jul 2009, 21:34
von alexis_sorbas
FotoOtto hat geschrieben:Sieht nicht so aus... Ausser Dein Server unterstuetzt Apples Interpretation von ACLs.

Vom Terminal geht's mit ftp... aber dann kannst Du auch gleich ne andere Software nehmen. Wofuer brauchst Du das denn? Zum Uploaden von Photos auf Webserver?...
Moin,

Ja, genau, dazu ich habe bisher ein Applescript benutzt.
Das wird als "Ordneraktion" an den Upload-Ordner gehängt...
Ich hoffe, das geht auch mit 10.5.x noch... :???:
Reiner hatte das mal hier verlinkt...

Code: Alles auswählen

property dialog_timeout : 1 -- Sek. -- Wie lange sollen Meldungen angezeigt werden? 
-- Wird der Wert auf 0 (Null) gesetzt, werden keine Meldungen angezeigt. 
-- Benutzername und Passwort können hier direkt eingegeben werden. 
-- Geschieht dies nicht, werden die Daten bei der ersten Benutzung abgefragt 
-- und dann in den jeweiligen Variablen gespeichert 
-- Vorteil der zweiten Alternative: Die Daten können nicht so leicht aus dem 
-- Skript gelesen werden 
property BenutzerName : "name"
property passwort : ""
-- Server anpassen und den Pfad zum gewünschten Directory abändern. 
property serverpfad : "ftp://www.servername/ordnernamen/"

on adding folder items to this_folder after receiving added_items
	my prepareMode()
	try
		tell application "Finder"
			set the folder_name to the name of this_folder
		end tell
		set the item_count to the number of items in the added_items
		
		if dialog_timeout > 0 then
			set alert_message to "Auf geht´s..." & return & return
			if the item_count is greater than 1 then
				set alert_message to alert_message & ((the item_count as text) & " Dateien hochladen... “" & the folder_name) & "”."
			else
				set alert_message to alert_message & "Eine neue Datei hochladen... “" & the folder_name & "”."
			end if
			activate
			display dialog the alert_message buttons {"OK"} default button 1 with icon 1 giving up after dialog_timeout
		end if
		if class of added_items is not list then
			set added_items to added_items as list
		end if
		repeat with dieDatei in added_items
			set dieDatei to dieDatei as text
			set LokalerPfad to quoted form of POSIX path of alias dieDatei
			set DateiName to do shell script "basename " & LokalerPfad
			set UeberOrdner to quoted form of POSIX path of this_folder
			
			set ScriptBefehl to "cd " & UeberOrdner
			set ScriptBefehl to ScriptBefehl & "; curl -T " & quoted form of DateiName & " -u " & BenutzerName & ":" & passwort & " " & serverpfad
			do shell script ScriptBefehl
			set the clipboard to "[img]http://" & (characters 7 thru length of serverpfad) & DateiName & "[/img]"
		end repeat
		if dialog_timeout > 0 then
			activate
			display dialog "Die Datei/en wurden auf den Server geschoben!" buttons {"OK"} default button 1 with icon 1 giving up after dialog_timeout
		end if
		
		tell application "Finder"
			(every file of folder this_folder whose name ends with ".swf") move to the trash
			(every file of folder this_folder whose name ends with ".html") move to the trash
			if dialog_timeout > 0 then
				activate
				display dialog "Die Datei wurde in den Papierkorb verschoben!" buttons {"OK"} default button 1 with icon 1 giving up after dialog_timeout
			end if
			
		end tell
		
	on error errMsg
		display dialog errMsg
	end try
end adding folder items to

on prepareMode()
	if BenutzerName = "" then
		set BenutzerName to text returned of (display dialog "Bitte Benutzernamen eingeben" buttons {"OK"} default button 1 default answer "")
	end if
	if passwort = "" then
		set passwort to text returned of (display dialog "Bitte Passwort eingeben" buttons {"OK"} default button 1 default answer "")
	end if
end prepareMode