Example #1
0
 public function removeLock(LockInfoInterface $lock)
 {
     $this->conn->delete('#__webdav_lock', ['token' => $lock->getToken()->toBinary()]);
 }
Example #2
0
 protected function createLockResponse($status, LockInfoInterface $lock, Uri $baseUri, $lockHeader = true)
 {
     $response = new HttpResponse($status);
     $response->setHeader('Content-Type', 'application/xml; charset="utf-8"');
     if ($lockHeader) {
         $response->setHeader('Lock-Token', sprintf('<urn:webdav:lock:%s>', $lock->getToken()));
     }
     $response->setEntity(function (StreamInterface $stream) use($lock, $baseUri) {
         $xml = new XmlStreamWriter(new StreamWrapper($stream));
         $xml->registerNamespace(WebDav::NS_DAV, 'D');
         $xml->startDocument();
         $xml->startElement(WebDav::NS_DAV, 'prop');
         $xml->startElement(WebDav::NS_DAV, 'lockdiscovery');
         $lock->toXml($xml, $baseUri);
         $xml->endElement();
         // D:lockdiscovery
         $xml->endElement();
         // D:prop
         $xml->endDocument();
         $xml->flush();
     });
     return $response;
 }
Example #3
0
    public function removeLock(LockInfoInterface $lock)
    {
        $sql = '	DELETE FROM "file_locks"
					WHERE "id" = :token
					AND "expires" > :time
		';
        $stmt = $this->lockStore->prepare($sql);
        $stmt->bindValue('token', (string) $lock->getToken());
        $stmt->bindValue('time', time());
        $stmt->execute();
    }