diff --git a/PatchBase.php b/PatchBase.php index 2fbfdbd..931df2f 100644 --- a/PatchBase.php +++ b/PatchBase.php @@ -81,8 +81,8 @@ abstract class PatchBase { } return false; } - protected function parse(string $re) : bool { - if ($str = $this->regex_str($re)) { + protected function parse(string $re, bool $last = false) : bool { + if ($str = $this->regex_str($re, $last)) { $this->patch->setVersion($str, true); return true; } @@ -156,10 +156,10 @@ abstract class PatchBase { // TODO - add option: $m = array_reverse($m); return $m; } - private function regex_str(string $pattern) { + private function regex_str(string $pattern, bool $last) { $m = $this->regex($pattern); if ($m) - return $m[0]; + return $last ? end($m) : $m[0]; return false; } } diff --git a/modules/Blender.php b/modules/Blender.php deleted file mode 100644 index b79d7df..0000000 --- a/modules/Blender.php +++ /dev/null @@ -1,14 +0,0 @@ -fetch('https://www.blender.org/download/')) - return $this->parse('_//www\.blender\.org/download/release/Blender[\d\.]+/blender-([\d\.]+)-windows-x64\.msi_'); - return false; - } -} - -?> diff --git a/modules/Blender45.php b/modules/Blender45.php new file mode 100644 index 0000000..846ee0f --- /dev/null +++ b/modules/Blender45.php @@ -0,0 +1,15 @@ +patch->setBranch('4.5'); + } + function check() : bool { + if ($this->fetch('https://download.blender.org/release/Blender4.5/')) + return $this->parse('/>blender-([\d\.]+)\.sha256