@ECHO OFF
Setlocal EnableDelayedExpansion

ECHO Installing HPE Insight Control power management...
echo This might take some time please wait...
:: Creating LogFile with time stamp
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)
set mytime=%mytime: =0%

:: Creating LogFile Folder 
if not exist "%SystemDrive%\HPIC\logs\LimitedRelease1" mkdir "%SystemDrive%\HPIC\logs\LimitedRelease1"
set LOGFILE=%SystemDrive%\HPIC\logs\LimitedRelease1\ICpwr_%mydate%_%mytime%.log
ECHO [%DATE% %TIME%] Installing HPE Insight Control power management...                                                                                      >> %LOGFILE% 
echo [%DATE% %TIME%] This might take some time please wait...                                                                                                >> %LOGFILE%
echo [%DATE% %TIME%] LogFile Path: %LOGFILE%                                                                                                                 >> %LOGFILE% 

:: Getting SIM Installation Path from Registry
FOR /F "skip=2 tokens=2*" %%A IN ('REG QUERY "HKLM\Software\Hewlett-Packard\Systems Insight Manager\Settings" /v InstallPath') DO set SIMInstallPath=%%B
echo [%DATE% %TIME%] Reading hpsim Install path from registry                                                                                                >> %LOGFILE% 
echo [%DATE% %TIME%] hpesim InstallPath: %SIMInstallPath%                                                                                                    >> %LOGFILE%
echo [%DATE% %TIME%] Appling Patch.                                                                                                                          >> %LOGFILE%
:: Creating Backup Folder
echo [%DATE% %TIME%]Creating Backup Folder:                                                                                                                  >> %LOGFILE% 
set IPM=Insight Control power management
rem set BackupInstallPath=%SIMInstallPath%
for /D %%D in ("%SIMInstallPath%") do (
	set BackupInstallPath=%%~dpD
)
if not exist "%BackupInstallPath%LimitedRelease1\%IPM%" mkdir "%BackupInstallPath%LimitedRelease1\%IPM%" 
set BackupFolder=%BackupInstallPath%LimitedRelease1\%IPM%
echo [%DATE% %TIME%]Backup Folder Path: %BackupFolder%                                                                                                       >> %LOGFILE% 

:: Copying files
:ipmdce.war
echo [%DATE% %TIME%] Copying ipmdce.war                                                to "%SIMInstallPath%\hpwebadmin\webapps"                              >> %LOGFILE%
copy /Y "%SIMInstallPath%\hpwebadmin\webapps\ipmdce.war"                                  "%BackupFolder%\ipmdce.war"                                        >NUL 2>&1    
copy /Y "%~dp0\File\ipmdce.war"                                                           "%SIMInstallPath%\hpwebadmin\webapps"                              >NUL 2>&1      
if errorlevel 1 goto rollback   

:powermgrVersion.xml

echo [%DATE% %TIME%] Copying powermgrVersion.xml                                       to "%SIMInstallPath%\config\preload-plugins\73\ipm\addfiles"          >> %LOGFILE%
copy /Y "%SIMInstallPath%\config\preload-plugins\73\ipm\addfiles\powermgrVersion.xml"     "%BackupFolder%\powermgrVersion.xml"                               >NUL 2>&1  
copy /Y "%~dp0\File\powermgrVersion.xml"                                                  "%SIMInstallPath%\config\preload-plugins\73\ipm\addfiles"          >NUL 2>&1      
if errorlevel 1 goto rollback   

:ipm_migration.xml

echo [%DATE% %TIME%] Copying ipm_migration.xml                                         to "%SIMInstallPath%\config\migration"                                >> %LOGFILE%
copy /Y "%SIMInstallPath%\config\migration\ipm_migration.xml"                             "%BackupFolder%\ipm_migration.xml"                                 >NUL 2>&1  
copy /Y "%~dp0\File\ipm_migration.xml"                                                    "%SIMInstallPath%\config\migration"                                >NUL 2>&1      
if errorlevel 1 goto rollback  

:index.htm\en
echo [%DATE% %TIME%] Copying index.htm                                                to "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\"   >> %LOGFILE%
if not exist "%BackupFolder%\en" mkdir "%BackupFolder%\en"                                                                                                   >> %LOGFILE%
copy /Y "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\index.htm"       "%BackupFolder%\en\index.htm"                                       >NUL 2>&1 
copy /Y "%~dp0\File\en\index.htm"                                                        "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\"   >NUL 2>&1 
echo [%DATE% %TIME%] errorlevel:%errorlevel%                                                                                                                 >> %LOGFILE% 
if errorlevel 1 goto rollback   

:index.htm\ja
echo [%DATE% %TIME%] Copying index.htm                                                to "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\ja\content\"   >> %LOGFILE%
if not exist "%BackupFolder%\ja" mkdir "%BackupFolder%\ja"                     																			     >> %LOGFILE%
copy /Y "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\ja\content\index.htm"       "%BackupFolder%\ja\index.htm"                                       >NUL 2>&1 
copy /Y "%~dp0\File\ja\index.htm"                                                        "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\ja\content\"   >NUL 2>&1 
echo [%DATE% %TIME%] errorlevel:%errorlevel%                                                                                                                 >> %LOGFILE% 
if errorlevel 1 goto rollback   

:index.htm\zh_CN
echo [%DATE% %TIME%] Copying index.htm                                                to "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\zh_CN\content\" >> %LOGFILE%
if not exist "%BackupFolder%\zh_CN" mkdir "%BackupFolder%\zh_CN"                    																		  >> %LOGFILE%
copy /Y "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\zh_CN\content\index.htm"    "%BackupFolder%\zh_CN\index.htm"                                     >NUL 2>&1 
copy /Y "%~dp0\File\zh_CN\index.htm"                                                     "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\zh_CN\content\" >NUL 2>&1 
echo [%DATE% %TIME%] errorlevel:%errorlevel%                                                                                                                  >> %LOGFILE% 
if errorlevel 1 goto rollback   


:home.htm
echo [%DATE% %TIME%] Copying home.htm                                                to "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\"    >> %LOGFILE%
copy /Y "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\home.htm"       "%BackupFolder%\home.htm"                                            >NUL 2>&1 
copy /Y "%~dp0\File\home.htm"                                                           "%SIMInstallPath%\hpwebadmin\webapps\mxhelp\powermgr\en\content\"    >NUL 2>&1 
echo [%DATE% %TIME%] errorlevel:%errorlevel%                                                                                                                 >> %LOGFILE% 
if errorlevel 1 goto rollback  

echo [%DATE% %TIME%] All files copied successfully.                                                                                                          >> %LOGFILE%

:: For successful PMP Patch installation 7.6.1 registry created in below registry path 
REG ADD "HKLM\SOFTWARE\Hewlett-Packard\IPM\Settings" /v "LRversion" /t REG_SZ /d 7.6.1 /f  >NUL 2>&1 
echo [%DATE% %TIME%] Installation completed successfully.                                                               >> %LOGFILE%
echo Installation completed successfully.
echo.
echo Success>"%SystemDrive%\HPIC\logs\LimitedRelease1\ICpwr_output.txt"
exit /B %ERROELEVEL%   

:rollback
echo Fail>"%SystemDrive%\HPIC\logs\LimitedRelease1\ICpwr_output.txt"
echo [%DATE% %TIME%] Failed to install, see %LOGFILE% for details.                                                                                           >> %LOGFILE%
echo Failed to install, see %LOGFILE% for details.
call "%~dp0\rollback.bat"
EXIT /B %ERRORLEVEL%
endlocal


