diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..2914c2c --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,8 @@ +{ + "permissions": { + "allow": [ + "Bash(python3 -c \":*)", + "Bash(python3:*)" + ] + } +} diff --git a/auto-update — копия (2).bat b/auto-update — копия (2).bat new file mode 100644 index 0000000..db1e804 --- /dev/null +++ b/auto-update — копия (2).bat @@ -0,0 +1,53 @@ +@echo off +setlocal + +set VERSION_URL=https://git.ihateamerica.ru/caps_enhancer/version.json +set ZIP_URL=https://git.ihateamerica.ru/caps_enhancer/caps-enhancer.zip +set TMP_ZIP=%TEMP%\caps-enhancer-update.zip +set TMP_VER=%TEMP%\caps-ver.json +set TMP_LOC=%TEMP%\caps-loc.txt +set TMP_FIL=%TEMP%\caps-fil.txt + +set EXT_DIR=%~dp0 +if "%EXT_DIR:~-1%"=="\" set EXT_DIR=%EXT_DIR:~0,-1% + +findstr "version" "%EXT_DIR%\manifest.json" > "%TMP_LOC%" +findstr /v "manifest" "%TMP_LOC%" > "%TMP_FIL%" +for /f "usebackq tokens=2 delims=:," %%v in ("%TMP_FIL%") do set LOCAL_VER=%%v +set LOCAL_VER=%LOCAL_VER: =% +set LOCAL_VER=%LOCAL_VER:"=% + +curl -sf "%VERSION_URL%" -o "%TMP_VER%" +if errorlevel 1 ( + echo [ERROR] Server unavailable + goto :end +) +for /f "usebackq tokens=2 delims=:}" %%v in ("%TMP_VER%") do set REMOTE_VER=%%v +set REMOTE_VER=%REMOTE_VER: =% +set REMOTE_VER=%REMOTE_VER:"=% + +del "%TMP_LOC%" "%TMP_FIL%" "%TMP_VER%" 2>nul + +echo Local: %LOCAL_VER% Remote: %REMOTE_VER% + +if "%LOCAL_VER%"=="%REMOTE_VER%" ( + echo [OK] Already up to date + goto :end +) + +echo [INFO] Updating %LOCAL_VER% -^> %REMOTE_VER% + +curl -f "%ZIP_URL%" -o "%TMP_ZIP%" +if errorlevel 1 ( + echo [ERROR] Download failed + goto :end +) + +tar -xf "%TMP_ZIP%" -C "%EXT_DIR%" +del "%TMP_ZIP%" + +echo [OK] Updated to %REMOTE_VER%. Reload extension in chrome://extensions + +:end +endlocal +pause diff --git a/auto-update.bat b/auto-update.bat index c09cfaf..db1e804 100644 --- a/auto-update.bat +++ b/auto-update.bat @@ -3,38 +3,50 @@ setlocal set VERSION_URL=https://git.ihateamerica.ru/caps_enhancer/version.json set ZIP_URL=https://git.ihateamerica.ru/caps_enhancer/caps-enhancer.zip +set TMP_ZIP=%TEMP%\caps-enhancer-update.zip +set TMP_VER=%TEMP%\caps-ver.json +set TMP_LOC=%TEMP%\caps-loc.txt +set TMP_FIL=%TEMP%\caps-fil.txt + set EXT_DIR=%~dp0 +if "%EXT_DIR:~-1%"=="\" set EXT_DIR=%EXT_DIR:~0,-1% -:: Читаем локальную версию из manifest.json -for /f "delims=" %%v in ('powershell -NoProfile -Command "(Get-Content '%EXT_DIR%manifest.json' | ConvertFrom-Json).version"') do set LOCAL_VER=%%v +findstr "version" "%EXT_DIR%\manifest.json" > "%TMP_LOC%" +findstr /v "manifest" "%TMP_LOC%" > "%TMP_FIL%" +for /f "usebackq tokens=2 delims=:," %%v in ("%TMP_FIL%") do set LOCAL_VER=%%v +set LOCAL_VER=%LOCAL_VER: =% +set LOCAL_VER=%LOCAL_VER:"=% -:: Читаем удалённую версию -for /f "delims=" %%v in ('curl -sf "%VERSION_URL%"') do set REMOTE_JSON=%%v -for /f "delims=" %%v in ('powershell -NoProfile -Command "'%REMOTE_JSON%' | ConvertFrom-Json | Select-Object -ExpandProperty version"') do set REMOTE_VER=%%v - -if not defined REMOTE_VER ( - echo [ОШИБКА] Не удалось получить версию с сервера. +curl -sf "%VERSION_URL%" -o "%TMP_VER%" +if errorlevel 1 ( + echo [ERROR] Server unavailable goto :end ) +for /f "usebackq tokens=2 delims=:}" %%v in ("%TMP_VER%") do set REMOTE_VER=%%v +set REMOTE_VER=%REMOTE_VER: =% +set REMOTE_VER=%REMOTE_VER:"=% + +del "%TMP_LOC%" "%TMP_FIL%" "%TMP_VER%" 2>nul + +echo Local: %LOCAL_VER% Remote: %REMOTE_VER% if "%LOCAL_VER%"=="%REMOTE_VER%" ( - echo [OK] Версия актуальная: %LOCAL_VER% + echo [OK] Already up to date goto :end ) -echo [INFO] Обновление: %LOCAL_VER% --^> %REMOTE_VER% +echo [INFO] Updating %LOCAL_VER% -^> %REMOTE_VER% -set TMP_ZIP=%TEMP%\caps-enhancer-update.zip curl -f "%ZIP_URL%" -o "%TMP_ZIP%" if errorlevel 1 ( - echo [ОШИБКА] Не удалось скачать ZIP. + echo [ERROR] Download failed goto :end ) -tar -xf "%TMP_ZIP%" -C "%EXT_DIR%" --overwrite +tar -xf "%TMP_ZIP%" -C "%EXT_DIR%" del "%TMP_ZIP%" -echo [OK] Обновлено до версии %REMOTE_VER%. Перезагрузи расширение в Chrome. +echo [OK] Updated to %REMOTE_VER%. Reload extension in chrome://extensions :end endlocal diff --git a/server/caps-enhancer.zip b/server/caps-enhancer.zip index 74b91e9..81ccefd 100644 Binary files a/server/caps-enhancer.zip and b/server/caps-enhancer.zip differ diff --git a/server/pack-zip.bat b/server/pack-zip.bat index 6d258af..bda5c15 100644 --- a/server/pack-zip.bat +++ b/server/pack-zip.bat @@ -2,39 +2,34 @@ setlocal set ROOT=%~dp0.. -:: Читаем версию из manifest.json for /f "delims=" %%v in ('powershell -NoProfile -Command "(Get-Content '%ROOT%\manifest.json' | ConvertFrom-Json).version"') do set VERSION=%%v -echo Упаковка версии %VERSION%... +echo Packing version %VERSION%... -:: Временная папка set TMP=%TEMP%\caps-enhancer-pack if exist "%TMP%" rd /s /q "%TMP%" md "%TMP%" -:: Копируем файлы расширения copy "%ROOT%\manifest.json" "%TMP%\" >nul copy "%ROOT%\popup.html" "%TMP%\" >nul copy "%ROOT%\popup.css" "%TMP%\" >nul copy "%ROOT%\options.html" "%TMP%\" >nul -copy "%ROOT%\auto-update.bat" "%TMP%\" >nul xcopy "%ROOT%\js" "%TMP%\js\" /e /q >nul xcopy "%ROOT%\css" "%TMP%\css\" /e /q >nul xcopy "%ROOT%\modules" "%TMP%\modules\" /e /q >nul xcopy "%ROOT%\icons" "%TMP%\icons\" /e /q >nul -:: Создаём ZIP set OUT=%~dp0caps-enhancer.zip if exist "%OUT%" del "%OUT%" powershell -NoProfile -Command "Compress-Archive -Path '%TMP%\*' -DestinationPath '%OUT%'" rd /s /q "%TMP%" -:: Обновляем version.json -echo {"version": "%VERSION%"} > "%~dp0version.json" +set VER_FILE=%~dp0version.json +(echo {"version": "%VERSION%"})>"%VER_FILE%" echo. echo [OK] server\caps-enhancer.zip echo [OK] server\version.json (v%VERSION%) echo. -echo Залей оба файла на сервер: /var/www/caps_enhancer/ +echo Upload both files to: /var/www/caps_enhancer/ pause endlocal diff --git a/server/version.json b/server/version.json index fb01bc4..fef1a8f 100644 --- a/server/version.json +++ b/server/version.json @@ -1 +1 @@ -{"version": "2.7"} +{"version": "2.7"}