]> git.mxchange.org Git - friendica.git/commitdiff
Conversation to src
authorAdam Magness <adam.magness@gmail.com>
Thu, 16 Nov 2017 18:24:59 +0000 (13:24 -0500)
committerAdam Magness <adam.magness@gmail.com>
Thu, 16 Nov 2017 21:39:42 +0000 (16:39 -0500)
object/Conversation moved to Friendica\Core namespace.

include/conversation.php
object/Conversation.php [deleted file]
src/Core/Conversation.php [new file with mode: 0644]

index 0e814c6665d394ecf6b75575c4b5c6724f0e8cc9..d24a01b4570f421dc0cfead63f74d4f81a5c9371 100644 (file)
@@ -1,7 +1,10 @@
 <?php
-
+/**
+ * @file include/conversation.php
+ */
 use Friendica\App;
 use Friendica\Core\Config;
+use Friendica\Core\Conversation;
 use Friendica\Core\PConfig;
 use Friendica\Core\System;
 use Friendica\Database\DBM;
@@ -860,7 +863,6 @@ function conversation(App $a, $items, $mode, $update, $preview = false) {
                        // Normal View
                        $page_template = get_markup_template("threaded_conversation.tpl");
 
-                       require_once 'object/Conversation.php';
                        require_once 'object/Item.php';
 
                        $conv = new Conversation($mode, $preview);
diff --git a/object/Conversation.php b/object/Conversation.php
deleted file mode 100644 (file)
index 3b3560f..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-<?php
-/**
- * @file object/Conversation.php
- */
-if (class_exists('Conversation')) {
-       return;
-}
-
-use Friendica\Core\BaseObject;
-
-require_once 'boot.php';
-require_once 'object/Item.php';
-require_once 'include/text.php';
-
-/**
- * A list of threads
- *
- * We should think about making this a SPL Iterator
- */
-class Conversation extends BaseObject {
-       private $threads = array();
-       private $mode = null;
-       private $writable = false;
-       private $profile_owner = 0;
-       private $preview = false;
-
-       public function __construct($mode, $preview) {
-               $this->set_mode($mode);
-               $this->preview = $preview;
-       }
-
-       /**
-        * Set the mode we'll be displayed on
-        */
-       private function set_mode($mode) {
-               if($this->get_mode() == $mode)
-                       return;
-
-               $a = $this->get_app();
-
-               switch($mode) {
-                       case 'network':
-                       case 'notes':
-                               $this->profile_owner = local_user();
-                               $this->writable = true;
-                               break;
-                       case 'profile':
-                               $this->profile_owner = $a->profile['profile_uid'];
-                               $this->writable = can_write_wall($a,$this->profile_owner);
-                               break;
-                       case 'display':
-                               $this->profile_owner = $a->profile['uid'];
-                               $this->writable = can_write_wall($a,$this->profile_owner);
-                               break;
-                       default:
-                               logger('[ERROR] Conversation::set_mode : Unhandled mode ('. $mode .').', LOGGER_DEBUG);
-                               return false;
-                               break;
-               }
-               $this->mode = $mode;
-       }
-
-       /**
-        * Get mode
-        */
-       public function get_mode() {
-               return $this->mode;
-       }
-
-       /**
-        * Check if page is writable
-        */
-       public function is_writable() {
-               return $this->writable;
-       }
-
-       /**
-        * Check if page is a preview
-        */
-       public function is_preview() {
-               return $this->preview;
-       }
-
-       /**
-        * Get profile owner
-        */
-       public function get_profile_owner() {
-               return $this->profile_owner;
-       }
-
-       /**
-        * Add a thread to the conversation
-        *
-        * Returns:
-        *      _ The inserted item on success
-        *      _ false on failure
-        */
-       public function add_thread($item) {
-               $item_id = $item->get_id();
-               if(!$item_id) {
-                       logger('[ERROR] Conversation::add_thread : Item has no ID!!', LOGGER_DEBUG);
-                       return false;
-               }
-               if($this->get_thread($item->get_id())) {
-                       logger('[WARN] Conversation::add_thread : Thread already exists ('. $item->get_id() .').', LOGGER_DEBUG);
-                       return false;
-               }
-
-               /*
-                * Only add will be displayed
-                */
-               if($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid')) {
-                       logger('[WARN] Conversation::add_thread : Thread is a mail ('. $item->get_id() .').', LOGGER_DEBUG);
-                       return false;
-               }
-               if($item->get_data_value('verb') === ACTIVITY_LIKE || $item->get_data_value('verb') === ACTIVITY_DISLIKE) {
-                       logger('[WARN] Conversation::add_thread : Thread is a (dis)like ('. $item->get_id() .').', LOGGER_DEBUG);
-                       return false;
-               }
-               $item->set_conversation($this);
-               $this->threads[] = $item;
-               return end($this->threads);
-       }
-
-       /**
-        * Get data in a form usable by a conversation template
-        *
-        * We should find a way to avoid using those arguments (at least most of them)
-        *
-        * Returns:
-        *      _ The data requested on success
-        *      _ false on failure
-        */
-       public function get_template_data($conv_responses) {
-               $a = get_app();
-               $result = array();
-
-               $i = 0;
-
-               foreach($this->threads as $item) {
-                       if($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid'))
-                               continue;
-
-                       $item_data = $item->get_template_data($conv_responses);
-
-                       if(!$item_data) {
-                               logger('[ERROR] Conversation::get_template_data : Failed to get item template data ('. $item->get_id() .').', LOGGER_DEBUG);
-                               return false;
-                       }
-                       $result[] = $item_data;
-               }
-
-               return $result;
-       }
-
-       /**
-        * Get a thread based on its item id
-        *
-        * Returns:
-        *      _ The found item on success
-        *      _ false on failure
-        */
-       private function get_thread($id) {
-               foreach($this->threads as $item) {
-                       if($item->get_id() == $id)
-                               return $item;
-               }
-
-               return false;
-       }
-}
diff --git a/src/Core/Conversation.php b/src/Core/Conversation.php
new file mode 100644 (file)
index 0000000..13ba8df
--- /dev/null
@@ -0,0 +1,189 @@
+<?php
+/**
+ * @file src/Core/Conversation.php
+ */
+namespace Friendica\Core;
+
+if (class_exists('Conversation')) {
+       return;
+}
+
+use Friendica\Core\BaseObject;
+
+require_once 'boot.php';
+require_once 'object/Item.php';
+require_once 'include/text.php';
+
+/**
+ * A list of threads
+ *
+ * We should think about making this a SPL Iterator
+ */
+class Conversation extends BaseObject
+{
+       private $threads = array();
+       private $mode = null;
+       private $writable = false;
+       private $profile_owner = 0;
+       private $preview = false;
+
+       public function __construct($mode, $preview)
+       {
+               $this->set_mode($mode);
+               $this->preview = $preview;
+       }
+
+       /**
+        * Set the mode we'll be displayed on
+        */
+       private function set_mode($mode)
+       {
+               if ($this->get_mode() == $mode) {
+                       return;
+               }
+
+               $a = $this->get_app();
+
+               switch ($mode) {
+                       case 'network':
+                       case 'notes':
+                               $this->profile_owner = local_user();
+                               $this->writable = true;
+                               break;
+                       case 'profile':
+                               $this->profile_owner = $a->profile['profile_uid'];
+                               $this->writable = can_write_wall($a, $this->profile_owner);
+                               break;
+                       case 'display':
+                               $this->profile_owner = $a->profile['uid'];
+                               $this->writable = can_write_wall($a, $this->profile_owner);
+                               break;
+                       default:
+                               logger('[ERROR] Conversation::set_mode : Unhandled mode ('. $mode .').', LOGGER_DEBUG);
+                               return false;
+                               break;
+               }
+               $this->mode = $mode;
+       }
+
+       /**
+        * Get mode
+        */
+       public function get_mode()
+       {
+               return $this->mode;
+       }
+
+       /**
+        * Check if page is writable
+        */
+       public function is_writable()
+       {
+               return $this->writable;
+       }
+
+       /**
+        * Check if page is a preview
+        */
+       public function is_preview()
+       {
+               return $this->preview;
+       }
+
+       /**
+        * Get profile owner
+        */
+       public function get_profile_owner()
+       {
+               return $this->profile_owner;
+       }
+
+       /**
+        * Add a thread to the conversation
+        *
+        * Returns:
+        *      _ The inserted item on success
+        *      _ false on failure
+        */
+       public function add_thread($item)
+       {
+               $item_id = $item->get_id();
+
+               if (!$item_id) {
+                       logger('[ERROR] Conversation::add_thread : Item has no ID!!', LOGGER_DEBUG);
+                       return false;
+               }
+
+               if ($this->get_thread($item->get_id())) {
+                       logger('[WARN] Conversation::add_thread : Thread already exists ('. $item->get_id() .').', LOGGER_DEBUG);
+                       return false;
+               }
+
+               /*
+                * Only add will be displayed
+                */
+               if ($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid')) {
+                       logger('[WARN] Conversation::add_thread : Thread is a mail ('. $item->get_id() .').', LOGGER_DEBUG);
+                       return false;
+               }
+
+               if ($item->get_data_value('verb') === ACTIVITY_LIKE || $item->get_data_value('verb') === ACTIVITY_DISLIKE) {
+                       logger('[WARN] Conversation::add_thread : Thread is a (dis)like ('. $item->get_id() .').', LOGGER_DEBUG);
+                       return false;
+               }
+
+               $item->set_conversation($this);
+               $this->threads[] = $item;
+
+               return end($this->threads);
+       }
+
+       /**
+        * Get data in a form usable by a conversation template
+        *
+        * We should find a way to avoid using those arguments (at least most of them)
+        *
+        * Returns:
+        *      _ The data requested on success
+        *      _ false on failure
+        */
+       public function get_template_data($conv_responses)
+       {
+               $a = get_app();
+               $result = array();
+               $i = 0;
+
+               foreach ($this->threads as $item) {
+                       if($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid'))
+                               continue;
+
+                       $item_data = $item->get_template_data($conv_responses);
+
+                       if (!$item_data) {
+                               logger('[ERROR] Conversation::get_template_data : Failed to get item template data ('. $item->get_id() .').', LOGGER_DEBUG);
+                               return false;
+                       }
+                       $result[] = $item_data;
+               }
+
+               return $result;
+       }
+
+       /**
+        * Get a thread based on its item id
+        *
+        * Returns:
+        *      _ The found item on success
+        *      _ false on failure
+        */
+       private function get_thread($id)
+       {
+               foreach ($this->threads as $item) {
+                       if ($item->get_id() == $id) {
+                               return $item;
+                       }
+               }
+
+               return false;
+       }
+}