Fix permissions script to chown entire project directory and use chmod -R

This commit is contained in:
root
2026-06-10 12:15:06 +02:00
parent 5288dbd917
commit 3b3551d48c
16 changed files with 214 additions and 213 deletions
Regular → Executable
View File
Generated
+94 -94
View File
@@ -1377,16 +1377,16 @@
},
{
"name": "filament/actions",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/actions.git",
"reference": "eb0f973dd88864c3ea7be5e999bf420ccbd62e14"
"reference": "4697f9e6dab1f023b2ea21b0e449c3fd204fb3d9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/actions/zipball/eb0f973dd88864c3ea7be5e999bf420ccbd62e14",
"reference": "eb0f973dd88864c3ea7be5e999bf420ccbd62e14",
"url": "https://api.github.com/repos/filamentphp/actions/zipball/4697f9e6dab1f023b2ea21b0e449c3fd204fb3d9",
"reference": "4697f9e6dab1f023b2ea21b0e449c3fd204fb3d9",
"shasum": ""
},
"require": {
@@ -1421,20 +1421,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:17:39+00:00"
"time": "2026-06-08T09:27:06+00:00"
},
{
"name": "filament/filament",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/panels.git",
"reference": "fdb789aaa29ff418e0609927a683b099df2d5f55"
"reference": "2b6bfa9888e0bcba8c2a7dfbdfe913cab72cfe6a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/panels/zipball/fdb789aaa29ff418e0609927a683b099df2d5f55",
"reference": "fdb789aaa29ff418e0609927a683b099df2d5f55",
"url": "https://api.github.com/repos/filamentphp/panels/zipball/2b6bfa9888e0bcba8c2a7dfbdfe913cab72cfe6a",
"reference": "2b6bfa9888e0bcba8c2a7dfbdfe913cab72cfe6a",
"shasum": ""
},
"require": {
@@ -1478,20 +1478,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:17:24+00:00"
"time": "2026-06-08T09:24:15+00:00"
},
{
"name": "filament/forms",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/forms.git",
"reference": "e4dc9e2add4b563822d1014e35c8e16bf812aa8d"
"reference": "f7b5e8701982408f84e1b12fcca75eadad47905b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/forms/zipball/e4dc9e2add4b563822d1014e35c8e16bf812aa8d",
"reference": "e4dc9e2add4b563822d1014e35c8e16bf812aa8d",
"url": "https://api.github.com/repos/filamentphp/forms/zipball/f7b5e8701982408f84e1b12fcca75eadad47905b",
"reference": "f7b5e8701982408f84e1b12fcca75eadad47905b",
"shasum": ""
},
"require": {
@@ -1528,20 +1528,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:11:48+00:00"
"time": "2026-06-08T09:27:44+00:00"
},
{
"name": "filament/infolists",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/infolists.git",
"reference": "37a2484d6c65b5908e6549302001161530a88c2c"
"reference": "0b87686a37160bf7f8bccae1eedc733bbf928dc9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/infolists/zipball/37a2484d6c65b5908e6549302001161530a88c2c",
"reference": "37a2484d6c65b5908e6549302001161530a88c2c",
"url": "https://api.github.com/repos/filamentphp/infolists/zipball/0b87686a37160bf7f8bccae1eedc733bbf928dc9",
"reference": "0b87686a37160bf7f8bccae1eedc733bbf928dc9",
"shasum": ""
},
"require": {
@@ -1573,20 +1573,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-22T07:42:24+00:00"
"time": "2026-06-08T09:28:23+00:00"
},
{
"name": "filament/notifications",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/notifications.git",
"reference": "d4d1bef688dd85086229fcad6f1a157d47f6c336"
"reference": "28ce63bf4e378a4e38efac7b1f0519a5fed4b352"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/notifications/zipball/d4d1bef688dd85086229fcad6f1a157d47f6c336",
"reference": "d4d1bef688dd85086229fcad6f1a157d47f6c336",
"url": "https://api.github.com/repos/filamentphp/notifications/zipball/28ce63bf4e378a4e38efac7b1f0519a5fed4b352",
"reference": "28ce63bf4e378a4e38efac7b1f0519a5fed4b352",
"shasum": ""
},
"require": {
@@ -1620,11 +1620,11 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-20T17:23:54+00:00"
"time": "2026-06-08T09:27:42+00:00"
},
{
"name": "filament/query-builder",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/query-builder.git",
@@ -1670,16 +1670,16 @@
},
{
"name": "filament/schemas",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/schemas.git",
"reference": "1b23f15af79252591fd72f17ad4bc536cc32d47b"
"reference": "c3ecdfe73a215927caaf7b28bc5ae2b3891e805b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/schemas/zipball/1b23f15af79252591fd72f17ad4bc536cc32d47b",
"reference": "1b23f15af79252591fd72f17ad4bc536cc32d47b",
"url": "https://api.github.com/repos/filamentphp/schemas/zipball/c3ecdfe73a215927caaf7b28bc5ae2b3891e805b",
"reference": "c3ecdfe73a215927caaf7b28bc5ae2b3891e805b",
"shasum": ""
},
"require": {
@@ -1711,20 +1711,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:16:01+00:00"
"time": "2026-06-08T09:28:03+00:00"
},
{
"name": "filament/support",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/support.git",
"reference": "2d79214157790e89b35a00911a5d7fc5da647b87"
"reference": "caa2bf186de5b32a789d3c7167bc63db153386a1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/support/zipball/2d79214157790e89b35a00911a5d7fc5da647b87",
"reference": "2d79214157790e89b35a00911a5d7fc5da647b87",
"url": "https://api.github.com/repos/filamentphp/support/zipball/caa2bf186de5b32a789d3c7167bc63db153386a1",
"reference": "caa2bf186de5b32a789d3c7167bc63db153386a1",
"shasum": ""
},
"require": {
@@ -1769,20 +1769,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:12:42+00:00"
"time": "2026-06-08T09:28:36+00:00"
},
{
"name": "filament/tables",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/tables.git",
"reference": "b67ef735bb000cf9e11bf9f71450e9faef2c5052"
"reference": "bb98022d73347eeb090976ae0730147289135ffb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/tables/zipball/b67ef735bb000cf9e11bf9f71450e9faef2c5052",
"reference": "b67ef735bb000cf9e11bf9f71450e9faef2c5052",
"url": "https://api.github.com/repos/filamentphp/tables/zipball/bb98022d73347eeb090976ae0730147289135ffb",
"reference": "bb98022d73347eeb090976ae0730147289135ffb",
"shasum": ""
},
"require": {
@@ -1815,20 +1815,20 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:17:31+00:00"
"time": "2026-06-08T09:28:26+00:00"
},
{
"name": "filament/widgets",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/widgets.git",
"reference": "fdec7f94e32b1c43199221363382e47b8a6a9816"
"reference": "8c6411e0331aab124ffdf6c49d1161b1ecfbc9bc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filamentphp/widgets/zipball/fdec7f94e32b1c43199221363382e47b8a6a9816",
"reference": "fdec7f94e32b1c43199221363382e47b8a6a9816",
"url": "https://api.github.com/repos/filamentphp/widgets/zipball/8c6411e0331aab124ffdf6c49d1161b1ecfbc9bc",
"reference": "8c6411e0331aab124ffdf6c49d1161b1ecfbc9bc",
"shasum": ""
},
"require": {
@@ -1859,7 +1859,7 @@
"issues": "https://github.com/filamentphp/filament/issues",
"source": "https://github.com/filamentphp/filament"
},
"time": "2026-05-27T16:16:29+00:00"
"time": "2026-06-08T09:28:17+00:00"
},
{
"name": "firebase/php-jwt",
@@ -2126,16 +2126,16 @@
},
{
"name": "guzzlehttp/guzzle",
"version": "7.11.0",
"version": "7.11.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
"reference": "c987f8ce84b8434fa430795eca0f3430663da72b"
"reference": "5af96f374e0ab4ebd747b8310888c99d3adb0a8c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/c987f8ce84b8434fa430795eca0f3430663da72b",
"reference": "c987f8ce84b8434fa430795eca0f3430663da72b",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/5af96f374e0ab4ebd747b8310888c99d3adb0a8c",
"reference": "5af96f374e0ab4ebd747b8310888c99d3adb0a8c",
"shasum": ""
},
"require": {
@@ -2154,7 +2154,7 @@
"bamarni/composer-bin-plugin": "^1.8.2",
"ext-curl": "*",
"guzzle/client-integration-tests": "3.0.2",
"guzzlehttp/test-server": "^0.4",
"guzzlehttp/test-server": "^0.5",
"php-http/message-factory": "^1.1",
"phpunit/phpunit": "^8.5.52 || ^9.6.34",
"psr/log": "^1.1 || ^2.0 || ^3.0"
@@ -2234,7 +2234,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
"source": "https://github.com/guzzle/guzzle/tree/7.11.0"
"source": "https://github.com/guzzle/guzzle/tree/7.11.1"
},
"funding": [
{
@@ -2250,7 +2250,7 @@
"type": "tidelift"
}
],
"time": "2026-06-02T12:40:51+00:00"
"time": "2026-06-07T22:54:06+00:00"
},
{
"name": "guzzlehttp/promises",
@@ -2831,16 +2831,16 @@
},
{
"name": "laravel/framework",
"version": "v13.14.0",
"version": "v13.15.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "e60b1c817a9ef7da319e4007de6cfda5301a58c0"
"reference": "7e23b2aa4e1133a43835c93a810b4bedc40e425b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/e60b1c817a9ef7da319e4007de6cfda5301a58c0",
"reference": "e60b1c817a9ef7da319e4007de6cfda5301a58c0",
"url": "https://api.github.com/repos/laravel/framework/zipball/7e23b2aa4e1133a43835c93a810b4bedc40e425b",
"reference": "7e23b2aa4e1133a43835c93a810b4bedc40e425b",
"shasum": ""
},
"require": {
@@ -3051,20 +3051,20 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2026-06-04T18:46:35+00:00"
"time": "2026-06-09T13:45:51+00:00"
},
{
"name": "laravel/octane",
"version": "v2.17.4",
"version": "v2.17.5",
"source": {
"type": "git",
"url": "https://github.com/laravel/octane.git",
"reference": "ffeac11324accc6edf8df426ba4541f3171d494e"
"reference": "058ae4d7109eed40836dc42960f9388b9bf71f73"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/octane/zipball/ffeac11324accc6edf8df426ba4541f3171d494e",
"reference": "ffeac11324accc6edf8df426ba4541f3171d494e",
"url": "https://api.github.com/repos/laravel/octane/zipball/058ae4d7109eed40836dc42960f9388b9bf71f73",
"reference": "058ae4d7109eed40836dc42960f9388b9bf71f73",
"shasum": ""
},
"require": {
@@ -3140,7 +3140,7 @@
"issues": "https://github.com/laravel/octane/issues",
"source": "https://github.com/laravel/octane"
},
"time": "2026-05-22T11:30:06+00:00"
"time": "2026-06-04T09:05:08+00:00"
},
{
"name": "laravel/passkeys",
@@ -5611,16 +5611,16 @@
},
{
"name": "phpseclib/phpseclib",
"version": "3.0.52",
"version": "3.0.53",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "2adaefc83df2ec548558307690f376dd7d4f4fce"
"reference": "511ddc8e352d5d1f1e33bea468b6f4ef48438cf9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/2adaefc83df2ec548558307690f376dd7d4f4fce",
"reference": "2adaefc83df2ec548558307690f376dd7d4f4fce",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/511ddc8e352d5d1f1e33bea468b6f4ef48438cf9",
"reference": "511ddc8e352d5d1f1e33bea468b6f4ef48438cf9",
"shasum": ""
},
"require": {
@@ -5701,7 +5701,7 @@
],
"support": {
"issues": "https://github.com/phpseclib/phpseclib/issues",
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.52"
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.53"
},
"funding": [
{
@@ -5717,7 +5717,7 @@
"type": "tidelift"
}
],
"time": "2026-04-27T07:02:15+00:00"
"time": "2026-06-09T18:08:26+00:00"
},
{
"name": "phpstan/phpdoc-parser",
@@ -10036,16 +10036,16 @@
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.38.1",
"version": "v1.38.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "14c5439eec4ccff081ac14eca2dc57feb2a66d92"
"reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/14c5439eec4ccff081ac14eca2dc57feb2a66d92",
"reference": "14c5439eec4ccff081ac14eca2dc57feb2a66d92",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6",
"reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6",
"shasum": ""
},
"require": {
@@ -10097,7 +10097,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.1"
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2"
},
"funding": [
{
@@ -10117,7 +10117,7 @@
"type": "tidelift"
}
],
"time": "2026-05-26T12:51:13+00:00"
"time": "2026-05-27T06:59:30+00:00"
},
{
"name": "symfony/polyfill-php80",
@@ -10205,16 +10205,16 @@
},
{
"name": "symfony/polyfill-php83",
"version": "v1.38.1",
"version": "v1.38.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php83.git",
"reference": "8339098cae28673c15cce00d80734af0453054e2"
"reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/8339098cae28673c15cce00d80734af0453054e2",
"reference": "8339098cae28673c15cce00d80734af0453054e2",
"url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/796a26abb75ce49f3a84433cd81bf1009d73d5f8",
"reference": "796a26abb75ce49f3a84433cd81bf1009d73d5f8",
"shasum": ""
},
"require": {
@@ -10261,7 +10261,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php83/tree/v1.38.1"
"source": "https://github.com/symfony/polyfill-php83/tree/v1.38.2"
},
"funding": [
{
@@ -10281,7 +10281,7 @@
"type": "tidelift"
}
],
"time": "2026-05-26T12:51:13+00:00"
"time": "2026-05-27T06:51:48+00:00"
},
{
"name": "symfony/polyfill-php84",
@@ -12650,7 +12650,7 @@
},
{
"name": "filament/upgrade",
"version": "v5.6.6",
"version": "v5.6.7",
"source": {
"type": "git",
"url": "https://github.com/filamentphp/upgrade.git",
@@ -13050,16 +13050,16 @@
},
{
"name": "laravel/boost",
"version": "v2.4.9",
"version": "v2.4.10",
"source": {
"type": "git",
"url": "https://github.com/laravel/boost.git",
"reference": "f0359e55f6c3782023a35baf1d3df817053d69e8"
"reference": "080189f51c8d27c0792a03483a70adc7770f6eeb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/boost/zipball/f0359e55f6c3782023a35baf1d3df817053d69e8",
"reference": "f0359e55f6c3782023a35baf1d3df817053d69e8",
"url": "https://api.github.com/repos/laravel/boost/zipball/080189f51c8d27c0792a03483a70adc7770f6eeb",
"reference": "080189f51c8d27c0792a03483a70adc7770f6eeb",
"shasum": ""
},
"require": {
@@ -13068,7 +13068,7 @@
"illuminate/contracts": "^11.45.3|^12.41.1|^13.0",
"illuminate/routing": "^11.45.3|^12.41.1|^13.0",
"illuminate/support": "^11.45.3|^12.41.1|^13.0",
"laravel/mcp": "^0.7.1",
"laravel/mcp": "^0.7.1|^0.8.0",
"laravel/prompts": "^0.3.10",
"laravel/roster": "^0.5.0",
"php": "^8.2"
@@ -13112,20 +13112,20 @@
"issues": "https://github.com/laravel/boost/issues",
"source": "https://github.com/laravel/boost"
},
"time": "2026-06-04T10:33:57+00:00"
"time": "2026-06-09T10:21:08+00:00"
},
{
"name": "laravel/mcp",
"version": "v0.7.2",
"version": "v0.8.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/mcp.git",
"reference": "08962a276357f89164f78b38407c08187ab26cfe"
"reference": "18221a07093d84153883bc956e5e213999549a4b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/mcp/zipball/08962a276357f89164f78b38407c08187ab26cfe",
"reference": "08962a276357f89164f78b38407c08187ab26cfe",
"url": "https://api.github.com/repos/laravel/mcp/zipball/18221a07093d84153883bc956e5e213999549a4b",
"reference": "18221a07093d84153883bc956e5e213999549a4b",
"shasum": ""
},
"require": {
@@ -13153,7 +13153,7 @@
"extra": {
"laravel": {
"aliases": {
"Mcp": "Laravel\\Mcp\\Server\\Facades\\Mcp"
"Mcp": "Laravel\\Mcp\\Facades\\Mcp"
},
"providers": [
"Laravel\\Mcp\\Server\\McpServiceProvider"
@@ -13186,7 +13186,7 @@
"issues": "https://github.com/laravel/mcp/issues",
"source": "https://github.com/laravel/mcp"
},
"time": "2026-05-22T11:45:29+00:00"
"time": "2026-06-08T13:48:51+00:00"
},
{
"name": "laravel/pint",
+3 -4
View File
@@ -9,11 +9,10 @@ echo "Fixing permissions..."
# Fix ownership (only if running as root/sudo, skip otherwise)
if [ "$(id -u)" -eq 0 ]; then
chown -R "$WEB_USER":"$WEB_USER" storage bootstrap/cache 2>/dev/null || true
chown -R "$WEB_USER":"$WEB_USER" "$PROJECT_DIR" 2>/dev/null || true
fi
# Fix directory permissions
find storage bootstrap/cache -type d -exec chmod 775 {} + 2>/dev/null || true
find storage bootstrap/cache -type f -exec chmod 664 {} + 2>/dev/null || true
# Fix directory permissions for writable paths
chmod -R 775 storage bootstrap/cache 2>/dev/null || true
echo "Permissions fixed."
+2 -2
View File
@@ -111,7 +111,7 @@
"src": "public/assets/images/profile/profile-bg.png"
},
"resources/css/global.css": {
"file": "assets/global-CfixNq9d.css",
"file": "assets/global-DmKtm1TC.css",
"name": "global",
"names": [
"global.css"
@@ -166,7 +166,7 @@
]
},
"resources/themes/atom/css/app.css": {
"file": "assets/app-RokO-SZl.css",
"file": "assets/app-DtTGSxkD.css",
"name": "app",
"names": [
"app.css"
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
(()=>{var n=({livewireId:e})=>({actionNestingIndex:null,init(){window.addEventListener("sync-action-modals",t=>{t.detail.id===e&&this.syncActionModals(t.detail.newActionNestingIndex,t.detail.shouldOverlayParentActions??!1)})},syncActionModals(t,i=!1){if(this.actionNestingIndex===t){this.actionNestingIndex!==null&&this.$nextTick(()=>this.openModal());return}let s=this.actionNestingIndex!==null&&t!==null&&t>this.actionNestingIndex;if(this.actionNestingIndex!==null&&!(i&&s)&&this.closeModal(),this.actionNestingIndex=t,this.actionNestingIndex!==null){if(!this.$el.querySelector(`#${this.generateModalId(t)}`)){this.$nextTick(()=>this.openModal());return}this.openModal()}},generateModalId(t){return`fi-${e}-action-`+t},openModal(){let t=this.generateModalId(this.actionNestingIndex);document.dispatchEvent(new CustomEvent("open-modal",{bubbles:!0,composed:!0,detail:{id:t}}))},closeModal(){let t=this.generateModalId(this.actionNestingIndex);document.dispatchEvent(new CustomEvent("close-modal-quietly",{bubbles:!0,composed:!0,detail:{id:t}}))}});document.addEventListener("alpine:init",()=>{window.Alpine.data("filamentActionModals",n)});})();
(()=>{var s=({livewireId:i})=>({actionNestingIndex:null,closedActionNestingIndexes:[],init(){window.addEventListener("sync-action-modals",t=>{t.detail.id===i&&this.syncActionModals(t.detail.newActionNestingIndex,t.detail.shouldOverlayParentActions??!1)}),window.addEventListener("modal-closed",t=>{let e=this.getActionNestingIndexFromModalId(t.detail.id);e!==null&&this.closedActionNestingIndexes.push(e)})},syncActionModals(t,e=!1){if(this.actionNestingIndex===t){this.actionNestingIndex!==null&&this.$nextTick(()=>this.openModal());return}let n=this.actionNestingIndex!==null&&t!==null&&t>this.actionNestingIndex;if(this.actionNestingIndex!==null&&!(e&&n)&&this.closeModal(),this.actionNestingIndex=t,this.actionNestingIndex===null){this.closedActionNestingIndexes=[];return}if(this.closedActionNestingIndexes=this.closedActionNestingIndexes.filter(o=>o<=this.actionNestingIndex),!this.closedActionNestingIndexes.includes(this.actionNestingIndex)){if(!this.$el.querySelector(`#${this.generateModalId(t)}`)){this.$nextTick(()=>this.openModal());return}this.openModal()}},generateModalId(t){return`fi-${i}-action-`+t},getActionNestingIndexFromModalId(t){let e=`fi-${i}-action-`;if(!t?.startsWith(e))return null;let n=Number(t.slice(e.length));return Number.isInteger(n)?n:null},openModal(){let t=this.generateModalId(this.actionNestingIndex);document.dispatchEvent(new CustomEvent("open-modal",{bubbles:!0,composed:!0,detail:{id:t}}))},closeModal(){let t=this.generateModalId(this.actionNestingIndex);document.dispatchEvent(new CustomEvent("close-modal-quietly",{bubbles:!0,composed:!0,detail:{id:t}}))}});document.addEventListener("alpine:init",()=>{window.Alpine.data("filamentActionModals",s)});})();
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+22 -22
View File
@@ -3,7 +3,7 @@
# Strict mode: exit on any error, undefined var, or pipe failure
set -euo pipefail
# Laad .env bestand uit dezelfde directory als dit script
# Load .env from the same directory as this script
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
if [ -f "$SCRIPT_DIR/.env" ]; then
set -a
@@ -19,9 +19,9 @@ fi
exec 2>&1
# Trap for clean error messages
trap 'echo "=== ❌ FOUT: Update mislukt op regel $LINENO (commando: $BASH_COMMAND) ===" >&2; exit 1' ERR
trap 'echo "=== ❌ ERROR: Update failed at line $LINENO (command: $BASH_COMMAND) ===" >&2; exit 1' ERR
# --- CONFIGURATION (uit env vars, met defaults) ---
# --- CONFIGURATION (from env vars, with defaults) ---
DB_NAME="${NITRO_DB_NAME:-habbo}"
DB_HOST="${NITRO_DB_HOST:-127.0.0.1}"
DB_PORT="${NITRO_DB_PORT:-3306}"
@@ -36,7 +36,7 @@ BACKUP_DIR="${NITRO_BACKUP_DIR:-$EMULATOR_DIR/Database Updates/backups}"
NITRO_CLIENT="${NITRO_CLIENT_SRC:-/var/www/Nitro-V3}"
NITRO_RENDERER="${NITRO_RENDERER_SRC:-/var/www/Nitro_Render_V3}"
# Kritieke URLs voor catalog icons (uit env, met huidige server defaults)
# Critical URLs for catalog icons (from env, with current server defaults)
NITRO_IMAGE_LIBRARY_URL="${NITRO_IMAGE_LIBRARY_URL:-https://epicnabbo.nl/gamedata/c_images/}"
NITRO_HOF_FURNITURE_URL="${NITRO_HOF_FURNITURE_URL:-https://epicnabbo.nl/gamedata/icons}"
NITRO_API_URL="${NITRO_API_URL:-https://ws.epicnabbo.nl}"
@@ -53,7 +53,7 @@ if [ -n "$DB_PASS" ]; then
fi
# ---------------------
# Helper: verwijder node_modules geforceerd (met sudo fallback) en herstel directory-eigenaar
# Helper: forcefully remove node_modules (with sudo fallback) and restore directory owner
clean_node_modules() {
rm -rf node_modules 2>/dev/null || sudo rm -rf node_modules 2>/dev/null || true
if [ "$(stat -c '%U' .)" != "$(whoami)" ] && command -v sudo &> /dev/null; then
@@ -73,14 +73,14 @@ git stash --include-untracked || true && git pull
# --- Automatic Safe Database Backup ---
echo "--> Creating automatic database backup before update..."
mkdir -p "$BACKUP_DIR"
mariadb-dump $MYSQL_CRED --force --skip-lock-tables "$DB_NAME" > "$BACKUP_DIR/backup_$(date +%Y%m%d_%H%M%S).sql" || echo "--> Backup heeft ontbrekende tabellen (niet kritisch) — update gaat verder"
mariadb-dump $MYSQL_CRED --force --skip-lock-tables "$DB_NAME" > "$BACKUP_DIR/backup_$(date +%Y%m%d_%H%M%S).sql" || echo "--> Backup has missing tables (not critical) — update continues"
# --- Automatic SQL Import (exclusief backup dir) ---
echo "--> Checking for new SQL files..."
if [ -d "$SQL_DIR" ]; then
find "$SQL_DIR" -name "*.sql" -mmin -10 -not -path "$BACKUP_DIR/*" -print0 2>/dev/null | while IFS= read -r -d '' sql_file; do
echo "--> Importing new SQL file: $(basename "$sql_file")"
mariadb $MYSQL_CRED --force "$DB_NAME" < "$sql_file" || echo "--> Fout bij importeren $(basename "$sql_file"), naar volgende..."
mariadb $MYSQL_CRED --force "$DB_NAME" < "$sql_file" || echo "--> Error importing $(basename "$sql_file"), moving to next..."
done
else
echo "--> SQL directory not found, skipping SQL import."
@@ -94,7 +94,7 @@ JAR_PATTERN="target/Habbo-*-jar-with-dependencies.jar"
JAR_FILE=$(basename "$(ls -t $JAR_PATTERN 2>/dev/null | head -n 1)")
if [ -z "$JAR_FILE" ]; then
echo "=== ❌ Geen jar-bestand gevonden met pattern: $JAR_PATTERN ==="
echo "=== ❌ No jar file found with pattern: $JAR_PATTERN ==="
exit 1
fi
@@ -152,15 +152,15 @@ fi
# ----------------------------------------
# 4. Sync Configs & UITexts (.example logica)
# 4. Sync Configs & UITexts (.example logic)
# ----------------------------------------
echo "--> Synchronizing configurations..."
mkdir -p "$GAMEDATA_CONF_DIR"
MERGE_SCRIPT="$(dirname "$0")/scripts/merge-config.cjs"
# Fase 1: Merge .example met live configs in dezelfde public directory
# zodat de Nitro client zelf altijd 100% complete configs heeft
# Phase 1: Merge .example with live configs in the same public directory
# so the Nitro client always has 100% complete configs
echo "--> Merging .example files with live configs in $NITRO_SRC_DIR..."
for example_file in "$NITRO_SRC_DIR"/*.example; do
[ -f "$example_file" ] || continue
@@ -175,7 +175,7 @@ for example_file in "$NITRO_SRC_DIR"/*.example; do
node "$MERGE_SCRIPT" "$example_file" "$live_path"
done
# Fase 2: Daarna dezelfde merge naar Gamedata/config voor de website
# Phase 2: Then merge the same to Gamedata/config for the website
echo "--> Merging Nitro config examples into Gamedata/config..."
for example_file in "$NITRO_SRC_DIR"/*.example; do
[ -f "$example_file" ] || continue
@@ -190,7 +190,7 @@ for example_file in "$NITRO_SRC_DIR"/*.example; do
node "$MERGE_SCRIPT" "$example_file" "$target_path"
done
# Fase 3: Sync de gemergde configs naar dist/configuration voor de live client
# Phase 3: Sync merged configs to dist/configuration for the live client
NITRO_DIST_CONFIG_DIR="$NITRO_CLIENT/dist/configuration"
if [ -d "$NITRO_DIST_CONFIG_DIR" ]; then
echo "--> Syncing merged configs to dist/configuration/..."
@@ -209,8 +209,8 @@ if [ -d "$NITRO_DIST_CONFIG_DIR" ]; then
done
fi
# Fase 4: Herstel kritieke icon URLs in renderer-config en ui-config
# (voorkomt dat git pull de URLs overschrijft met voorbeeldwaarden)
# Phase 4: Restore critical icon URLs in renderer-config and ui-config
# (prevents git pull from overwriting URLs with example values)
echo "--> Ensuring critical catalog icon URLs are correct..."
FORCE_CONFIG_SCRIPT=$(cat << 'PYEOF'
import json, sys, os
@@ -236,18 +236,18 @@ for path in paths:
env_val = os.environ.get(f'NITRO_{key.upper().replace(".", "_")}')
if env_val:
data[key] = env_val
# Forceer /config/ pad voor radio en soundboard
# Force /config/ path for radio and soundboard
if 'gamedata.url' in data:
data['radio.url'] = data['gamedata.url'] + '/config/radio-stations.json5?t=%timestamp%'
data['soundboard.url'] = data['gamedata.url'] + '/config/soundboard-sounds.json5?t=%timestamp%'
# Zet Google Ads uit
# Disable Google Ads
if 'show.google.ads' in data:
data['show.google.ads'] = False
with open(path, 'w') as f:
json.dump(data, f, indent=(4 if 'dist' not in path else None), separators=(',', ':') if 'dist' in path else (',', ': '))
print(f'--> [OK] Hersteld: {os.path.basename(path)}')
print(f'--> [OK] Fixed: {os.path.basename(path)}')
print('--> [OK] Catalog icon URLs zijn correct ingesteld')
print('--> [OK] Catalog icon URLs are set correctly')
PYEOF
)
cd "$NITRO_CLIENT" && NITRO_SRC_DIR="$NITRO_SRC_DIR" NITRO_DIST_CONFIG_DIR="$NITRO_DIST_CONFIG_DIR" \
@@ -337,9 +337,9 @@ for dir in "$NITRO_CLIENT" "$NITRO_RENDERER" "$EMULATOR_DIR" "$GAMEDATA_CONF_DIR
if [ "$OWNER" = "www-data:www-data" ] || [ "$(id -u)" -ne 0 ]; then
echo "--> [OK] $dir ($OWNER)"
else
echo "--> [WARN] $dir heeft eigenaar $OWNER ipv www-data:www-data"
echo "--> [WARN] $dir has owner $OWNER instead of www-data:www-data"
sudo chown -R www-data:www-data "$dir" 2>/dev/null || true
echo " Hersteld naar www-data:www-data"
echo " Restored to www-data:www-data"
fi
fi
done
@@ -358,5 +358,5 @@ fi
if [ "$ERRORS" -eq 0 ]; then
echo "=== ✅ Update 100% successfully completed! ==="
else
echo "=== ⚠️ Update completed with $ERRORS warning(s) — check bovenstaande output ==="
echo "=== ⚠️ Update completed with $ERRORS warning(s) — check output above ==="
fi