;*
;*   PROJECT CenterWindow
;*
;*   Copyright © 1996 Phokham Nonava
;*   All Rights Reserved
;*
;*   $VER: Install.script 1.7 (17.03.96)
;*
;*   -: Installerfile.
;*   -: Language=deutsch.
;*

;==========================================================================
; Set global variables.

(set copyright (cat @app-name " © 1996 Phokham Nonava"))
(set @default-dest "SYS:WBStartup")
(set docsdir       "HELP:deutsch")
(set mainfile      "Install/CenterWindow")
(set docfile       "Install/Deutsch/CenterWindow.guide")
(set historyfile   "Install/Deutsch/CenterWindow.history")
; If copyprog=1 then we have to copy the file.
(set copyprog -1)
(set progver "1.1")

;==========================================================================
; Set text for German (default) installation.

(set badkicktxt
    (cat "Um " @app-name " zu benutzen,\nbenötigen Sie Kickstart 2.x oder höher!\nBeende Installation!")
)
(set installtxt
    (cat "\nInstallation von " @app-name "\n\n\n"
        "Sie können diese Version über Ihre Alte installieren.\n"
        "Neuere Programmteile werden nicht überschrieben.\n\n"
        "Bitte lesen Sie die Anleitung sorgfälltig durch.\n\n\n"
        copyright "\n"
        "Alle Rechte vorbehalten"
    )
)
(set destdirtxt
    (cat "In welchem Verzeichnis soll " @app-name " installiert werden?\n\n"
        "Es wird KEIN neues Verzeichnis erstellt!\n"
    )
)
(set destdocstxt "In welchem Verzeichnis sollen die Dokumente installiert werden?\n")
(set copytxt "Kopiere Datei ")
(set lowerver
    (cat "Sie benutzen eine neuere Version von " @app-name ".\n\n"
        "Es wurde keine Datei kopiert. Das System wurde so belassen, wie es war."
    )
)

;==========================================================================
; Procedurepart.

(procedure checkversion
    (if (< (getversion mainfile) (getversion (tackon @default-dest @app-name)))
        (
            (set copyprog 0)
        )
        (
            (set copyprog 1)
        )
    )
)

;==========================================================================
; Check if we run under OS 2.x or higher.

(if (< (/ (getversion) 65536) 37)
    (
        (abort badkicktxt)
        (exit)
    )
)

;==========================================================================
; Mainpart.

(complete 0)

; Print informations about the program.
(message installtxt)

(complete 10)

; Let the user select the destination directory.
(set @default-dest
    (askdir
        (prompt destdirtxt)
        (help @askdir-help)
        (default @default-dest)
    )
)

(complete 20)

; Check the type of the selected drawer.
(set desttype
    (exists
        (tackon @default-dest @app-name)
    )
)

(complete 30)

; There is NOT any version installed. Do this part.
(if (= desttype 0)
    (
        (copylib
            (prompt copytxt mainfile)
            (help @copylib-help)
            (source mainfile)
            (dest @default-dest)
            (confirm)
            (infos)
        )
        (complete 45)
        (set docsdir
            (askdir
                (prompt destdocstxt)
                (help @askdir-help)
                (default docsdir)
            )
        )
        (complete 60)
        (copylib
            (prompt copytxt docfile)
            (help @copylib-help)
            (source docfile)
            (dest docsdir)
            (confirm)
            (infos)
        )
        (complete 80)
        (copylib
            (prompt copytxt historyfile)
            (help @copylib-help)
            (source historyfile)
            (dest docsdir)
            (confirm)
            (infos)
        )
    )
)

; The main file is installed. User will be able to select the docs dir.
(if (= desttype 1)
    (
        (checkversion)
        (complete 60)
        (if (= copyprog 1)
            (
                (copylib
                    (prompt copytxt mainfile)
                    (help @copylib-help)
                    (source mainfile)
                    (dest @default-dest)
                    (confirm)
                )
                (complete 70)
                (set docsdir
                    (askdir
                        (prompt destdocstxt)
                        (help @askdir-help)
                        (default docsdir)
                    )
                )
                (complete 80)
                (copylib
                    (prompt copytxt docfile)
                    (help @copylib-help)
                    (source docfile)
                    (dest docsdir)
                    (confirm)
                )
                (complete 90)
                (copylib
                    (prompt copytxt historyfile)
                    (help @copylib-help)
                    (source historyfile)
                    (dest docsdir)
                    (confirm)
                )
            )
            (
                (complete 100)
                (abort lowerver)
            )
        )
    )
)

; The selected drawer contains the program folder.
(if (= desttype 2)
    (
        (set @default-dest
            (tackon @default-dest @app-name)
        )
        (complete 40)
        (checkversion)
        (complete 60)
        (if (= copyprog 1)
            (
                (copylib
                    (prompt copytxt mainfile)
                    (help @copylib-help)
                    (source mainfile)
                    (dest @default-dest)
                    (confirm)
                )
                (complete 70)
                (set docsdir
                    (askdir
                        (prompt destdocstxt)
                        (help @askdir-help)
                        (default @default-dest)
                    )
                )
                (complete 80)
                (copylib
                    (prompt copytxt docfile)
                    (help @copylib-help)
                    (source docfile)
                    (dest docsdir)
                    (confirm)
                )
                (complete 90)
                (copylib
                    (prompt copytxt historyfile)
                    (help @copylib-help)
                    (source historyfile)
                    (dest docsdir)
                    (confirm)
                )
            )
            (
                (complete 100)
                (abort lowerver)
            )
        )
    )
)

(complete 100)
(exit)
