#Requires -RunAsAdministrator <# .SYNOPSIS Update Playwright Browsers (Global Location) .DESCRIPTION Actualizeaza browserele Playwright in locatia globala Foloseste aceasta comanda pentru update-uri de browsere #> $ErrorActionPreference = "Stop" $ServiceName = "BTGOTelegramBot" function Write-ColorOutput { param([string]$Message, [string]$Prefix = "") $color = switch ($Prefix) { "[OK]" { "Green" } "[INFO]" { "Cyan" } "[EROARE]" { "Red" } "[AVERTIZARE]" { "Yellow" } default { "White" } } if ($Prefix) { Write-Host "$Prefix " -ForegroundColor $color -NoNewline Write-Host $Message } else { Write-Host $Message -ForegroundColor $color } } Write-Host "" Write-Host ("=" * 80) -ForegroundColor Cyan Write-Host "UPDATE PLAYWRIGHT BROWSERS" -ForegroundColor Yellow Write-Host ("=" * 80) -ForegroundColor Cyan Write-Host "" # Verifică environment variable $globalBrowserPath = [System.Environment]::GetEnvironmentVariable("PLAYWRIGHT_BROWSERS_PATH", [System.EnvironmentVariableTarget]::Machine) if (-not $globalBrowserPath) { $globalBrowserPath = "C:\playwright-browsers" Write-ColorOutput "PLAYWRIGHT_BROWSERS_PATH nu este setat. Folosim: $globalBrowserPath" -Prefix "[AVERTIZARE]" # Setează environment variable [System.Environment]::SetEnvironmentVariable("PLAYWRIGHT_BROWSERS_PATH", $globalBrowserPath, [System.EnvironmentVariableTarget]::Machine) Write-ColorOutput "Environment variable setata" -Prefix "[OK]" } $env:PLAYWRIGHT_BROWSERS_PATH = $globalBrowserPath Write-ColorOutput "Locatie browsere: $globalBrowserPath" -Prefix "[INFO]" # Creează director dacă nu există if (-not (Test-Path $globalBrowserPath)) { New-Item -ItemType Directory -Path $globalBrowserPath -Force | Out-Null icacls $globalBrowserPath /grant "SYSTEM:(OI)(CI)F" /T 2>&1 | Out-Null Write-ColorOutput "Director creat cu permisiuni SYSTEM" -Prefix "[OK]" } # Update browsere Write-Host "" Write-ColorOutput "Instalare/Update browsere Playwright..." -Prefix "[INFO]" Write-Host "Aceasta poate dura 1-2 minute..." -ForegroundColor Gray Write-Host "" try { python -m playwright install chromium if ($LASTEXITCODE -ne 0) { throw } Write-Host "" Write-ColorOutput "Browsere actualizate cu succes!" -Prefix "[OK]" } catch { Write-ColorOutput "Update-ul browserelor a esuat!" -Prefix "[EROARE]" Read-Host "`nApasa Enter pentru a inchide" exit 1 } # Restart serviciu dacă rulează $service = Get-Service -Name $ServiceName -ErrorAction SilentlyContinue if ($service) { Write-Host "" Write-ColorOutput "Restart serviciu..." -Prefix "[INFO]" if ($service.Status -eq "Running") { Restart-Service -Name $ServiceName -Force Start-Sleep -Seconds 3 $service = Get-Service -Name $ServiceName if ($service.Status -eq "Running") { Write-ColorOutput "Serviciu restartat cu succes!" -Prefix "[OK]" } else { Write-ColorOutput "Serviciul nu a pornit" -Prefix "[AVERTIZARE]" } } else { Write-ColorOutput "Serviciul nu rula" -Prefix "[INFO]" } } Write-Host "" Write-Host ("=" * 80) -ForegroundColor Green Write-Host "[SUCCES] BROWSERE ACTUALIZATE!" -ForegroundColor Green Write-Host ("=" * 80) -ForegroundColor Green Read-Host "`nApasa Enter pentru a inchide"