Compare commits

..

2 commits

Author SHA1 Message Date
Steffen Lange
8dc42740e0 Blender: parse directory listing due to bot protection 2025-11-05 10:35:21 +01:00
Steffen Lange
132cf3c958 Add option to use last regex match 2025-11-05 10:32:21 +01:00
3 changed files with 19 additions and 18 deletions

View file

@ -81,8 +81,8 @@ abstract class PatchBase {
} }
return false; return false;
} }
protected function parse(string $re) : bool { protected function parse(string $re, bool $last = false) : bool {
if ($str = $this->regex_str($re)) { if ($str = $this->regex_str($re, $last)) {
$this->patch->setVersion($str, true); $this->patch->setVersion($str, true);
return true; return true;
} }
@ -156,10 +156,10 @@ abstract class PatchBase {
// TODO - add option: $m = array_reverse($m); // TODO - add option: $m = array_reverse($m);
return $m; return $m;
} }
private function regex_str(string $pattern) { private function regex_str(string $pattern, bool $last) {
$m = $this->regex($pattern); $m = $this->regex($pattern);
if ($m) if ($m)
return $m[0]; return $last ? end($m) : $m[0];
return false; return false;
} }
} }

View file

@ -1,14 +0,0 @@
<?php
class Blender extends PatchBase {
function __construct() {
parent::__construct('Blender Foundation', 'Blender', 'https://www.blender.org/download/');
}
function check() : bool {
if ($this->fetch('https://www.blender.org/download/'))
return $this->parse('_//www\.blender\.org/download/release/Blender[\d\.]+/blender-([\d\.]+)-windows-x64\.msi_');
return false;
}
}
?>

15
modules/Blender45.php Normal file
View file

@ -0,0 +1,15 @@
<?php
class Blender45 extends PatchBase {
function __construct() {
parent::__construct('Blender Foundation', 'Blender', 'https://www.blender.org/download/');
$this->patch->setBranch('4.5');
}
function check() : bool {
if ($this->fetch('https://download.blender.org/release/Blender4.5/'))
return $this->parse('/>blender-([\d\.]+)\.sha256</', true);
return false;
}
}
?>