@ECHO OFF
setlocal enabledelayedexpansion

REM ====================================================
REM   Setting Required Variable
REM ====================================================
SET CRM.ERR.NUM=0
SET CRM.ERR.MSG=NO ERROR DURING %~n0 PROCESSING
SET RSRV_NWK_FLAG=C:\System.sav\Flags\Reserve_Driver.flg
REM ====================================================
REM   START 
REM ====================================================

REM ====================================================
REM Check if Network Driver need to be reserved or not
REM ====================================================
REM ECHO [%time%][%~n0] Info, Check if %RSRV_NWK_FLAG% exist for Network Driver Reservation
REM IF NOT exist %RSRV_NWK_FLAG% (
REM	ECHO [%time%][%~n0] Info, %RSRV_NWK_FLAG% don't exist, no need for Network Driver Reservation
REM	ECHO [%time%][%~n0] Info, Remove SetDevicePath.cmd from PBR Point B & D since no Network Driver Reservation
REM	del /f /q C:\Recovery\OEM\Point_B\SetDevicePath.cmd
REM	del /f /q C:\Recovery\OEM\Point_D\SetDevicePath.cmd
REM	GOTO END
REM )
REM ECHO [%time%][%~n0] %RSRV_NWK_FLAG% exist, Reserve Network Driver

REM ====================================================
REM Backup C:\SWSetup\DRV\Network
REM ====================================================
ECHO [%time%][%~n0] Info, Check if C:\SWSetup\DRV\Network exist
SET CRM_SRC=C:\SWSetup\DRV\Network
SET CRM_DST=C:\HP\Network_Driver
IF NOT exist %CRM_SRC% (
	ECHO [%time%][%~n0] Info, %CRM_SRC% don't exist
	GOTO END		
)

ECHO [%time%][%~n0] Info, Backup C:\SWSetup\DRV\Network
ECHO [%time%][%~n0] Info, xcopy /e /s /v /y /h /r %CRM_SRC%\*.* %CRM_DST%\*.*
xcopy /e /s /v /y /h /r %CRM_SRC%\*.* %CRM_DST%\*.*
IF NOT [%ERRORLEVEL%]==[0] (
	SET CRM.ERR.NUM=795
	SET CRM.ERR.MSG=FAIL : xcopy /e /s /v /y /h /r %CRM_SRC%\*.* %CRM_DST%\*.*
	goto END
)

:END
REM ====================================================
REM  Error detection
REM ====================================================
IF Not [%CRM.ERR.NUM%]==[0] (	
	ECHO.
	ECHO ******************************************************************************
	ECHO * ERROR: %CRM.ERR.NUM%
	ECHO *      : %CRM.ERR.MSG%
	ECHO ******************************************************************************
	ECHO.

	ECHO [%time%][%~n0] %CRM.ERR.MSG%
)

ECHO [%~n0] %date% %time%
ECHO ********** FINISH %~nx0 **********
ECHO RETURN CODE - %CRM.ERR.NUM%

REM EXIT THE SCRIPT AND RETURN THE ERROR LEVEL
EXIT /b %CRM.ERR.NUM%
