Skip to content
Snippets Groups Projects
Commit e01e6821 authored by Sebastien's avatar Sebastien
Browse files

rebase on main with annotation mosaic

parent aa9adbbd
Branches
Tags
1 merge request!84Tuleap 198 get rid of create zip
File deleted
File deleted
...@@ -51,7 +51,7 @@ class ProjectController extends AbstractController ...@@ -51,7 +51,7 @@ class ProjectController extends AbstractController
return $this->redirectToRoute('capsule_list'); return $this->redirectToRoute('capsule_list');
} }
$this->extractZipArchiveInNewCapsuleDirectory($capsule_directory); $this->createDefaultProjectStructure($capsule_directory);
$this->setVideoUrlNodeAttributeInXMLProjectFile($capsule_directory, $video_url); $this->setVideoUrlNodeAttributeInXMLProjectFile($capsule_directory, $video_url);
...@@ -71,9 +71,6 @@ class ProjectController extends AbstractController ...@@ -71,9 +71,6 @@ class ProjectController extends AbstractController
} }
#[Route('/{_locale<%app.supported_locales%>}/project/duplicate', name:'duplicate_project', methods:['POST'])] #[Route('/{_locale<%app.supported_locales%>}/project/duplicate', name:'duplicate_project', methods:['POST'])]
/**
* @throws ZipArchiveNotOpeningException
*/
public function duplicate( public function duplicate(
Capsule $capsule, Capsule $capsule,
string $parent_directory, string $parent_directory,
...@@ -98,7 +95,7 @@ class ProjectController extends AbstractController ...@@ -98,7 +95,7 @@ class ProjectController extends AbstractController
return $this->redirectToRoute('capsule_list'); return $this->redirectToRoute('capsule_list');
} }
$this->extractZipArchiveInNewCapsuleDirectory($capsule_directory); $this->createDefaultProjectStructure($capsule_directory);
$this->replaceTheWholeFileDirectoryWithParentOne($file_system, $parent_directory, $capsule_directory); $this->replaceTheWholeFileDirectoryWithParentOne($file_system, $parent_directory, $capsule_directory);
$this->createOrUpdatePasswordFile($capsule_directory, $capsule->getPassword()); $this->createOrUpdatePasswordFile($capsule_directory, $capsule->getPassword());
...@@ -174,10 +171,7 @@ class ProjectController extends AbstractController ...@@ -174,10 +171,7 @@ class ProjectController extends AbstractController
]); ]);
} }
/** private function createDefaultProjectStructure(string $capsule_directory): void
* @throws ZipArchiveNotOpeningException The archive file doesn't exist.
*/
private function extractZipArchiveInNewCapsuleDirectory(string $capsule_directory): void
{ {
$prototype_directory_root = '../capsule-prototype'; $prototype_directory_root = '../capsule-prototype';
$this->file_system->mirror( $this->file_system->mirror(
...@@ -186,19 +180,17 @@ class ProjectController extends AbstractController ...@@ -186,19 +180,17 @@ class ProjectController extends AbstractController
null, null,
['override' => true, 'delete' => true] ['override' => true, 'delete' => true]
); );
$this->file_system->copy($prototype_directory_root . '/php', $capsule_directory . '/php', true);
$this->file_system->copy($prototype_directory_root . '/file', $capsule_directory . '/file', true);
$this->file_system->copy($prototype_directory_root . '/file', $capsule_directory . '/file', true);
$zip = new ZipArchive();
$zip_file_archive_is_open = $zip->open("create.zip");
if (! $zip_file_archive_is_open) { // Remove unnecessary files and directories
throw new ZipArchiveNotOpeningException("Create Zip Archive could not be open"); $this->file_system->remove(
} [
Path::join($capsule_directory, 'js'),
$zip->extractTo($capsule_directory); Path::join($capsule_directory, 'css'),
$zip->close(); Path::join($capsule_directory, 'webfonts'),
Path::join($capsule_directory, 'README.md'),
Path::join($capsule_directory, 'la-page-des-malins.php')
]
);
} }
private function setVideoUrlNodeAttributeInXMLProjectFile(string $project_directory, string $video_url): void private function setVideoUrlNodeAttributeInXMLProjectFile(string $project_directory, string $video_url): void
...@@ -221,7 +213,7 @@ class ProjectController extends AbstractController ...@@ -221,7 +213,7 @@ class ProjectController extends AbstractController
private function createOrUpdatePasswordFile(string $capsule_directory, string $password): void private function createOrUpdatePasswordFile(string $capsule_directory, string $password): void
{ {
$project_password_file = $capsule_directory . "/file/projectPassword.txt"; $project_password_file = $capsule_directory . '/file/projectPassword.txt';
file_put_contents($project_password_file, $password); file_put_contents($project_password_file, $password);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment