feat: Implement cleanup methods for nonassigned article files and images in ArticleRepository
This commit is contained in:
@@ -40,4 +40,38 @@ class ArticleRepository
|
||||
|
||||
return $article;
|
||||
}
|
||||
|
||||
/**
|
||||
* Usuwa nieprzypisane pliki artykulow (article_id = null) wraz z plikami z dysku.
|
||||
*/
|
||||
public function deleteNonassignedFiles(): void
|
||||
{
|
||||
$results = $this->db->select('pp_articles_files', '*', ['article_id' => null]);
|
||||
if (is_array($results)) {
|
||||
foreach ($results as $row) {
|
||||
if (file_exists('../' . $row['src'])) {
|
||||
unlink('../' . $row['src']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$this->db->delete('pp_articles_files', ['article_id' => null]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Usuwa nieprzypisane zdjecia artykulow (article_id = null) wraz z plikami z dysku.
|
||||
*/
|
||||
public function deleteNonassignedImages(): void
|
||||
{
|
||||
$results = $this->db->select('pp_articles_images', '*', ['article_id' => null]);
|
||||
if (is_array($results)) {
|
||||
foreach ($results as $row) {
|
||||
if (file_exists('../' . $row['src'])) {
|
||||
unlink('../' . $row['src']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$this->db->delete('pp_articles_images', ['article_id' => null]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,8 +32,8 @@ class ArticlesController
|
||||
exit;
|
||||
}
|
||||
|
||||
\admin\factory\Articles::delete_nonassigned_images();
|
||||
\admin\factory\Articles::delete_nonassigned_files();
|
||||
$this->repository->deleteNonassignedImages();
|
||||
$this->repository->deleteNonassignedFiles();
|
||||
|
||||
return \Tpl::view('articles/article-edit', [
|
||||
'article' => $this->repository->find((int)\S::get('id')),
|
||||
|
||||
@@ -433,29 +433,15 @@ class Articles
|
||||
public static function delete_nonassigned_files()
|
||||
{
|
||||
global $mdb;
|
||||
|
||||
$results = $mdb -> select( 'pp_articles_files', '*', [ 'article_id' => null ] );
|
||||
if ( is_array( $results ) ) foreach ( $results as $row )
|
||||
{
|
||||
if ( file_exists( '../' . $row['src'] ) )
|
||||
unlink( '../' . $row['src'] );
|
||||
}
|
||||
|
||||
$mdb -> delete( 'pp_articles_files', [ 'article_id' => null ] );
|
||||
$repository = new \Domain\Article\ArticleRepository( $mdb );
|
||||
$repository->deleteNonassignedFiles();
|
||||
}
|
||||
|
||||
public static function delete_nonassigned_images()
|
||||
{
|
||||
global $mdb;
|
||||
|
||||
$results = $mdb -> select( 'pp_articles_images', '*', [ 'article_id' => null ] );
|
||||
if ( is_array( $results ) ) foreach ( $results as $row )
|
||||
{
|
||||
if ( file_exists( '../' . $row['src'] ) )
|
||||
unlink( '../' . $row['src'] );
|
||||
}
|
||||
|
||||
$mdb -> delete( 'pp_articles_images', [ 'article_id' => null ] );
|
||||
$repository = new \Domain\Article\ArticleRepository( $mdb );
|
||||
$repository->deleteNonassignedImages();
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user