]> git.mxchange.org Git - friendica-addons.git/blobdiff - fromgplus/fromgplus.php
Merge pull request #384 from annando/1609-ignorelist-rendertime
[friendica-addons.git] / fromgplus / fromgplus.php
index d3365e710656b81adae10c17c7cec30d6dbd5990..4c96892c662d94efd9ff9cdee6ee5742bc3c94d9 100644 (file)
@@ -10,6 +10,7 @@
 define('FROMGPLUS_DEFAULT_POLL_INTERVAL', 30); // given in minutes
 
 require_once('mod/share.php');
+require_once('mod/parse_url.php');
 
 function fromgplus_install() {
        register_hook('connector_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
@@ -38,6 +39,7 @@ function fromgplus_addon_settings(&$a,&$s) {
                return;
 
        $enable_checked = (intval(get_pconfig(local_user(),'fromgplus','enable')) ? ' checked="checked"' : '');
+       $keywords_checked = (intval(get_pconfig(local_user(), 'fromgplus', 'keywords')) ? ' checked="checked"' : '');
        $account = get_pconfig(local_user(),'fromgplus','account');
 
        $s .= '<span id="settings_fromgplus_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_fromgplus_expanded\'); openClose(\'settings_fromgplus_inflated\');">';
@@ -56,6 +58,9 @@ function fromgplus_addon_settings(&$a,&$s) {
        $s .= '<label id="fromgplus-label" for="fromgplus-account">'.t('Google Account ID').' </label>';
        $s .= '<input id="fromgplus-account" type="text" name="fromgplus-account" value="'.$account.'" />';
        $s .= '</div><div class="clear"></div>';
+       $s .= '<label id="fromgplus-keywords-label" for="fromgplus-keywords">'.t('Add keywords to post').'</label>';
+       $s .= '<input id="fromgplus-keywords" type="checkbox" name="fromgplus-keywords" value="1"'.$keywords_checked.' />';
+       $s .= '<div class="clear"></div>';
 
        $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="fromgplus-submit" name="fromgplus-submit" 
 class="settings-submit" value="' . t('Save Settings') . '" /></div>';
@@ -73,6 +78,8 @@ function fromgplus_addon_settings_post(&$a,&$b) {
                set_pconfig(local_user(),'fromgplus','account',trim($_POST['fromgplus-account']));
                $enable = ((x($_POST,'fromgplus-enable')) ? intval($_POST['fromgplus-enable']) : 0);
                set_pconfig(local_user(),'fromgplus','enable', $enable);
+               $keywords = ((x($_POST, 'fromgplus-keywords')) ? intval($_POST['fromgplus-keywords']) : 0);
+               set_pconfig(local_user(),'fromgplus', 'keywords', $keywords);
 
                if (!$enable)
                        del_pconfig(local_user(),'fromgplus','lastdate');
@@ -129,7 +136,7 @@ function fromgplus_cron($a,$b) {
        set_config('fromgplus','last_poll', time());
 }
 
-function fromgplus_post($a, $uid, $source, $body, $location, $coord) {
+function fromgplus_post($a, $uid, $source, $body, $location, $coord, $id) {
 
        //$uid = 2;
 
@@ -157,6 +164,9 @@ function fromgplus_post($a, $uid, $source, $body, $location, $coord) {
        $_REQUEST['source'] = $source;
        $_REQUEST['extid'] = NETWORK_GPLUS;
 
+       if (isset($id))
+               $_REQUEST['message_id'] = NETWORK_GPLUS.":".$id;
+
        // $_REQUEST['verb']
        // $_REQUEST['parent']
        // $_REQUEST['parent_uri']
@@ -324,6 +334,11 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
                                if ($quote != "")
                                        $pagedata["text"] = $quote;
 
+                               // Add Keywords to page link
+                               $data = parseurl_getsiteinfo_cached($pagedata["url"], true);
+                               if (isset($data["keywords"]) AND get_pconfig($uid, 'fromgplus', 'keywords')) {
+                                       $pagedata["keywords"] = $data["keywords"];
+                               }
                                break;
 
                        case "photo":
@@ -446,6 +461,8 @@ function fromgplus_fetch($a, $uid) {
                if ($lastdate < strtotime($item->published))
                        $lastdate = strtotime($item->published);
 
+               set_pconfig($uid,'fromgplus','lastdate', $lastdate);
+
                if ($first_time)
                        continue;
 
@@ -479,7 +496,7 @@ function fromgplus_fetch($a, $uid) {
                                        } elseif (isset($item->address))
                                                $location = $item->address;
 
-                                       fromgplus_post($a, $uid, $item->provider->title, $post, $location, $coord);
+                                       fromgplus_post($a, $uid, $item->provider->title, $post, $location, $coord, $item->id);
 
                                        break;
 
@@ -530,7 +547,7 @@ function fromgplus_fetch($a, $uid) {
                                        } elseif (isset($item->address))
                                                $location = $item->address;
 
-                                       fromgplus_post($a, $uid, $item->provider->title, $post, $location, $coord);
+                                       fromgplus_post($a, $uid, $item->provider->title, $post, $location, $coord, $item->id);
                                        break;
                        }
                }