(Complete 0)

;(SET #muidir (getassign "MUI") )
;
;(IF (= #muidir "")
;  (SET #muiverrev (getversion "libs:muimaster.library"))
;  (SET #muiverrev (getversion "mui:libs/muimaster.library"))
;)
;
;(SET #muiver (/ #muiverrev 65536))
;(SET #muirev (- #muiverrev (* #muiver 65536) ) )
;
;(message "MUIMaster" #muidir #muiver
;     (getversion "libs:muimaster.library") 
;     (getversion "mui:libs/muimaster.library"))
;
;(IF (< 19 #muiver) 
; (abort "MUI V3.8 must be installed on your system!")
;) 
;
;(if (= #muidir "")
;  (SET #muiedverrev (getversion "libs:mui/Editor.mcc"))
;  (SET #muiedverrev (getversion "mui:libs/mui/Editor.mcc"))
;)
;
;(SET #muiedver (/ #muiedverrev 65536))
;(SET #muiedrev (- #muiedverrev (* #muiver 65536) ) )
;
;(SET #muieditor 0)
;
;( if (> #muiedver 0 ) (SET #muieditor 1 ) )


(welcome)

(message "WARNING !  /  WARNUNG !\n\n"
         "This version of ProfiPacket is not the final release! " 
         "Many things may not work as intended, many other don't "
         "work at all. Docs are not yet available in English! "
         "You have been warned!\n\n"
         "Diese Version von ProfiPacket ist nicht die endgültige "
         "Version! Einige Funktionen könnnen noch nicht so "
         "funktionieren wie beabsichtigt, einige funktionieren "
         "überhaupt noch nicht. Die Programmbeschreibung ist "
         "unvollständig. Sie wurden gewarnt!"
        
 )

(SET InstallPath 
  (ASKDIR
    (PROMPT "Please select directory to install the program. A new drawer "
            "called ProfiPacket will be installed at this location.")
    (HELP "You have to select where to install the programs on your "
          "harddisk.")
    (DEFAULT "sys:")
    )
  )

(SET InstallServers 
  (ASKOPTIONS
  
    (PROMPT "Please select servers you want to install. Install all default "
            "servers if possible, otherwise some functions of the programme "
            "cannot be used.")
    (HELP "ProfiPacket need servers to handle with inputs and outputs of "
          "Packet Radio. You can write your own server to implement functions "
          "which are not yet implemented, but you should install all servers "
          "which are already checked because these are basic functions of the "
          "programme. If you want to install additional features, so you can "
           "check the unchecked servers too.")
    (CHOICES 
      "BBS.server"
      "Chat.server"
      "Converse.server"
      "FileAccess.server"
      "Interlink.server"
      "Mail.server"
      "Miscellaneous.server"
      "UserSettings.server"
     )
    (DEFAULT 222)
     )
  )

(SET @default-dest (TACKON InstallPath ""))

;(SET #muieditorn (TACKON InstallPath "ProfiPacket/MUI/Editor.mcc"))
;
;(IF (= #muieditor 0)
;  (
;
;   (SET #muiedverrev (getversion #muieditorn))
;
;
;
;  (SET #muiedver (/ #muiedverrev 65536))
;  (SET #muiedrev (- #muiedverrev (* #muiver 65536) ) )
;
;  (SET #muieditor 0)
;
;  ( if (> #muiedver 0) (SET #muieditor 2 ) )
; 
;  )
;
;)
;
;(IF (= #muieditor 0)
; ( SET #muieditor 
;   (ASKCHOICE
;  
;    (PROMPT "Please select the location where MCC_Editor class should be "
;            "installed.")
;    (HELP "MCC_Editor is a custom class for Magic User Interface. "
;          "MCC_Editor is needed for ProfiPacket and maybe some other "
;          "applications. If you install it into MUI:LIBS directory "
;          "other applications can access MCC_Editor. If you install "
;          "it in a local directory, MCC_Editor will be deleted if "
;          "ProfiPacket is deleted.")
;    (CHOICES 
;      "                 (no installation )"
;      "LIBS:MUI         (global directory)"
;      "ProfiPacket/MUI  (local  directory)"
;     )
;    (DEFAULT 1)
;     
;   )
; )
;
;) 
;

(SET InstallDir (TACKON InstallPath "ProfiPacket") )

(SET ServerDir (TACKON InstallDir "Servers") )

(SET GlobalDir (TACKON InstallDir "GLOBAL") )

(SET TNCInitDir (TACKON InstallDir "Text/TNC_Init") )

(SET SaveDir (TACKON InstallDir "Save") )

(SET UserDir (TACKON InstallDir "User") )

(SET DataDir (TACKON InstallDir "Data") )

(SET TextDir (TACKON InstallDir "Text") )

(Set FontDir (TACKON InstallDir "Data/PCFont") )

(Set CatalogDir (TACKON InstallDir "Data/Catalogs") )

(Set HelpDir (TACKON InstallDir "Text/Help") )

(Set BBSDir (TACKON InstallDir "Data/BBS") )

(Set DocsDir (TACKON InstallDir "Docs") )

(Set ContribDir (TACKON InstallDir "Contrib") )

(Complete 5)

(Working)

(IF (NOT (EXISTS (InstallDir))) 
  
  (
    (MAKEDIR (InstallDir) (INFOS)  )

    )

  )




  


  (IF (NOT (EXISTS (DocsDir)))
    
    (
      (MAKEDIR (DocsDir) (INFOS) )
      )
    )

  (IF (NOT (EXISTS (SaveDir)))
    
    (
      (MAKEDIR (SaveDir))
      )
    )

  (IF (NOT (EXISTS (UserDir)))
    
    (
      (MAKEDIR (UserDir))
      )
    )

  (IF (NOT (EXISTS (DataDir)))
  
    (  
      (MAKEDIR (DataDir))
      )
      
    )

  (IF (NOT (EXISTS (BBSDir)))
    
    (
      (MAKEDIR (BBSDir))
      )
  
    )
    
  (IF (NOT (EXISTS (TextDir)))
  
    ( 
      (MAKEDIR (TextDir))
      )
      
    )

  (IF (NOT (EXISTS (CatalogDir)))
  
    ( 
      (MAKEDIR (CatalogDir))
      )
    )
      
  (COPYFILES 
         (SOURCE "Profi_Packet/Catalogs")
         (DEST CatalogDir)    
         (ALL)
         )

  (IF (NOT (EXISTS (HelpDir)))
  
    ( 
      (MAKEDIR (HelpDir))
      )
      
    )
  (COPYFILES 
         (SOURCE "Profi_Packet/Help")
         (DEST HelpDir)    
         (ALL)
         )

  (COPYFILES 
         (SOURCE "Profi_Packet/Docs")
         (DEST DocsDir)    
         (ALL)
         )

  (IF (NOT (EXISTS (ContribDir)))
  
    ( 
      (MAKEDIR (ContribDir))
      )
    )
      
  (COPYFILES 
         (SOURCE "Profi_Packet/Contrib")
         (DEST ContribDir)    
         (ALL)
         )


  (Complete 30)

  (IF (NOT (EXISTS (TNCInitDir)))
    
    (
      (MAKEDIR (TNCInitDir))
      (COPYFILES 
         (SOURCE "Profi_Packet/TNC_Inits")
         (DEST TNCInitDir)    
         (ALL)
         )
      )
    )

  (Complete 35)

  (IF (NOT (EXISTS (GlobalDir)))
    
    (
      (MAKEDIR (GlobalDir))
      (COPYFILES 
         (SOURCE "Profi_Packet/GLOBAL")
         (DEST GlobalDir)    
         (ALL))
      )

    )

  (Complete 40)
  
  (COPYFILES
     (SOURCE "Profi_Packet/")
     (DEST InstallDir)
     (PATTERN "(%|ProfiPacket|ProfiPacket.info)")
     )

  (Complete 60)
  
  (IF (EXISTS (ServerDir))
    
    (
      (DELETE (TACKON ServerDir "Chat.server")  )
      (DELETE (TACKON ServerDir "BBS.server") )
      (DELETE (TACKON ServerDir "Mail.server")  )
      (DELETE (TACKON ServerDir "Converse.server") )
      (DELETE (TACKON ServerDir "FileAccess.server")  )
      (DELETE (TACKON ServerDir "InterLink.server") )
      (DELETE (TACKON ServerDir "Miscellaneous.server")  )
      (DELETE (TACKON ServerDir "UserAccess.server")  )
      

      )

    (MAKEDIR ServerDir)
    )

  (COmplete 65)

  (IF (NOT (EXISTS (FontDir))) (
    (MAKEDIR "FONTS:PCFont")
    (COPYFILES 
      (SOURCE "Profi_Packet/PCFont")
      (DEST FontDir)
      (ALL)
      )
    (COPYFILES 
      (SOURCE "Profi_Packet/")
      (DEST DataDir)
      (PATTERN "PCFont.font")
      )
    )
  )

  

  (Complete 70)


  (set i 0)
  (set ServerPat "(%")

  (while (set ServerName (select i 
      "BBS.server"
      "Chat.server"
      "Converse.server"
      "FileAccess.server"
      "Interlink.server"
      "Mail.server"
      "Miscellaneous.server"
      "UserSettings.server"
      ""
      )
    
     )
    (( IF (IN InstallServers i)
    ((SET ServerPat (CAT ServerPat "|" ServerName))
    ))
    (set i (+ i 1))
  ))

  (SET ServerPat (CAT ServerPat ")"))

  (Complete 80)
 
  (Copyfiles
    (Source "Profi_Packet/Servers")
    (DEST ServerDir)
    (PATTERN ServerPat)
    )

  
  (RUN (CAT "Profi_Packet/Contrib/ConvertUsers "
        (TACKON DataDir "users.dat" ) ))

  

(Complete 90)

;( if (= #muieditor 2)
; ( 
;  ( set #muieddest (TACKON InstallDir "MUI") )
;  (IF (NOT (EXISTS (#muieddest)))
;    
;    (
;      (MAKEDIR (#muieddest))
;      )
;    )  
; )
;)
;
;( if (= #muieditor 1) (set #muieddest "MUI:LIBS/MUI") )
;
;( if (<> #muieditor 0)
; (
;  (Copylib
;    (Source "MCC_Editor/Editor.mcc")
;    (DEST #muieddest)
;    )
;
;  (Copylib
;    (Source "MCC_Editor/Editor.mcp")
;    (DEST #muieddest)
;    )
;  )
;)

(complete 100)


