From faa3933fbb54d0fc4a12145bd0aefa899db30dea Mon Sep 17 00:00:00 2001 From: "matthew.gregg" Date: Tue, 15 Jul 2008 23:20:45 -0400 Subject: Added notice deletion http://laconi.ca/PITS/00045 Removes selected notice and any replies that reference it. Attempts to de-queue anything pending. This patch does not archive notices. darcs-hash:20080716032045-982e4-a0b5d37ecfa84796f1681dda54110094ad1424c6.gz --- lib/deleteaction.php | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 lib/deleteaction.php (limited to 'lib/deleteaction.php') diff --git a/lib/deleteaction.php b/lib/deleteaction.php new file mode 100644 index 000000000..5d7a3245a --- /dev/null +++ b/lib/deleteaction.php @@ -0,0 +1,61 @@ +. + */ + +if (!defined('LACONICA')) { exit(1); } + +class DeleteAction extends Action { + + function handle($args) { + parent::handle($args); + $user = common_current_user(); + $notice_id = $this->trimmed('notice'); + $notice = Notice::staticGet($notice_id); + $profile = $notice->getProfile(); + $user_profile = $user->getProfile(); + + if (!common_logged_in()) { + common_user_error(_('Not logged in.')); + } else if ($notice->profile_id != $user_profile->id) { + common_user_error(_('Can\'t delete this notice.')); + } + } + + function show_top($arr=NULL) { + if ($arr) { + $error = $arr[1]; + } + if ($error) { + common_element('p', 'error', $error); + } else { + $instr = $this->get_instructions(); + $output = common_markup_to_html($instr); + common_element_start('div', 'instructions'); + common_raw($output); + common_element_end('div'); + } + } + + function get_title() { + return NULL; + } + + function show_header($arr) { + return; + } +} -- cgit v1.2.3-54-g00ecf