]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/deleteaction.php
Attachments and their list now provide "ajax" view. Also added a few sidebars relatin...
[quix0rs-gnu-social.git] / lib / deleteaction.php
index 5ba0e7e44283d3705dac1dddae4e73df69a1fcfc..91c6487a98ac3717401814672cdd338b3e8ffb4e 100644 (file)
@@ -1,9 +1,12 @@
 <?php
-/*
- * Laconica - a distributed open-source microblogging tool
- * Copyright (C) 2008, Controlez-Vous, Inc.
+/**
+ * Laconica, the distributed open-source microblogging tool
  *
- * This program is free software: you can redistribute it and/or modify
+ * Base class for deleting things
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
  * (at your option) any later version.
  *
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category  Personal
+ * @package   Laconica
+ * @author    Evan Prodromou <evan@controlyourself.ca>
+ * @author    Sarven Capadisli <csarven@controlyourself.ca>
+ * @copyright 2008 Control Yourself, Inc.
+ * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link      http://laconi.ca/
  */
 
-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);
-               if (!$notice) {
-                       common_user_error(_('No such notice.'));
-                       exit;
-               }
-
-               $profile = $notice->getProfile();
-               $user_profile = $user->getProfile();
-
-               if (!common_logged_in()) {
-                       common_user_error(_('Not logged in.'));
-                       exit;
-               } else if ($notice->profile_id != $user_profile->id) {
-                       common_user_error(_('Can\'t delete this notice.'));
-                       exit;
-               }
-       }
-
-       function show_top($arr=NULL) {
-               $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() {
-               return;
-       }
+if (!defined('LACONICA')) {
+     exit(1);
+}
+
+class DeleteAction extends Action
+{
+    var $user         = null;
+    var $notice       = null;
+    var $profile      = null;
+    var $user_profile = null;
+
+    function prepare($args)
+    {
+        parent::prepare($args);
+
+        $this->user   = common_current_user();
+        $notice_id    = $this->trimmed('notice');
+        $this->notice = Notice::staticGet($notice_id);
+
+        if (!$this->notice) {
+            common_user_error(_('No such notice.'));
+            exit;
+        }
+
+        $this->profile      = $this->notice->getProfile();
+        $this->user_profile = $this->user->getProfile();
+
+        return true;
+    }
+
+    function handle($args)
+    {
+        parent::handle($args);
+
+        if (!common_logged_in()) {
+            common_user_error(_('Not logged in.'));
+            exit;
+        } else if ($this->notice->profile_id != $this->user_profile->id) {
+            common_user_error(_('Can\'t delete this notice.'));
+            exit;
+        }
+    }
+
 }