}
$bNew = false;
+ $bDelete = false;
if (!isset($orignalName) || $orignalName == '') {
//new file
$bNew = true;
+ if (strpos($name, '.') === false) {
+ //automatically append file extension if none is there
+ $name .= '.' . $arFile['type'];
+ }
} else if (!$this->repo->hasFile($orignalName)) {
//unknown file
//FIXME: Show error message
continue;
+ } else if (isset($arFile['delete']) && $arFile['delete'] == 1) {
+ $bDelete = true;
} else if ($orignalName != $name) {
//FIXME: what to do with overwrites?
$vc->getCommand('mv')
}
$file = $this->repo->getFileByName($name, false);
- if ($bNew || $file->getContent() != $arFile['content']) {
+ if ($bDelete) {
+ $command = $vc->getCommand('rm')
+ ->addArgument($file->getFilename())
+ ->execute();
+ $bChanged = true;
+ } else if ($bNew || $file->getContent() != $arFile['content']) {
file_put_contents($file->getPath(), $arFile['content']);
$command = $vc->getCommand('add')
->addArgument($file->getFilename())