132 Commits

Author SHA1 Message Date
Le Philousophe 93d3aa56a1 WEB: Handle null cases
Sometimes variables may be null. Handle the cases when passing to
functions expecting something non-null.
2025-08-24 12:32:47 +02:00
Le Philousophe 9a59454525 BUILD: Increase PHPStan level
The AltoRouter::match function has a bad signature: fix it using a stub.
2025-08-24 12:32:47 +02:00
Le Philousophe e2f72c8d8b WEB: Modify all extra attributes at once
This makes PHPStan happy (because the array type is expected to be
either empty or full).
2025-08-24 12:32:47 +02:00
Le Philousophe a1afb8a64d WEB: Handle cases when WebLink are mixed with Files
Also make hasOldVersion static as it doesn't need access to the
instance.
2025-08-24 12:32:47 +02:00
Le Philousophe cc9fa80181 WEB: Add typing 2025-08-24 12:32:47 +02:00
Le Philousophe 51ce727edd WEB: Simplify subsections construction
This will ease typing
2025-08-24 12:32:47 +02:00
Le Philousophe d7c3bd0528 WEB: Various small fixes
These are either cosmetic or spotted by PHPStan
2025-08-24 12:32:47 +02:00
Le Philousophe 1c9380ef3e JANITORIAL: Fix code style
This should not have any behavioral changes
2025-08-24 12:32:46 +02:00
Le Philousophe 8c2e6ab345 WEB: Remove obsolete file 2025-08-24 12:32:46 +02:00
Le Philousophe ee085bcdba WEB: Rework links localization
The new algorithm is more robust and avoids adding the localization path
fragment to unrelated ScummVM websites.
It also fixes URLs to keep the user on the same website it visited (www
vs without www).
2025-08-09 17:39:22 +02:00
Le Philousophe 641ff7939d WEB: Remove useless baseUrl argument 2024-09-14 13:14:49 +02:00
Le Philousophe ae90ba23db WEB: Remove useless getId function
It always returned an uninitialized id.
2024-09-14 13:14:49 +02:00
Le Philousophe 7cd3ff2331 WEB: Various PHPStan fixes
These fixes are only for correctness.
2024-09-14 13:14:49 +02:00
Thunderforge 7c2680462a WEB: Replace dynamic variables with instance variables
This feature is deprecated in PHP 8.2.
2022-12-20 20:07:25 -06:00
Thunderforge 9950eaa063 WEB: Fixing typo in field name autoId -> auto_id 2022-04-07 18:52:39 -05:00
Thunderforge 285c759717 WEB: Adding null check before string replacement (#209)
Fixes errors such as

```
PHP Deprecated:  strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /Users/Will/OpenSource/scummvm-web/include/Objects/File.php on line 26
```
2022-02-23 20:27:44 -06:00
Thunderforge bead8af168 DATA: Sorting by autoId after sorting by version 2022-01-28 18:08:03 -06:00
Thunderforge e0c85807b6 DATA: Restoring extra info on downloads page
This involved renaming the spreadsheet column from "Description" to "Notes"
2022-01-17 20:55:39 +01:00
Thunderforge dab6d24666 WEB: Moving daily download file path
I have proposed moving daily downloads of ScummVM and ScummVM Tools from `frs/daily/` to `frs/scummvm/daily/` and `frs/scummvm-tools/daily` respectively. This PR contains simplifications to the code that would result from this.
2022-01-14 13:43:13 +01:00
Thunderforge 7cb0158ed1 WEB: Daily URL should be regardless of category 2022-01-11 22:22:50 -06:00
Thunderforge 1fdd6fd18f WEB: Changing category from "tools" to "scummvm-tools"
This allows for simpler URL generation
2022-01-11 22:11:30 -06:00
Thunderforge d1ae44ec9d WEB: Restoring the daily URL. It's in a different location than the others 2022-01-11 21:39:31 -06:00
Thunderforge 5e82b7570c WEB: Simplifying how source URLs are constructed 2022-01-11 21:32:35 -06:00
Thunderforge 0b2f1d9adf WEB: Removing the need for DOWNLOADS_DAILY_URL
Also rearranging how the file name is calculated and fixing the Tools extra info not working
2022-01-11 21:20:05 -06:00
Thunderforge beeb7ce7a8 WEB: Removing /frs/extra/ from the url field of game downloads 2022-01-11 20:50:55 -06:00
Thunderforge a060430d43 WEB: Fixing extra info for tools 2022-01-11 20:04:40 -06:00
Thunderforge 453e74263b WEB: Adding file size and extension to recommended downloads (#191)
* WEB: Refactor reading files into FileUtils

Refactoring code in `include/Objects/File` into `FileUtils`. This not only makes the code much cleaner, but also allows it to be used in other places of the app, such as the `DownloadsModel`.

* WEB: Adding file size and extension to recommended downloads
2022-01-10 15:39:01 -06:00
Thunderforge 2d73bc74cc WEB: Use absolute file path if available
I suspect this will fix an issue with the hashes and such showing up locally, but not on the server.
2022-01-10 00:55:03 +01:00
Thunderforge bea0da3bc4 WEB: Change how file extra info is generated 2022-01-09 09:04:05 +01:00
Thunderforge 684e3e9ca7 WEB: Fixing the Games page not loading
Game items don't have a getVersion() method. Now we check for it before we try to sort.
2021-11-27 12:11:43 -06:00
Thunderforge fb71c0068d WEB: Only sort versions that are old
Prevents an issue where release and current builds are getting scrambled
2021-11-27 11:54:19 -06:00
Thunderforge cc79eb0043 WEB: Sorting downloads by version after a new one is inserted
Previously, downloads always got added to the end of the list. Now, the download is added to the end and then the list is sorted by version, meaning that the download will be moved to be the last one of all the downloads with that version.
2021-11-25 14:53:15 +01:00
Thunderforge 60e02dbf54 DATA: Changing downloads table to use version column (#174)
In order to simplify the process of updating version downloads, [downloads spreadsheet table](https://docs.google.com/spreadsheets/d/1QzwFleEKXOsE59cYMOcQB7C2f0Np48uAQOCG8kicX_s/edit#gid=1057392663) now includes a `version` column and the `url` field is much simpler. In order to update a new version, simply change the value in the `version` field.

Further improvements can be made, but for now this is an improvement that keeps parity with the previous code.
2021-11-18 16:04:20 -06:00
Thunderforge b9ce5baf45 WEB: Removing file.getType() and related dead code
It appears that at one point the data spreadsheet included a `type` field. This is no longer the case and so all of this is not used, providing unnecessary confusion and maintenance.
2021-11-01 06:52:39 +01:00
Mataniko ef20da2ede WEB: Fix PHP array key warnings 2021-04-02 22:01:06 -04:00
Mataniko 91a6d8eccc WEB: Remove additional unused FAQ references 2021-01-05 16:19:26 -05:00
Mataniko c8323037e9 WEB: Remove FAQ and Documentation pages 2021-01-05 16:19:26 -05:00
Mataniko e415dad73a WEB: Lint files 2020-12-31 04:49:44 -05:00
Mataniko 22ef91d2a5 WEB: Migrate game downloads to use the ORM 2020-12-31 04:49:44 -05:00
Mataniko a74cd5d8f4 WEB: Move Game Demos to ORM 2020-12-31 04:49:44 -05:00
Mataniko c71dce7702 WEB: Move downloads page to use the ORM 2020-12-31 04:49:44 -05:00
Mataniko f1a969bdbd WEB: Use ORM objects for Screenshots 2020-12-31 04:49:44 -05:00
Mataniko 8780993416 WEB: Convert most most pages to use the ORM objects 2020-12-31 04:49:44 -05:00
Mataniko 8b036bed3f WEB: Update downloads page to use the new data model 2020-11-24 14:51:10 -05:00
Mataniko 06f63505e2 WEB: Fix German only news images 2020-10-10 01:34:06 -04:00
Mataniko 4013dd2502 WEB: Simplify credits data 2020-10-03 09:10:00 -04:00
Mataniko fcb1d69f96 WEB: Replace relative FRS path to absolute path 2020-10-01 15:48:18 -04:00
Mataniko 6c973b34b7 WEB: Move Subprojects to Downloads page 2020-10-01 00:48:59 -04:00
Mataniko 11316500b7 WEB: Fix strpos condition ambiguity 2020-09-29 16:38:00 -04:00
Mataniko bcf45949d0 JANITORIAL: Code lint 2020-09-29 16:08:34 -04:00