summaryrefslogtreecommitdiffstats
path: root/paste/include/storage
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2010-02-19 03:18:55 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2010-02-19 03:18:55 +0100
commitff117414b781ac8bcfa512001af252ab44d61592 (patch)
tree9350198e0e3db76831281b0fe45c2302458e1778 /paste/include/storage
parent82b803a304b7c58338130b305a2adae95b0d3e07 (diff)
downloadrafb-nopaste-ff117414b781ac8bcfa512001af252ab44d61592.tar.gz
rafb-nopaste-ff117414b781ac8bcfa512001af252ab44d61592.tar.xz
rafb-nopaste-ff117414b781ac8bcfa512001af252ab44d61592.zip
added delContent
Diffstat (limited to '')
-rw-r--r--paste/include/storage/FileStorage.php11
-rw-r--r--paste/include/storage/MysqlStorage.php15
-rw-r--r--paste/include/storage/StorageEngine.php1
3 files changed, 27 insertions, 0 deletions
diff --git a/paste/include/storage/FileStorage.php b/paste/include/storage/FileStorage.php
index 77cf0af..057b5de 100644
--- a/paste/include/storage/FileStorage.php
+++ b/paste/include/storage/FileStorage.php
@@ -68,6 +68,17 @@ class FileStorage extends StorageEngine
return $pasteUrl;
}
+
+ public function delContent($pid)
+ {
+ $filename = realpath($this->storage_path . $pid);
+ if (!empty($filename) && file_exists($filename)) {
+ if (!@unlink($filename)) {
+ header('HTTP/1.0 503 Service Unavailable');
+ die('Failed to remove ' . $filename);
+ }
+ }
+ }
}
?>
diff --git a/paste/include/storage/MysqlStorage.php b/paste/include/storage/MysqlStorage.php
index 49af59e..5dd24c3 100644
--- a/paste/include/storage/MysqlStorage.php
+++ b/paste/include/storage/MysqlStorage.php
@@ -123,6 +123,21 @@ INDEX (nick)
echo PastifyText($content, $lang, $description);
}
}
+
+ public function delContent($pid)
+ {
+ if ($stmt = $this->mysql->prepare('DELETE FROM ' . $this->table . ' WHERE pid = ? LIMIT 1'))
+ {
+ $stmt->bind_param('s', $pid);
+
+ /* execute query */
+ if (!$stmt->execute()) {
+ header('HTTP/1.0 503 Service Unavailable');
+ die('MySQL Error (' . $this->mysql->errno . ') ' .
+ $this->mysql->error);
+ }
+ }
+ }
}
?>
diff --git a/paste/include/storage/StorageEngine.php b/paste/include/storage/StorageEngine.php
index 8cf697c..db6e34b 100644
--- a/paste/include/storage/StorageEngine.php
+++ b/paste/include/storage/StorageEngine.php
@@ -36,6 +36,7 @@ abstract class StorageEngine
{
abstract public function setContent($content, $language, $nick, $description);
abstract public function getContent($pid);
+ abstract public function delContent($pid);
public function generateToken($name)
{