Merge pull request #6117 from LibreSign/fix/signer-status-draft-on-add

fix: respect status 0 (DRAFT) when adding new signers
This commit is contained in:
Vitor Mattos 2025-12-11 15:26:31 -03:00 committed by GitHub
commit 0416947bcf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -53,7 +53,7 @@ class RequestSignatureService {
public function save(array $data): FileEntity {
$file = $this->saveFile($data);
$this->saveVisibleElements($data, $file);
if (empty($data['status'])) {
if (!isset($data['status'])) {
$data['status'] = $file->getStatus();
}
$this->associateToSigners($data, $file->getId());
@ -289,6 +289,8 @@ class RequestSignatureService {
}
private function determineInitialStatus(int $signingOrder, ?int $fileStatus = null): \OCA\Libresign\Enum\SignRequestStatus {
// If fileStatus is explicitly DRAFT (0), keep signer as DRAFT
// This allows adding new signers in DRAFT mode even when file is not in DRAFT status
if ($fileStatus === FileEntity::STATUS_DRAFT) {
return \OCA\Libresign\Enum\SignRequestStatus::DRAFT;
}