]> git.mxchange.org Git - friendica.git/blobdiff - mod/hovercard.php
Bugfix: dba::num_rows hadn't checked the object variable
[friendica.git] / mod / hovercard.php
index f5c410e11169875152cde20eae67bba0799a9935..5c9ef61fc9ec409b0ceeb46394798d494244f47f 100644 (file)
@@ -8,13 +8,16 @@
  * License: GNU AFFERO GENERAL PUBLIC LICENSE (Version 3)
  */
 
+use Friendica\App;
+
 require_once("include/socgraph.php");
 require_once("include/Contact.php");
 
-function hovercard_init(&$a) {
+function hovercard_init(App $a) {
        // Just for testing purposes
        $_GET["mode"] = "minimal";
 }
+
 function hovercard_content() {
        $profileurl     =       (x($_REQUEST,'profileurl')      ? $_REQUEST['profileurl']       : "");
        $datatype       =       (x($_REQUEST,'datatype')        ?$_REQUEST['datatype']          : "json");
@@ -38,9 +41,9 @@ function hovercard_content() {
        // the real url (nurl)
        if(local_user() && strpos($profileurl, "redir/") === 0) {
                $cid = intval(substr($profileurl, 6));
-               $r = q("SELECT `nurl`, `self`  FROM `contact` WHERE `id` = '%d' LIMIT 1", intval($cid));
-               $profileurl = ($r[0]["nurl"] ? $r[0]["nurl"] : "");
-               $self = ($r[0]["self"] ? $r[0]["self"] : "");
+               $r = dba::select('contact', array('nurl', 'self'), array('id' => $cid), array('limit' => 1));
+               $profileurl = ($r["nurl"] ? $r["nurl"] : "");
+               $self = ($r["self"] ? $r["self"] : "");
        }
 
        // if it's the url containing https it should be converted to http
@@ -48,11 +51,6 @@ function hovercard_content() {
        if($nurl) {
                // Search for contact data
                $contact = get_contact_details_by_url($nurl);
-
-               // Get_contact_details_by_url() doesn't provide the nurl but we
-               // need it for the photo_menu, so we copy it to the contact array
-               if (!isset($contact["nurl"]))
-                       $contact["nurl"] = $nurl;
        }
 
        if(!is_array($contact))
@@ -69,7 +67,7 @@ function hovercard_content() {
                'name' => $contact["name"],
                'nick'  => $contact["nick"],
                'addr'  => (($contact["addr"] != "") ? $contact["addr"] : $contact["url"]),
-               'thumb' => proxy_url($contact["photo"], false, PROXY_SIZE_THUMB),
+               'thumb' => proxy_url($contact["thumb"], false, PROXY_SIZE_THUMB),
                'url' => ($cid ? ("redir/".$cid) : zrl($contact["url"])),
                'nurl' => $contact["nurl"], // We additionally store the nurl as identifier
 //             'alias' => $contact["alias"],
@@ -77,15 +75,14 @@ function hovercard_content() {
                'gender' => $contact["gender"],
                'about' => $contact["about"],
                'network' => format_network_name($contact["network"], $contact["url"]),
-               'tags' => intval($contact["keywords"]),
+               'tags' => $contact["keywords"],
 //             'nsfw' => intval($contact["nsfw"]),
 //             'server_url' => $contact["server_url"],
-               'bd' => (($contact["birthday"] == "0000-00-00") ? "" : $contact["birthday"]),
+               'bd' => (($contact["birthday"] <= '0001-01-01') ? "" : $contact["birthday"]),
 //             'generation' => $contact["generation"],
-               'account_type' => ($contact['community'] ? t("Forum") : ""),
+               'account_type' => account_type($contact),
                'actions' => $actions,
        );
-
        if($datatype == "html") {
                $t = get_markup_template("hovercard.tpl");
 
@@ -102,10 +99,10 @@ function hovercard_content() {
 
 /**
  * @brief Get the raw content of a template file
- * 
+ *
  * @param string $template The name of the template
  * @param string $root Directory of the template
- * 
+ *
  * @return string|bool Output the raw content if existent, otherwise false
  */
 function get_template_content($template, $root = "") {