init
This commit is contained in:
commit
72a26edcff
22092 changed files with 2101903 additions and 0 deletions
140
lib/PhpSpreadsheet/Document/Security.php
Normal file
140
lib/PhpSpreadsheet/Document/Security.php
Normal file
|
|
@ -0,0 +1,140 @@
|
|||
<?php
|
||||
|
||||
namespace PhpOffice\PhpSpreadsheet\Document;
|
||||
|
||||
use PhpOffice\PhpSpreadsheet\Shared\PasswordHasher;
|
||||
|
||||
class Security
|
||||
{
|
||||
/**
|
||||
* LockRevision.
|
||||
*/
|
||||
private bool $lockRevision = false;
|
||||
|
||||
/**
|
||||
* LockStructure.
|
||||
*/
|
||||
private bool $lockStructure = false;
|
||||
|
||||
/**
|
||||
* LockWindows.
|
||||
*/
|
||||
private bool $lockWindows = false;
|
||||
|
||||
/**
|
||||
* RevisionsPassword.
|
||||
*/
|
||||
private string $revisionsPassword = '';
|
||||
|
||||
/**
|
||||
* WorkbookPassword.
|
||||
*/
|
||||
private string $workbookPassword = '';
|
||||
|
||||
/**
|
||||
* Create a new Document Security instance.
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Is some sort of document security enabled?
|
||||
*/
|
||||
public function isSecurityEnabled(): bool
|
||||
{
|
||||
return $this->lockRevision
|
||||
|| $this->lockStructure
|
||||
|| $this->lockWindows;
|
||||
}
|
||||
|
||||
public function getLockRevision(): bool
|
||||
{
|
||||
return $this->lockRevision;
|
||||
}
|
||||
|
||||
public function setLockRevision(?bool $locked): self
|
||||
{
|
||||
if ($locked !== null) {
|
||||
$this->lockRevision = $locked;
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getLockStructure(): bool
|
||||
{
|
||||
return $this->lockStructure;
|
||||
}
|
||||
|
||||
public function setLockStructure(?bool $locked): self
|
||||
{
|
||||
if ($locked !== null) {
|
||||
$this->lockStructure = $locked;
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getLockWindows(): bool
|
||||
{
|
||||
return $this->lockWindows;
|
||||
}
|
||||
|
||||
public function setLockWindows(?bool $locked): self
|
||||
{
|
||||
if ($locked !== null) {
|
||||
$this->lockWindows = $locked;
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getRevisionsPassword(): string
|
||||
{
|
||||
return $this->revisionsPassword;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set RevisionsPassword.
|
||||
*
|
||||
* @param bool $alreadyHashed If the password has already been hashed, set this to true
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setRevisionsPassword(?string $password, bool $alreadyHashed = false): static
|
||||
{
|
||||
if ($password !== null) {
|
||||
if (!$alreadyHashed) {
|
||||
$password = PasswordHasher::hashPassword($password);
|
||||
}
|
||||
$this->revisionsPassword = $password;
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getWorkbookPassword(): string
|
||||
{
|
||||
return $this->workbookPassword;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set WorkbookPassword.
|
||||
*
|
||||
* @param bool $alreadyHashed If the password has already been hashed, set this to true
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function setWorkbookPassword(?string $password, bool $alreadyHashed = false): static
|
||||
{
|
||||
if ($password !== null) {
|
||||
if (!$alreadyHashed) {
|
||||
$password = PasswordHasher::hashPassword($password);
|
||||
}
|
||||
$this->workbookPassword = $password;
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue