postDelete hook, imagick dependency, rrmdir
This commit is contained in:
parent
b0e98033b4
commit
83cf7d1a04
@ -125,6 +125,7 @@ abstract class DatabaseEntity implements ArrayAccess, JsonSerializable {
|
|||||||
public function preInsert(array &$row) { }
|
public function preInsert(array &$row) { }
|
||||||
public function postFetch(SQL $sql, array $row) { }
|
public function postFetch(SQL $sql, array $row) { }
|
||||||
public static function getPredefinedValues(): array { return []; }
|
public static function getPredefinedValues(): array { return []; }
|
||||||
|
public function postDelete() { }
|
||||||
|
|
||||||
public static function fromRow(SQL $sql, array $row): static {
|
public static function fromRow(SQL $sql, array $row): static {
|
||||||
$handler = self::getHandler($sql);
|
$handler = self::getHandler($sql);
|
||||||
@ -207,6 +208,7 @@ abstract class DatabaseEntity implements ArrayAccess, JsonSerializable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($handler->delete($this->id)) {
|
if ($handler->delete($this->id)) {
|
||||||
|
$this->postDelete();
|
||||||
$this->id = null;
|
$this->id = null;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -284,4 +284,21 @@ function parseClass($class): string {
|
|||||||
function isClass(string $str): bool {
|
function isClass(string $str): bool {
|
||||||
$path = getClassPath($str);
|
$path = getClassPath($str);
|
||||||
return is_file($path) && class_exists($str);
|
return is_file($path) && class_exists($str);
|
||||||
|
}
|
||||||
|
|
||||||
|
function rrmdir(string $dir): void {
|
||||||
|
if (is_dir($dir)) {
|
||||||
|
$objects = scandir($dir);
|
||||||
|
foreach ($objects as $object) {
|
||||||
|
if ($object !== "." && $object !== "..") {
|
||||||
|
$path = $dir . DIRECTORY_SEPARATOR . $object;
|
||||||
|
if (is_dir($path) && !is_link($path)) {
|
||||||
|
rrmdir($path);
|
||||||
|
} else {
|
||||||
|
unlink($path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
rmdir($dir);
|
||||||
|
}
|
||||||
}
|
}
|
@ -11,8 +11,8 @@ RUN mkdir -p /application/core/Configuration /var/www/.gnupg && \
|
|||||||
|
|
||||||
# YAML + dev dependencies + additional packages
|
# YAML + dev dependencies + additional packages
|
||||||
RUN apt-get update -y && \
|
RUN apt-get update -y && \
|
||||||
apt-get install -y libyaml-dev libzip-dev libgmp-dev libpng-dev gnupg2 $ADDITIONAL_PACKAGES && \
|
apt-get install -y libyaml-dev libzip-dev libgmp-dev libpng-dev libmagickwand-dev gnupg2 $ADDITIONAL_PACKAGES && \
|
||||||
pecl install yaml && docker-php-ext-enable yaml && \
|
printf "\n" | pecl install yaml imagick && docker-php-ext-enable yaml imagick && \
|
||||||
docker-php-ext-install gd
|
docker-php-ext-install gd
|
||||||
|
|
||||||
# NodeJS
|
# NodeJS
|
||||||
|
1
img/.gitignore
vendored
Normal file
1
img/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
uploads/
|
Loading…
Reference in New Issue
Block a user