@echo off
title Install Agent Cetak - PC Kasir MARNI
REM ============================================================
REM Jalankan SEKALI di setiap PC kasir.
REM Hasil install selalu ke: C:\tool_printer
REM ============================================================
setlocal EnableExtensions
set "SRC=%~dp0"
set "DEST=C:\tool_printer"

echo.
echo  INSTALL AGENT CETAK - PC KASIR (MARNI Jimbaran-Bali)
echo  Sumber : %SRC%
echo  Tujuan : %DEST%
echo.

if not exist "%SRC%pos_local_print_agent.ps1" (
    echo ERROR: File pos_local_print_agent.ps1 tidak ada di folder ini.
    pause
    exit /b 1
)

if not exist "%DEST%" mkdir "%DEST%"

copy /Y "%SRC%pos_local_print_agent.ps1" "%DEST%\" >nul
copy /Y "%SRC%START-PRINT-AGENT.bat" "%DEST%\" >nul
if exist "%SRC%START-PRINT-AGENT-BG.bat" copy /Y "%SRC%START-PRINT-AGENT-BG.bat" "%DEST%\" >nul
copy /Y "%SRC%AKTIFKAN-PRINTER.bat" "%DEST%\" >nul
if exist "%SRC%wgposprint-protocol-handler.bat" copy /Y "%SRC%wgposprint-protocol-handler.bat" "%DEST%\" >nul
if exist "%SRC%REGISTER-PRINT-PROTOCOL.bat" copy /Y "%SRC%REGISTER-PRINT-PROTOCOL.bat" "%DEST%\" >nul
if exist "%SRC%INSTALL-PRINTER-SCHEDULER.bat" copy /Y "%SRC%INSTALL-PRINTER-SCHEDULER.bat" "%DEST%\" >nul
if exist "%SRC%README-PRINT-AGENT.txt" copy /Y "%SRC%README-PRINT-AGENT.txt" "%DEST%\" >nul
if exist "%SRC%CARA-INSTAL-POS-PRINTER.txt" copy /Y "%SRC%CARA-INSTAL-POS-PRINTER.txt" "%DEST%\" >nul

set "HANDLER=%DEST%\wgposprint-protocol-handler.bat"
set "REGFILE=%TEMP%\wgposprint_protocol.reg"

(
echo Windows Registry Editor Version 5.00
echo.
echo [HKEY_CURRENT_USER\Software\Classes\wgposprint]
echo @="URL:MARNI POS Print Agent"
echo "URL Protocol"=""
echo.
echo [HKEY_CURRENT_USER\Software\Classes\wgposprint\DefaultIcon]
echo @="%%SystemRoot%%\\System32\\shell32.dll,13"
echo.
echo [HKEY_CURRENT_USER\Software\Classes\wgposprint\shell\open\command]
echo @="\"%HANDLER:\=\\%\" \"%%1\""
) > "%REGFILE%"

regedit /s "%REGFILE%"
del "%REGFILE%" >nul 2>&1

set "STARTUP=%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup"
if exist "%STARTUP%" if exist "%DEST%\START-PRINT-AGENT-BG.bat" (
    powershell -NoProfile -Command "$s=(New-Object -ComObject WScript.Shell).CreateShortcut('%STARTUP%\MARNI Print Agent.lnk'); $s.TargetPath='%DEST%\START-PRINT-AGENT-BG.bat'; $s.WorkingDirectory='%DEST%'; $s.WindowStyle=7; $s.Save()" >nul 2>&1
)

echo.
echo  BERHASIL.
echo  - File agent: %DEST%
echo  - Protokol  : wgposprint://start
echo  - Port      : 127.0.0.1:19500
echo.
echo  Test sekarang? (Y/N)
set /p GO=
if /I "%GO%"=="Y" (
    if exist "%DEST%\START-PRINT-AGENT-BG.bat" start "" "%DEST%\START-PRINT-AGENT-BG.bat"
    timeout /t 2 >nul
    start "" "wgposprint://start"
)

echo.
pause
endlocal
