;*******************************************************************
; Installer, für ein AutoPOINT
;*******************************************************************

;*******************************************************************
; Definitionen
;*******************************************************************
(set #version "1.0")
(set #changefile "Changes_971022")
(set #programm "AP_OnlineStatus")
(set #install 1)
(set #updatetxt "Installieren ")

;*******************************************************************
; Wenn das Verzeichnis BBS:AutoPOINTS noch nicht existiert, wird
; es angelegt.
;*******************************************************************
(if (< (exists "bbs:AutoPOINTs") 1)
	(
		(makedir "bbs:AutoPOINTs")
	)
)

;*******************************************************************
; Start
;*******************************************************************
(message (cat "\nAutoPOINT-Programm `" #programm "` V" #version 
              "\n~~~~~~~~~~~~~~~~~~~~~~~~\n"
              "für das Mailboxprogramm AmBoS\n\n"
              #programm "\n\nvon Gerhard Lühning"
         )
)
(welcome)

;*******************************************************************
; Pfad abfragen
;*******************************************************************
(set #zielverzeichnis "bbs:AutoPOINTs")
(set #zielverzeichnis	(askdir 
												(prompt (cat "Geben Sie bitte an, in welchen Verzeichnis sich das " #programm "-VERZEICHNIS befindet."))
												(help   (cat "Wenn Sie das " #programm " noch nicht installiert haben, wählen Sie das Verzeichnis, wo das Programm Verzeichnis installiert werden soll (z.B. BBS:AutoPOINTS). Es wird ein Verzeichnis mit den Namen `" #programm " `angelegt"))
												(default #zielverzeichnis)
											)
)

;*******************************************************************
;  Existiert bereits das Zielverzeichnis mit Programm ?
;  -> dann nur Update und kein neues anlinken am Module
;*******************************************************************
(if (= (exists (cat #zielverzeichnis "/" #programm)) 2)
	(
		(if (= (exists (cat #zielverzeichnis "/" #programm "/" #programm)) 1)
			(
				(set #install 0)
				(set #updatetxt "Updaten ")
			)		
		)
	)
)

;*******************************************************************
;  Letzte Abfrage und dann Programm-Dateien kopieren
;*******************************************************************
(set #copyprg 
	(askchoice
		(choices (cat #updatetxt #programm) (cat "Nicht " #updatetxt #programm))
		(prompt "Wollen Sie das AutoPOINT-Prgogramm installieren?")
		(help "Dieses ist ein OnlineStatus-AutoPOINT-Prg. welches dem Point seine Onlinedaten zuschickt, sowie den Boxstatus der PollBox.")
		(default 0)
	)
)
(if(= #copyprg 0)
	(
		(copyfiles (source "Programm") (dest (cat #zielverzeichnis "/" #programm)) (all))
		(if (= #install 1)
			(
				(set #anzahl(run (cat "stack 20000\nAP_OnlineStatus_link " #programm " " #zielverzeichnis "/" #programm)))
				(if(< #anzahl 1)
					(
						;Prg-Installation wurde abgebrochen -> kopierte Files löschen
						(run (cat "delete " #zielverzeichnis "/" #programm "/#?"))
						(set #copyprg -1)
					)
				)
			)
		)

;*******************************************************************
;  Changefile kopieren und anzeigen
;*******************************************************************
		(if(= (exists "Programm/ChangesFiles") 2)
			(
				(copyfiles (source "Programm/ChangesFiles") (dest "bbs:ChangesFiles") (all))
				(if(= (exists "c:ed") 1)
					(run (cat "c:ed Programm/changesfiles/" #changefile))
				)
			)
		)

	)
)
;*******************************************************************
;  Installation/Update fertig
;*******************************************************************
(if(= #copyprg 0)
	(
		(set @default-dest #zielverzeichnis)
		(set #done "Update fertig!")
		(exit #done)
	)
	(
		(set @default-dest "")
		(set #done "Installation abgebrochen!")
		(exit #done (quiet))
	)
)
