68 lines
1.7 KiB
PHP
68 lines
1.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Locked
|
|
*
|
|
* The 423 is thrown when a client tried to access a resource that was locked, without supplying a valid lock token
|
|
*
|
|
* @package Sabre
|
|
* @subpackage DAV
|
|
* @copyright Copyright (C) 2007-2012 Rooftop Solutions. All rights reserved.
|
|
* @author Evert Pot (http://www.rooftopsolutions.nl/)
|
|
* @license http://code.google.com/p/sabredav/wiki/License Modified BSD License
|
|
*/
|
|
class Sabre_DAV_Exception_Locked extends Sabre_DAV_Exception {
|
|
|
|
/**
|
|
* Lock information
|
|
*
|
|
* @var Sabre_DAV_Locks_LockInfo
|
|
*/
|
|
protected $lock;
|
|
|
|
/**
|
|
* Creates the exception
|
|
*
|
|
* A LockInfo object should be passed if the user should be informed
|
|
* which lock actually has the file locked.
|
|
*
|
|
* @param Sabre_DAV_Locks_LockInfo $lock
|
|
*/
|
|
public function __construct(Sabre_DAV_Locks_LockInfo $lock = null) {
|
|
|
|
$this->lock = $lock;
|
|
|
|
}
|
|
|
|
/**
|
|
* Returns the HTTP statuscode for this exception
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getHTTPCode() {
|
|
|
|
return 423;
|
|
|
|
}
|
|
|
|
/**
|
|
* This method allows the exception to include additional information into the WebDAV error response
|
|
*
|
|
* @param Sabre_DAV_Server $server
|
|
* @param DOMElement $errorNode
|
|
* @return void
|
|
*/
|
|
public function serialize(Sabre_DAV_Server $server,DOMElement $errorNode) {
|
|
|
|
if ($this->lock) {
|
|
$error = $errorNode->ownerDocument->createElementNS('DAV:','d:lock-token-submitted');
|
|
$errorNode->appendChild($error);
|
|
if (!is_object($this->lock)) var_dump($this->lock);
|
|
$error->appendChild($errorNode->ownerDocument->createElementNS('DAV:','d:href',$this->lock->uri));
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|