$author["author-link"] = $xpath->evaluate('atom:author/atom:uri/text()', $context)->item(0)->nodeValue;
$author["author-name"] = $xpath->evaluate('atom:author/atom:name/text()', $context)->item(0)->nodeValue;
- // Preserve the value
- $authorlink = $author["author-link"];
+ $aliaslink = $author["author-link"];
$alternate = $xpath->query("atom:author/atom:link[@rel='alternate']", $context)->item(0)->attributes;
if (is_object($alternate))
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `nurl` IN ('%s', '%s') AND `network` != '%s'",
intval($importer["uid"]), dbesc(normalise_link($author["author-link"])),
- dbesc(normalise_link($authorlink)), dbesc(NETWORK_STATUSNET));
+ dbesc(normalise_link($aliaslink)), dbesc(NETWORK_STATUSNET));
if ($r) {
$contact = $r[0];
$author["contact-id"] = $r[0]["id"];
if ($value != "")
$contact["location"] = $value;
- if (($contact["name"] != $r[0]["name"]) OR ($contact["nick"] != $r[0]["nick"]) OR ($contact["about"] != $r[0]["about"]) OR ($contact["location"] != $r[0]["location"])) {
+ if (($contact["name"] != $r[0]["name"]) OR ($contact["nick"] != $r[0]["nick"]) OR ($contact["about"] != $r[0]["about"]) OR
+ ($contact["alias"] != $r[0]["alias"]) OR ($contact["location"] != $r[0]["location"])) {
logger("Update contact data for contact ".$contact["id"], LOGGER_DEBUG);
- q("UPDATE `contact` SET `name` = '%s', `nick` = '%s', `about` = '%s', `location` = '%s', `name-date` = '%s' WHERE `id` = %d",
- dbesc($contact["name"]), dbesc($contact["nick"]), dbesc($contact["about"]), dbesc($contact["location"]),
+ q("UPDATE `contact` SET `name` = '%s', `nick` = '%s', `alias` = '%s', `about` = '%s', `location` = '%s', `name-date` = '%s' WHERE `id` = %d",
+ dbesc($contact["name"]), dbesc($contact["nick"]), dbesc($contact["alias"]),
+ dbesc($contact["about"]), dbesc($contact["location"]),
dbesc(datetime_convert()), intval($contact["id"]));
poco_check($contact["url"], $contact["name"], $contact["network"], $author["author-avatar"], $contact["about"], $contact["location"],
}
/**
- * @brief
+ * @brief Fetches author data from a given XML string
*
- * @param $xml
+ * @param string $xml The XML
* @param array $importer user record of the importing user
*
- * @return
+ * @return array Array of author related entries for the item
*/
public static function salmon_author($xml, $importer) {
* @param array $hub Called by reference, returns the fetched hub data
*/
public static function import($xml,$importer,&$contact, &$hub) {
+ /// @todo this function is too long. It has to be split in many parts
logger("Import OStatus message", LOGGER_DEBUG);
}
/**
- * @brief
+ * @brief Stores an item and completes the thread
*
- * @param $conversation_url
- * @param $uid
+ * @param string $conversation_url The URI of the conversation
+ * @param integer $uid The user id
* @param array $item Data of the item that is to be posted
*
- * @return
+ * @return integer The item id of the posted item array
*/
private function completion($conversation_url, $uid, $item = array(), $self = "") {
+ /// @todo This function is totally ugly and has to be rewritten totally
$item_stored = -1;
}
/**
- * @brief
- *
- * @param $itemid
- * @param $conversation_url
+ * @brief Stores conversation data into the database
*
- * @return
+ * @param integer $itemid The id of the item
+ * @param string $conversation_url The uri of the conversation
*/
private function store_conversation($itemid, $conversation_url) {
}
/**
- * @brief
+ * @brief Adds the header elements to the XML document
*
* @param object $doc XML document
* @param array $owner Contact data of the poster
*
- * @return
+ * @return object header root element
*/
private function add_header($doc, $owner) {
}
/**
- * @brief
+ * @brief Add the link to the push hubs to the XML document
*
* @param object $doc XML document
- * @param $root
- *
- * @return
+ * @param object $root XML root element where the hub links are added
*/
public static function hublinks($doc, $root) {
$hub = get_config('system','huburl');
}
/**
- * @brief
+ * @brief Adds attachement data to the XML document
*
* @param object $doc XML document
- * @param $root
+ * @param object $root XML root element where the hub links are added
* @param array $item Data of the item that is to be posted
- *
- * @return
*/
private function get_attachment($doc, $root, $item) {
$o = "";
}
/**
- * @brief
+ * @brief Adds the author element to the XML document
*
* @param object $doc XML document
* @param array $owner Contact data of the poster
*
- * @return
+ * @return object author element
*/
private function add_author($doc, $owner) {
*/
/**
- * @brief
+ * @brief Returns the given activity if present - otherwise returns the "post" activity
*
* @param array $item Data of the item that is to be posted
*
- * @return
+ * @return string activity
*/
function construct_verb($item) {
if ($item['verb'])
}
/**
- * @brief
+ * @brief Returns the given object type if present - otherwise returns the "note" object type
*
* @param array $item Data of the item that is to be posted
*
- * @return
+ * @return string Object type
*/
function construct_objecttype($item) {
if (in_array($item['object-type'], array(ACTIVITY_OBJ_NOTE, ACTIVITY_OBJ_COMMENT)))
}
/**
- * @brief
+ * @brief Adds an entry element to the XML document
*
* @param object $doc XML document
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
- * @param $toplevel
+ * @param bool $toplevel
*
- * @return
+ * @return object Entry element
*/
private function entry($doc, $item, $owner, $toplevel = false) {
$repeated_guid = self::get_reshared_guid($item);
}
/**
- * @brief
+ * @brief Adds a source entry to the XML document
*
* @param object $doc XML document
- * @param $contact
+ * @param array $contact Array of the contact that is added
*
- * @return
+ * @return object Source element
*/
private function source_entry($doc, $contact) {
$source = $doc->createElement("source");
}
/**
- * @brief
+ * @brief Fetches contact data from the contact or the gcontact table
*
- * @param $url
+ * @param string $url URL of the contact
* @param array $owner Contact data of the poster
*
- * @return
+ * @return array Contact array
*/
private function contact_entry($url, $owner) {
}
/**
- * @brief
+ * @brief Adds an entry element with reshared content
*
* @param object $doc XML document
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
* @param $repeated_guid
- * @param $toplevel
+ * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return
+ * @return object Entry element
*/
private function reshare_entry($doc, $item, $owner, $repeated_guid, $toplevel) {
}
/**
- * @brief
+ * @brief Adds an entry element with a "like"
*
* @param object $doc XML document
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
- * @param $toplevel
+ * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return object
+ * @return object Entry element with "like"
*/
private function like_entry($doc, $item, $owner, $toplevel) {
}
/**
- * @brief
+ * @brief Adds a regular entry element
*
* @param object $doc XML document
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
- * @param $toplevel
+ * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return
+ * @return object Entry element
*/
private function note_entry($doc, $item, $owner, $toplevel) {
}
/**
- * @brief
+ * @brief Adds a header element to the XML document
*
* @param object $doc XML document
- * @param $entry
+ * @param object $entry The entry element where the elements are added
* @param array $owner Contact data of the poster
- * @param $toplevel
+ * @param bool $toplevel Is it for en entry element (false) or a feed entry (true)?
*
- * @return
+ * @return string The title for the element
*/
private function entry_header($doc, &$entry, $owner, $toplevel) {
+ /// @todo Check if this title stuff is really needed (I guess not)
if (!$toplevel) {
$entry = $doc->createElement("entry");
$title = sprintf("New note by %s", $owner["nick"]);
}
/**
- * @brief
+ * @brief Adds elements to the XML document
*
* @param object $doc XML document
- * @param $entry
+ * @param object $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 $title
- * @param $verb
- * @param $complete
- *
- * @return
+ * @param string $title Title for the post
+ * @param string $verb The activity verb
+ * @param bool $complete Add the "status_net" element?
*/
private function entry_content($doc, $entry, $item, $owner, $title, $verb = "", $complete = true) {
}
/**
- * @brief
+ * @brief Adds the elements at the foot of an entry to the XML document
*
* @param object $doc XML document
- * @param $entry
+ * @param object $entry The entry element where the elements are added
* @param array $item Data of the item that is to be posted
* @param array $owner Contact data of the poster
* @param $complete
- *
- * @return
*/
private function entry_footer($doc, $entry, $item, $owner, $complete = true) {
}
/**
- * @brief
+ * @brief Creates the XML feed for a given nickname
*
- * @param $a
- * @param $owner_nick
- * @param $last_update
+ * @param app $a The application class
+ * @param string $owner_nick Nickname of the feed owner
+ * @param string $last_update Date of the last update
*
- * @return
+ * @return string XML feed
*/
public static function feed(&$a, $owner_nick, $last_update) {