* @param array $arr Array of tags/terms with tag/term name and total count of use.
* @return array Alphabetical sorted array of used tags/terms of an user.
*/
- private static function tagCalc($arr)
+ private static function tagCalc(array $arr)
{
$tags = [];
$min = 1e9;
$className = $this->subConsoles[$command];
+ /** @var Console $subconsole */
$subconsole = new $className($subargs);
foreach ($this->options as $name => $value) {
use Exception;
use Friendica\BaseObject;
use Friendica\Render\FriendicaSmarty;
+use Friendica\Render\ITemplateEngine;
/**
* @brief This class handles Renderer related functions.
namespace Friendica\Core;
use Friendica\Database\DBA;
+use Friendica\Model\Storage\IStorage;
/**
while($r = DBA::fetch($rr)) {
$id = $r['id'];
$data = $r['data'];
+ /** @var IStorage $backendClass */
$backendClass = $r['backend-class'];
$backendRef = $r['backend-ref'];
if (!is_null($backendClass) && $backendClass !== '') {
}
Logger::log("save data to new backend " . $dest);
+ /** @var IStorage $dest */
$ref = $dest::put($data);
Logger::log("saved data as " . $ref);
use Friendica\Core\StorageManager;
use Friendica\Database\DBA;
use Friendica\Database\DBStructure;
+use Friendica\Model\Storage\IStorage;
use Friendica\Object\Image;
use Friendica\Util\Security;
use Friendica\Util\DateTimeFormat;
$filesize = strlen($data);
}
+ /** @var IStorage $backend_class */
$backend_class = StorageManager::getBackend();
$backend_ref = '';
if ($backend_class !== '') {
$items = self::select(['backend-class','backend-ref'], $conditions);
foreach($items as $item) {
+ /** @var IStorage $backend_class */
$backend_class = (string)$item['backend-class'];
if ($backend_class !== '') {
$fields['backend-ref'] = $backend_class::put($img->asString(), $item['backend-ref']);
$items = self::select(['backend-class','backend-ref'], $conditions);
foreach($items as $item) {
+ /** @var IStorage $backend_class */
$backend_class = (string)$item['backend-class'];
if ($backend_class !== '') {
$backend_class::delete($item['backend-ref']);
}
/**
- * @param string $recipient recipient, default empty
+ * @param array $recipient recipient, default empty
* @param string $body message body, default empty
* @param string $subject message subject, default empty
* @param string $replyto reply to, default empty
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
- public static function sendWall($recipient = '', $body = '', $subject = '', $replyto = '')
+ public static function sendWall(array $recipient = [], $body = '', $subject = '', $replyto = '')
{
if (!$recipient) {
return -1;
use Friendica\Core\StorageManager;
use Friendica\Database\DBA;
use Friendica\Database\DBStructure;
+use Friendica\Model\Storage\IStorage;
use Friendica\Object\Image;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Network;
$data = "";
$backend_ref = "";
+ /** @var IStorage $backend_class */
if (DBA::isResult($existing_photo)) {
$backend_ref = (string)$existing_photo["backend-ref"];
$backend_class = (string)$existing_photo["backend-class"];
$photos = self::select(["backend-class","backend-ref"], $conditions);
foreach($photos as $photo) {
+ /** @var IStorage $backend_class */
$backend_class = (string)$photo["backend-class"];
if ($backend_class !== "") {
$backend_class::delete($photo["backend-ref"]);
$photos = self::select(["backend-class","backend-ref"], $conditions);
foreach($photos as $photo) {
+ /** @var IStorage $backend_class */
$backend_class = (string)$photo["backend-class"];
if ($backend_class !== "") {
$fields["backend-ref"] = $backend_class::put($img->asString(), $photo["backend-ref"]);
}
/**
- * @param string $exifCoord coordinate
+ * @param array $exifCoord coordinate
* @param string $hemi hemi
* @return float
*/
*/
class Image
{
+ /** @var Imagick|resource */
private $image;
/*
/**
* @brief Adds the header elements for the DFRN protocol
*
- * @param object $doc XML document
- * @param array $owner Owner record
- * @param string $authorelement Element name for the author
- * @param string $alternatelink link to profile or category
- * @param bool $public Is it a header for public posts?
+ * @param DOMDocument $doc XML document
+ * @param array $owner Owner record
+ * @param string $authorelement Element name for the author
+ * @param string $alternatelink link to profile or category
+ * @param bool $public Is it a header for public posts?
*
* @return object XML root object
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @todo Find proper type-hints
*/
- private static function addHeader($doc, $owner, $authorelement, $alternatelink = "", $public = false)
+ private static function addHeader(DOMDocument $doc, $owner, $authorelement, $alternatelink = "", $public = false)
{
if ($alternatelink == "") {
/**
* @brief Adds the author element in the header for the DFRN protocol
*
- * @param object $doc XML document
- * @param array $owner Owner record
- * @param string $authorelement Element name for the author
- * @param boolean $public boolean
+ * @param DOMDocument $doc XML document
+ * @param array $owner Owner record
+ * @param string $authorelement Element name for the author
+ * @param boolean $public boolean
*
- * @return object XML author object
+ * @return \DOMElement XML author object
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @todo Find proper type-hints
*/
- private static function addAuthor($doc, $owner, $authorelement, $public)
+ private static function addAuthor(DOMDocument $doc, array $owner, $authorelement, $public)
{
// Is the profile hidden or shouldn't be published in the net? Then add the "hide" element
$r = q(
/**
* @brief Adds the author elements in the "entry" elements of the DFRN protocol
*
- * @param object $doc XML document
+ * @param DOMDocument $doc XML document
* @param string $element Element name for the author
* @param string $contact_url Link of the contact
* @param array $item Item elements
*
- * @return object XML author object
+ * @return \DOMElement XML author object
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @todo Find proper type-hints
*/
- private static function addEntryAuthor($doc, $element, $contact_url, $item)
+ private static function addEntryAuthor(DOMDocument $doc, $element, $contact_url, $item)
{
$contact = Contact::getDetailsByURL($contact_url, $item["uid"]);
/**
* @brief Adds the activity elements
*
- * @param object $doc XML document
- * @param string $element Element name for the activity
- * @param string $activity activity value
+ * @param DOMDocument $doc XML document
+ * @param string $element Element name for the activity
+ * @param string $activity activity value
*
- * @return object XML activity object
+ * @return \DOMElement XML activity object
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @todo Find proper type-hints
*/
- private static function createActivity($doc, $element, $activity)
+ private static function createActivity(DOMDocument $doc, $element, $activity)
{
if ($activity) {
$entry = $doc->createElement($element);
/**
* @brief Adds the "entry" elements for the DFRN protocol
*
- * @param object $doc XML document
- * @param string $type "text" or "html"
- * @param array $item Item element
- * @param array $owner Owner record
- * @param bool $comment Trigger the sending of the "comment" element
- * @param int $cid Contact ID of the recipient
- * @param bool $single If set, the entry is created as an XML document with a single "entry" element
+ * @param DOMDocument $doc XML document
+ * @param string $type "text" or "html"
+ * @param array $item Item element
+ * @param array $owner Owner record
+ * @param bool $comment Trigger the sending of the "comment" element
+ * @param int $cid Contact ID of the recipient
+ * @param bool $single If set, the entry is created as an XML document with a single "entry" element
*
- * @return object XML entry object
+ * @return \DOMElement XML entry object
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
* @todo Find proper type-hints
*/
- private static function entry($doc, $type, array $item, array $owner, $comment = false, $cid = 0, $single = false)
+ private static function entry(DOMDocument $doc, $type, array $item, array $owner, $comment = false, $cid = 0, $single = false)
{
$mentioned = [];
* @param object $xpath XPath object
* @param object $entry entry elements
* @param array $importer Record of the importer user mixed with contact of the content
- * @param object $xml xml
+ * @param string $xml xml
* @return void
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
/**
* @brief Dispatches the different message types to the different functions
*
- * @param array $importer Array of the importer user
- * @param array $msg The post that will be dispatched
- * @param object $fields SimpleXML object that contains the message
+ * @param array $importer Array of the importer user
+ * @param array $msg The post that will be dispatched
+ * @param SimpleXMLElement $fields SimpleXML object that contains the message
*
* @return int The message id of the generated message, "true" or "false" if there was an error
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
- public static function dispatch(array $importer, $msg, $fields = null)
+ public static function dispatch(array $importer, $msg, SimpleXMLElement $fields = null)
{
// The sender is the handle of the contact that sent the message.
// This will often be different with relayed messages (for example "like" and "comment")
*
* @param array $msg Array with the XML, the sender handle and the sender signature
*
- * @return bool|array If the posting is valid then an array with an SimpleXML object is returned
+ * @return bool|SimpleXMLElement If the posting is valid then an array with an SimpleXML object is returned
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @param int $uid The user id
* @param string $handle The handle in the format user@domain.tld
*
- * @return int Contact id
+ * @return array Contact data
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @param string $mailbox The mailbox name
* @param string $username The username
* @param string $password The password
- * @return object
+ * @return resource
* @throws \Exception
*/
public static function connect($mailbox, $username, $password)
}
/**
- * @param object $mbox mailbox
- * @param string $email_addr email
+ * @param resource $mbox mailbox
+ * @param string $email_addr email
* @return array
* @throws \Exception
*/
}
/**
- * @param object $mbox mailbox
- * @param integer $uid user id
+ * @param resource $mbox mailbox
+ * @param integer $uid user id
* @return mixed
*/
public static function messageMeta($mbox, $uid)
}
/**
- * @param object $mbox mailbox
- * @param integer $uid user id
- * @param string $reply reply
+ * @param resource $mbox mailbox
+ * @param integer $uid user id
+ * @param string $reply reply
* @return array
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
// At the moment - only return plain/text.
// Later we'll repackage inline images as data url's and make the HTML safe
/**
- * @param object $mbox mailbox
- * @param integer $uid user id
- * @param object $p parts
- * @param integer $partno part number
- * @param string $subtype sub type
+ * @param resource $mbox mailbox
+ * @param integer $uid user id
+ * @param object $p parts
+ * @param integer $partno part number
+ * @param string $subtype sub type
* @return string
*/
private static function messageGetPart($mbox, $uid, $p, $partno, $subtype)
* @param array $owner Contact data of the poster
* @param bool $show_profile Whether to show profile
*
- * @return object author element
+ * @return \DOMElement author element
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
private static function addAuthor(DOMDocument $doc, array $owner, $show_profile = true)
* @param bool $toplevel optional default false
* @param bool $feed_mode Behave like a regular feed for users if true
*
- * @return object Entry element
+ * @return \DOMElement Entry element
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @param DOMDocument $doc XML document
* @param array $contact Array of the contact that is added
*
- * @return object Source element
+ * @return \DOMElement Source element
* @throws \Exception
*/
private static function sourceEntry(DOMDocument $doc, array $contact)
* @param array $owner Contact data of the poster
* @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return object Entry element with "like"
+ * @return \DOMElement Entry element with "like"
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @param array $owner Contact data of the poster
* @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return object Entry element
+ * @return \DOMElement Entry element
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
* @param bool $feed_mode Behave like a regular feed for users if true
*
- * @return object Entry element
+ * @return \DOMElement Entry element
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
* @brief Adds elements to the XML document
*
* @param DOMDocument $doc XML document
- * @param object $entry Entry element where the content is added
+ * @param \DOMElement $entry Entry element where the content is added
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
* @param string $title Title for the post
* @return void
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
- private static function entryContent(DOMDocument $doc, $entry, array $item, array $owner, $title, $verb = "", $complete = true, $feed_mode = false)
+ private static function entryContent(DOMDocument $doc, \DOMElement $entry, array $item, array $owner, $title, $verb = "", $complete = true, $feed_mode = false)
{
if ($verb == "") {
$verb = self::constructVerb($item);
/**
* @brief Returns a date selector
*
- * @param string $min Unix timestamp of minimum date
- * @param string $max Unix timestap of maximum date
- * @param string $default Unix timestamp of default date
- * @param string $id ID and name of datetimepicker (defaults to "datetimepicker")
+ * @param DateTime $min Minimum date
+ * @param DateTime $max Maximum date
+ * @param DateTime $default Default date
+ * @param string $id ID and name of datetimepicker (defaults to "datetimepicker")
*
* @return string Parsed HTML output.
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
/**
* @brief Create an XML element
*
- * @param object $doc XML root
- * @param string $element XML element name
- * @param string $value XML value
- * @param array $attributes array containing the attributes
+ * @param \DOMDocument $doc XML root
+ * @param string $element XML element name
+ * @param string $value XML value
+ * @param array $attributes array containing the attributes
*
- * @return object XML element object
+ * @return \DOMElement XML element object
*/
- public static function createElement($doc, $element, $value = "", $attributes = [])
+ public static function createElement(\DOMDocument $doc, $element, $value = "", $attributes = [])
{
$element = $doc->createElement($element, self::escape($value));
/**
* @brief Create an XML and append it to the parent object
*
- * @param object $doc XML root
+ * @param \DOMDocument $doc XML root
* @param object $parent parent object
* @param string $element XML element name
* @param string $value XML value
* @param array $attributes array containing the attributes
* @return void
*/
- public static function addElement($doc, $parent, $element, $value = "", $attributes = [])
+ public static function addElement(\DOMDocument $doc, $parent, $element, $value = "", $attributes = [])
{
$element = self::createElement($doc, $element, $value, $attributes);
$parent->appendChild($element);
/**
* @brief Delete a node in a XML object
*
- * @param object $doc XML document
+ * @param \DOMDocument $doc XML document
* @param string $node Node name
* @return void
*/
- public static function deleteNode(&$doc, $node)
+ public static function deleteNode(\DOMDocument $doc, $node)
{
$xpath = new DOMXPath($doc);
$list = $xpath->query("//".$node);
return $x;
}
- public static function getFirstNodeValue($xpath, $element, $context = null)
+ public static function getFirstNodeValue(DOMXPath $xpath, $element, $context = null)
{
$result = $xpath->evaluate($element, $context);
if (!is_object($result)) {
return $first_item->nodeValue;
}
- public static function getFirstAttributes($xpath, $element, $context = null)
+ public static function getFirstAttributes(DOMXPath $xpath, $element, $context = null)
{
$result = $xpath->query($element, $context);
if (!is_object($result)) {