;NSIS Modern User Interface version 1.62
;Basic Install Script
;Written by 2shepi

!define MUI_PRODUCT "MaintLog" 
!define MUI_VERSION "2.0"

!include "MUI.nsh"

;--------------------------------
;Configuration

  ;General
  OutFile "setup.exe"

  ;Folder selection page
  InstallDir "$PROGRAMFILES\${MUI_PRODUCT}"

  !define TEMP $R0

;--------------------------------
;Modern UI Configuration
  
  !define MUI_LICENSEPAGE
  !define MUI_COMPONENTSPAGE
  !define MUI_DIRECTORYPAGE
  !define MUI_STARTMENUPAGE
  !define MUI_FINISHPAGE
    !define MUI_FINISHPAGE_RUN "$INSTDIR\maintlog.cmd"

  !define MUI_ABORTWARNING
  
  !define MUI_UNINSTALLER
  !define MUI_UNCONFIRMPAGE
  
  ;Modern UI System
  !insertmacro MUI_SYSTEM

  ;ZipDLL MUI Mode
  !include "${NSISDIR}\Include\ZipDLL.nsh"

;--------------------------------
;Languages
 
  !insertmacro MUI_LANGUAGE "German"

;--------------------------------
;Language Strings

  ;Description
  LangString DESC_SecCopyUI1 ${LANG_GERMAN} "Kopiert die benötigen Programmdateien."
  LangString DESC_SecCopyUI2 ${LANG_GERMAN} "Erstellt eine Verknüpfung auf dem Desktop."

;--------------------------------
;Data
  
  LicenseData "${NSISDIR}\Examples\MaintLog RC1\License.txt"
  
;--------------------------------
;Installer Sections

Section "MaintLog" SecCopyUI1

  SectionIn RO
  SetOutPath "$INSTDIR"
  !insertmacro MUI_ZIPDLL_EXTRACTALL "setup.zip" "$INSTDIR\"
  
  ;Create uninstaller
  WriteUninstaller "$INSTDIR\Uninstall.exe"

SectionEnd

Section "Desktopverknüpfung" SecCopyUI2

  ;create desktop shortcut
  CreateShortCut "$DESKTOP\${MUI_PRODUCT}.lnk" "$INSTDIR\maintlog.cmd" ""
  
  ;Create uninstaller
  WriteUninstaller "$INSTDIR\Uninstall.exe"

SectionEnd
 
;Display the Finish header
;Insert this macro after the sections if you are not using a finish page
!insertmacro MUI_SECTIONS_FINISHHEADER

;--------------------------------
;Descriptions

!insertmacro MUI_FUNCTIONS_DESCRIPTION_BEGIN
  !insertmacro MUI_DESCRIPTION_TEXT ${SecCopyUI1} $(DESC_SecCopyUI1)
  !insertmacro MUI_DESCRIPTION_TEXT ${SecCopyUI2} $(DESC_SecCopyUI2)
!insertmacro MUI_FUNCTIONS_DESCRIPTION_END

;--------------------------------
;Uninstaller Section

Section "Uninstall"

  Delete "$INSTDIR\MAINTLOG.exe"
  Delete "$INSTDIR\maintlog.ini"
  Delete "$INSTDIR\maintlog.cmd"
  Delete "$INSTDIR\MAINTLOG.exe.manifest"
  Delete "$INSTDIR\Uninstall.exe"
  Delete "$DESKTOP\${MUI_PRODUCT}.lnk"

  ;Remove shortcut
  ReadRegStr ${TEMP} HKCU "Software\${MUI_PRODUCT}" "Start Menu Folder"
  ;ReadRegStr ${MUI_TEMP1} HKCU "Software\${MUI_PRODUCT}" "Start Menu Folder"

  StrCmp ${TEMP} "" noshortcuts
  
    Delete "$SMPROGRAMS\${TEMP}\MaintLog.lnk"
    Delete "$SMPROGRAMS\${TEMP}\Uninstall.lnk"
    RMDir "$SMPROGRAMS\${TEMP}" ;Only if empty, so it won't delete other shortcuts
    
  noshortcuts:

  RMDir "$INSTDIR"
  
  DeleteRegValue HKCU "Software\${MUI_PRODUCT}" "Start Menu Folder"


  ;Display the Finish header
  !insertmacro MUI_UNFINISHHEADER

SectionEnd
 