;
;----------------------------------------------------------------------------
;
; LS-FTPD - Installer script by Stéphane DUDEZ <sdudez@pcmedia.fr>
;
;----------------------------------------------------------------------------
;
; $VER: Installer script v1.0 for LS-FTPD (03.10.96) © Stéphane DUDEZ
;
;

(set _Version  1)
(set _Revision 1)
(set _Date "03.10.1996")

;*********************
;*   English script  *
;*********************
(if (= @language "english")
    (
    (set default_lang 1)

    (set #presentation
    (CAT "\n\ Welcome to the LS-ftpd install script.\n"
         "\n This script installs LS-FTPD on your Amiga.\n"
         "\n For more informations for LS-ftpd distribution\n"
         "\n please read the 'Readme' file.\n\n"
         "\n LS-FTPD © 1996 by Jean-françois PIK,LOLOSoft 1996."
         "\n\ All Rights reserved."
        )
         )
    (set #DInstalle1 "\n\n\n\nYou already have Date.mcc V")
    (set #DInstalle2 (cat " installed "
                                 ".\n\nDo you want to copy Date.mcc V"))
    (set #DInstalle3 "?\n")
    (set #DInstalle4 (cat " installed "
                                 ".\nDo you wan to copy ls-ftpd V"))
    (set #application-name "LS-FTPD")
    (set #bad-installer
    (cat "You have an old version of 'Installer' program"
         "on your amiga!/n/nThe installation needs version 42.9./n/n"
         "/nCheck your configuration"))
    (set #kick ("\n'LS-FTPD needs at least Kickstart version 39 or greater to works."))
    (set #muiversion "LS-FTPD need at least MUI 3.1 to work.\n" )
    (set #askdir "Choose where LS-FTPD dir have to be created.\n" )
    (set #askdir-help "By default LS-FTPD will be placed in AmiTCP:" )
    (set #askfile-ls "Choose where LS-ftpd daemon must be placed.\n" )
    (set #askfile-help-ls "By default, the 'ls-ftpd' file will be copied in Amitcp:serv/" )
    (set #ask-lang "Choose the language(s) you want to copy." )
    (set #ask-lang-help "The built-in language is english." )
    (set #path-ico "Icons" )
    (set #askfile-help
    (cat "\nIMPORTANT-IMPORTANT-IMPORTANT\n\n"
         "\n the file 'Amitcp:db/inetd.conf' have to be modified:\n"
         "\n at the line:\n"
         "'ftp stream tcp nowait root Amitcp:serv/ftpd ftpd...'\n"
         "\n\n et remplaced by:\n"
         "'ftp stream tcp nowait root AmiTCP:serv/ls-ftpd ls-ftpd...'"
         ))
    ( set #LSdocumentation "Choose the documentation to install." )
    ( set #documentation-help "La documentation par défaut est l'anglais")

)    )
;*********************
;*   french script   *
;*********************

(if (= @language "français")
    (
    (set default_lang 8)

    (set #presentation
    (CAT "\n\ Bienvenue sur le script d'installation de LS-FTPD.\n"
         "\n Ce script installe LS-FTPD sur votre Amiga.\n"
         "\n Pour plus d'information,lisez le fichier 'Readme'"
         "\n pour la distribution de LS-FTPD.\n\n"
         "\n LS-FTPD © 1996 par Jean-françois PIK,LOLOSoft 1996."
         "\n\ Tous droits réservés."
        )
         )
    (set #DInstalle1 "\n\n\n\nVous avez la version de Date.mcc V")
    (set #DInstalle2 (cat " déjà installé "
                                 ".\n\nVoulez-vous le remplacer par Date.mcc V"))
    (set #DInstalle3 "?\n")
    (set #DInstalle4 (cat " déjà installé "
                                 ".\nVoulez-vous le remplacer par ls-ftpd V"))
    (set #application-name "LS-FTPD")
    (set #bad-installer
    (cat "Vous avez une ancienne version du programme 'Installer'"
         "sur votre amiga!/n/nL'installation à besoin de la version 42.9./n/n"
         "/nVérifier votre configuration"))
    (set #kick ("\n'LS-FTPD à besoin du Kickstart version 39 ou plus pour fonctionner."))
    (set #muiversion "LS-FTPD a au minimum besoin de MUI 3.1 pour fonctionner\n" )
    (set #askdir "Indiquez où sera créé le répertoire LS-FTPD.\n" )
    (set #askdir-help "Par défaut LS-FTPD sera installé dans le répertoire AmiTCP:" )
    (set #askfile-ls "Indiquez où sera placé le 'deamon' ls-ftpd.\n" )
    (set #askfile-help-ls "Par défaut le fichier 'deamon' ls-ftpd sera installé dans le répertoire Amitcp:serv/" )
    (set #ask-lang "Choisissez le(s) langage(s) que vous voulez installer" )
    (set #ask-lang-help "Le langage par défaut est l'anglais" )
    (set #path-cat "français" )
    (set #path-ico "Icons" )
    (set #askfile-help
    (cat "\nIMPORTANT-IMPORTANT-IMPORTANT\n\n"
         "\n Le fichier Amitcp:db/inetd.conf devra être modifié:\n"
         "\n à la ligne:\n"
         "'ftp stream tcp nowait root Amitcp:serv/ftpd ftpd...'\n"
         "\n\n et remplacé par:\n"
         "'ftp stream tcp nowait root AmiTCP:serv/ls-ftpd ls-ftpd...'"
         ))
    ( set #LSdocumentation "Séléctionnez la documentation à installer." )
    ( set #documentation-help "La documentation par défaut est l'anglais")

)    )
;
; Installation
; ************
;
(if (<(/ (GETVERSION) 65536) 39)
    (ABORT #kick)
)
(if (< @installer-version 2752521)
    (message (#bad-installer #ApplicationName))
)

(message #presentation)

(welcome)

(if (< (exists "mui:") 2)  (abort #muiversion) )
(if (exists "mui:mui")
 (
  (set vernum (getversion "mui:mui") )
  (set ver (/ vernum 65536)) (set rev (- vernum (* ver 65536) ) )

  (if (= ver 7) (set muiver "2.0") )   (if (= ver 8) (set muiver "2.1") )
  (if (= ver 9) (set muiver "2.2") )   (if (= ver 10) (set muiver "2.3") )
  (if (= ver 11) (set muiver "3.0") )  (if (= ver 12) (set muiver "3.1") )

) )

(if (< ver 11)   (abort #muiversion) )

; Répertoire de destination
; *************************

(set  Path.dest
        ( askdir
                ( prompt #askdir )
                ( help #askdir-help )
                ( default "AmiTCP:" )
        )
)
 ( set Path.dest ( tackon Path.dest "LS-FTPD" ) ) ( makedir Path.dest )

( copyfiles
    ( prompt "")
    ( source "/icons/LS-FTPD.info")
    ( dest (tackon path.dest "/"))
)

; Copie des fichiers principaux
; *****************************

( copyfiles
    
    ( source "/FTPControl" )
    ( dest Path.dest )
    (infos)
)

( copyfiles
    
    ( source "/FTPStat" )
    (dest Path.dest )
    (infos)
)

( copyfiles
    
    ( source "/FTPPrefs" )
    (dest Path.dest )
    (infos)
)
(complete 10)

; Copie du rep Icons
; ******************

( set Path.icon ( tackon Path.dest "Icons" ) ) ( makedir Path.icon )
( copyfiles
    
    ( source "/Icons" )
    ( dest Path.icon )
    (all)
 )
( copyfiles
    
    ( source "/Icons.info" )
    ( dest Path.dest)
 )
(complete 25)

; Copie du deamon ls-ftpd
; ***********************

(set  Path.deamon
        ( askdir
                ( prompt #askfile-ls )
                ( help #askfile-help-ls )
                ( default "AmiTCP:serv" )
        )

)
(set ecrase 1)
    (if (exists (set Path.cat ( tackon Path.dest "/ls-ftpd/ls-ftpd" ) ))
      (
        (set old_version (getversion (set Path.cat ( tackon Path.dest "/ls-ftpd/ls-ftpd" ) )))
        (set old_ver (/ old_version 65536))
        (set old_rev (- old_version (* old_ver 65536)))

        (set new_version (getversion ("/ls-ftpd" )))
        (set new_ver (/ new_version 65536))
        (set new_rev (- new_version (* new_ver 65536)))

        (set ecrase (askbool (prompt "\n\n\n\nVous avez la version de ls-ftpd V"
                                         old_ver "." old_rev #DInstalle4
                                         new_ver "." new_rev #DInstalle3)
                                (help def_help @askbool-help)
                                (default 1)
                                (choices "Oui" "Non"))

        )
      )
    )
(if ecrase
( copyfiles
    
    ( source "/ls-ftpd" )
    ( dest Path.deamon )
    (infos)
))
( copyfiles
    
    ( source "/converter" )
    ( dest Path.deamon )
)
(complete 30)
; Installation des catalogues
; ***************************

(set Path.cat ( tackon Path.dest "Catalogs" ) ) ( makedir Path.dest )
(set locale
        (askoptions
            (prompt #ask-lang)
            (help  #ask-lang-help)
            (choices "English (par défaut)"
                     "Français" ;1
                     "Italiano" ;2
            )
            (default 0)
        )
)
(if (BITAND locale 1)
        (copyfiles
            (source "/catalogs/Français/")
            (dest path.cat )
            (all)
        )
)
(if (BITAND locale 2)
        (copyfiles
            (source "/catalogs/Italiano/")
            (dest path.cat)
            (all)
        )
)
( copyfiles
    ( prompt #copie-icons )
    ( source "/Catalogs.info" )
    ( dest Path.dest )
)
(complete 50)

; Installation de la documentation
; ********************************

(set  Path.choix
        ( askdir
                ( prompt "Où voulez-vous installer la documentation?" )
                ( help "Où vous voulez :))" )
                ( default path.dest )
        )
)

( set  Path.doc ( tackon Path.choix "Docs" ) ) ( makedir Path.choix )

(set documentation
      (askoptions
      (prompt #LSdocumentation)
      (help #documentation-help)
      (choices "English"
               "Français";1
               "Itaniano";2
      )
      (default 0)
      )
)

( set  Path.dest ( tackon Path.dest "LS-FTPD" ) )
( if ( BITAND documentation 0 )
     ( copyfiles
        ( source "/docs/english/")
        ( dest path.doc )
        (all)
     )

     ( copyfiles
        (source "/Docs.info" )
        (dest Path.choix )
     )
)
( if ( BITAND documentation 1 )
     ( copyfiles
        (source "/docs/french/" )
        (dest path.doc )
        (all)
     )

     ( copyfiles
        ( source "/Docs.info" )
        ( dest Path.choix )
     )
)
( if ( BITAND documentation 2 )
     ( copyfiles
        (source "/docs/italiano/")
        (dest path.doc)
        (all)
     )
     ( copyfiles
        ( source "/Docs.info" )
        ( dest Path.choix )
     )
)
(complete 75)
;
;check de date.
;**************

(set ecrase 1)
    (if (exists "mui:libs/mui/date.mcc")
      (
        (set old_version (getversion "mui:libs/mui/date.mcc"))
        (set old_ver (/ old_version 65536))
        (set old_rev (- old_version (* old_ver 65536)))

        (set new_version (getversion "/libs/mui/date.mcc"))
        (set new_ver (/ new_version 65536))
        (set new_rev (- new_version (* new_ver 65536)))

        (set ecrase (askbool (prompt #DInstalle1
                                         old_ver "." old_rev #DInstalle2
                                         new_ver "." new_rev #DInstalle3)
                                (help def_help @askbool-help)
                                (default 1)
                                (choices "Oui" "Non"))

        )
      )
    )
(if ecrase
 (set path.date
     (copyfiles
        (prompt "Installation des librairies MUI")
        (help "Le chemin par défaut est MUI:libs/mui/")
        (source "/libs/mui/")
        (dest "mui:libs/mui/")
        (pattern "#?")
        (infos)
        (confirm)
     )
 )
)
( message #askfile-help )
(complete 100)
(set @default-dest path.choix)

