# --------------------------------------------------------------
# Script disinstallazione MTConnect Agent
# S.E.L. e G.A.R. - Steamware 2016.12.09
# --------------------------------------------------------------

# recupero path da cui avviato lo script
$scriptPath = split-path -parent $MyInvocation.MyCommand.Definition



Clear-Host
Write-Host "--------------------"
Write-Host "- PREREQUISITO"
Write-Host "--------------------"
Write-Host "Chiudere console servizi se fosse rimasta aperta..."
Write-Host "..."
Start-Sleep -s 1
Write-Host "..."
Start-Sleep -s 1
Write-Host "..."

# Fase 1: chiedo quale tipo di CNC sia (FANUC / ...)
Write-Host "--------------------"
Write-Host "- ADAPTER AMMESSI"
Write-Host "--------------------"
Write-Host "1 - FANUC CMS"
Write-Host "2 - ESAGV (SCM)"
Write-Host "3 - SIEMENS (CMS)"
$adapter = read-host "Prego scegliere tipologia di ADAPTER da installare (default: 1 = Fanuc)"
if(!$adapter) 
{
    $adapter = "1"
}

# directory di default...
$AdpDir = ""
switch($adapter)
{
    1 { $AdpDir = "FANUC" }
    2 { $AdpDir = "ESA" }
    3 { $AdpDir = "SIEMENS" }
    default { $AdpDir = "FANUC" }
}

# Fase 2: verifico folder install
Write-Host "--------------------"
Write-Host "- Posizione di installazione"
Write-Host "--------------------"
$tgtFolder = read-host "Prego indicare dir installazione (def - C:\CMS\MTC\)"
if(!$tgtFolder) 
{
    $tgtFolder = "C:\CMS\MTC\"
}

Start-Sleep -s 1
if(Test-Path $tgtFolder)
{
    # fase 3: stoppo servizio
    Write-Host "Cerco AGENT MTC installato"
    try
    {
        Get-Service "MTConnect Agent" | Stop-Service
    }
    catch
    {
        Write-Host "Servizio non trovato"
    }
    Start-Sleep -s 1

    # fase 4: disinstallo servizio
    Write-Host "Sto de-registrando servizio AGENT MTC"
    cd $tgtFolder
    if(Test-Path $tgtFolder"\AGENT\bin")
    {
        try
        {
            cd "AGENT\bin"
            .\agent.exe remove .\agent.cfg
        }
        catch
        {
            Write-Host "Agent non trovato / non disinstallato" 
        }
    }
    Start-Sleep -s 1

    # fase 5: faccio un MOVE della cartella master nello stesso percorso come backup con data-ora
    $timer = (Get-Date -Format yyyyMMdd_HHmmss)
    $oldDir = $tgtFolder -replace ".{1}$"
    $newName = "MTC_"+$timer
    # attendo qualche secondo x spostare...
    cd $scriptPath
    Start-Sleep -s 1
    # continuo
    Write-Host "Preparazione backup directory $oldDir come $newName"
    cd C:\
    Start-Sleep -s 1
    Rename-Item $oldDir $newName
    Write-Host "Disinstallazione completata"
    cd $scriptPath
}
else
{
    Write-Host "Directory non trovata, interrompo disinstallazione"
}