]> git.mxchange.org Git - friendica-addons.git/blobdiff - fromgplus/fromgplus.php
Merge pull request #539 from MrPetovan/bug/4555-remove-active-users-feature
[friendica-addons.git] / fromgplus / fromgplus.php
index e0a49b3fda32d4ed3856345d1da49ad4abcf40b2..b8d9511a52f48c7628dde6c8f33dec05f8b5d4f2 100644 (file)
@@ -9,28 +9,32 @@
 
 define('FROMGPLUS_DEFAULT_POLL_INTERVAL', 30); // given in minutes
 
+use Friendica\Core\Addon;
 use Friendica\Core\Config;
+use Friendica\Core\L10n;
 use Friendica\Core\PConfig;
-use Friendica\Object\Photo;
+use Friendica\Object\Image;
+use Friendica\Util\DateTimeFormat;
+use Friendica\Util\Network;
 
 require_once 'mod/share.php';
 require_once 'mod/parse_url.php';
 require_once 'include/text.php';
 
 function fromgplus_install() {
-       register_hook('connector_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
-       register_hook('connector_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
-       register_hook('cron', 'addon/fromgplus/fromgplus.php', 'fromgplus_cron');
+       Addon::registerHook('connector_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
+       Addon::registerHook('connector_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
+       Addon::registerHook('cron', 'addon/fromgplus/fromgplus.php', 'fromgplus_cron');
 }
 
 function fromgplus_uninstall() {
-       unregister_hook('connector_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
-       unregister_hook('connector_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
-       unregister_hook('cron', 'addon/fromgplus/fromgplus.php', 'fromgplus_cron');
+       Addon::unregisterHook('connector_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
+       Addon::unregisterHook('connector_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
+       Addon::unregisterHook('cron', 'addon/fromgplus/fromgplus.php', 'fromgplus_cron');
 
        // Old hooks
-       unregister_hook('plugin_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
-       unregister_hook('plugin_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
+       Addon::unregisterHook('addon_settings', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings');
+       Addon::unregisterHook('addon_settings_post', 'addon/fromgplus/fromgplus.php', 'fromgplus_addon_settings_post');
 }
 
 function fromgplus_addon_settings(&$a,&$s) {
@@ -48,27 +52,27 @@ function fromgplus_addon_settings(&$a,&$s) {
        $account = PConfig::get(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\');">';
-       $s .= '<img class="connector" src="images/googleplus.png" /><h3 class="connector">'. t('Google+ Mirror').'</h3>';
+       $s .= '<img class="connector" src="images/googleplus.png" /><h3 class="connector">'. L10n::t('Google+ Mirror').'</h3>';
        $s .= '</span>';
        $s .= '<div id="settings_fromgplus_expanded" class="settings-block" style="display: none;">';
        $s .= '<span class="fakelink" onclick="openClose(\'settings_fromgplus_expanded\'); openClose(\'settings_fromgplus_inflated\');">';
-       $s .= '<img class="connector" src="images/googleplus.png" /><h3 class="connector">'. t('Google+ Mirror').'</h3>';
+       $s .= '<img class="connector" src="images/googleplus.png" /><h3 class="connector">'. L10n::t('Google+ Mirror').'</h3>';
        $s .= '</span>';
 
        $s .= '<div id="fromgplus-wrapper">';
 
-       $s .= '<label id="fromgplus-enable-label" for="fromgplus-enable">'.t('Enable Google+ Import').'</label>';
+       $s .= '<label id="fromgplus-enable-label" for="fromgplus-enable">'.L10n::t('Enable Google+ Import').'</label>';
        $s .= '<input id="fromgplus-enable" type="checkbox" name="fromgplus-enable" value="1"'.$enable_checked.' />';
        $s .= '<div class="clear"></div>';
-       $s .= '<label id="fromgplus-label" for="fromgplus-account">'.t('Google Account ID').' </label>';
+       $s .= '<label id="fromgplus-label" for="fromgplus-account">'.L10n::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 .= '<label id="fromgplus-keywords-label" for="fromgplus-keywords">'.L10n::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>';
+class="settings-submit" value="' . L10n::t('Save Settings') . '" /></div>';
        $s .= '</div>';
 
        return;
@@ -89,23 +93,25 @@ function fromgplus_addon_settings_post(&$a,&$b) {
                if (!$enable)
                        PConfig::delete(local_user(),'fromgplus','lastdate');
 
-               info( t('Google+ Import Settings saved.') . EOL);
+               info(L10n::t('Google+ Import Settings saved.') . EOL);
        }
 }
 
-function fromgplus_plugin_admin(&$a, &$o){
-        $t = get_markup_template("admin.tpl", "addon/fromgplus/");
+function fromgplus_addon_admin(&$a, &$o)
+{
+       $t = get_markup_template("admin.tpl", "addon/fromgplus/");
 
-        $o = replace_macros($t, array(
-                '$submit' => t('Save Settings'),
-                '$key' => array('key', t('Key'), trim(Config::get('fromgplus', 'key')), t('')),
-        ));
+       $o = replace_macros($t, [
+                       '$submit' => L10n::t('Save Settings'),
+                       '$key' => ['key', L10n::t('Key'), trim(Config::get('fromgplus', 'key')), L10n::t('')],
+       ]);
 }
 
-function fromgplus_plugin_admin_post(&$a){
-        $key = ((x($_POST,'key')) ? trim($_POST['key']) : '');
-        Config::set('fromgplus','key',$key);
-        info( t('Settings updated.'). EOL );
+function fromgplus_addon_admin_post(&$a)
+{
+       $key = ((x($_POST, 'key')) ? trim($_POST['key']) : '');
+       Config::set('fromgplus', 'key', $key);
+       info(L10n::t('Settings updated.'). EOL);
 }
 
 function fromgplus_cron($a,$b) {
@@ -198,13 +204,13 @@ function fromgplus_html2bbcode($html) {
 
        $bbcode = html_entity_decode($html, ENT_QUOTES, 'UTF-8');
 
-       $bbcode = str_ireplace(array("\n"), array(""), $bbcode);
-       $bbcode = str_ireplace(array("<b>", "</b>"), array("[b]", "[/b]"), $bbcode);
-       $bbcode = str_ireplace(array("<i>", "</i>"), array("[i]", "[/i]"), $bbcode);
-       $bbcode = str_ireplace(array("<s>", "</s>"), array("[s]", "[/s]"), $bbcode);
-       $bbcode = str_ireplace(array("<br />"), array("\n"), $bbcode);
-       $bbcode = str_ireplace(array("<br/>"), array("\n"), $bbcode);
-       $bbcode = str_ireplace(array("<br>"), array("\n"), $bbcode);
+       $bbcode = str_ireplace(["\n"], [""], $bbcode);
+       $bbcode = str_ireplace(["<b>", "</b>"], ["[b]", "[/b]"], $bbcode);
+       $bbcode = str_ireplace(["<i>", "</i>"], ["[i]", "[/i]"], $bbcode);
+       $bbcode = str_ireplace(["<s>", "</s>"], ["[s]", "[/s]"], $bbcode);
+       $bbcode = str_ireplace(["<br />"], ["\n"], $bbcode);
+       $bbcode = str_ireplace(["<br/>"], ["\n"], $bbcode);
+       $bbcode = str_ireplace(["<br>"], ["\n"], $bbcode);
 
        $bbcode = trim(strip_tags($bbcode));
        return($bbcode);
@@ -219,7 +225,7 @@ function fromgplus_parse_query($var)
        $var  = parse_url($var, PHP_URL_QUERY);
        $var  = html_entity_decode($var);
        $var  = explode('&', $var);
-       $arr  = array();
+       $arr  = [];
 
        foreach($var as $val) {
                $x          = explode('=', $val);
@@ -240,7 +246,7 @@ function fromgplus_cleanupgoogleproxy($fullImage, $image) {
        //$image = str_replace(array($preview, $preview2), array("/", "/"), $image->url);
        $image = $image->url;
 
-               $cleaned = array();
+               $cleaned = [];
 
        $queryvar = fromgplus_parse_query($fullImage);
        if ($queryvar['url'] != "")
@@ -264,14 +270,14 @@ function fromgplus_cleanupgoogleproxy($fullImage, $image) {
        }
 
        if ($cleaned["full"] != "")
-               $infoFull = Photo::getPhotoInfo($cleaned["full"]);
+               $infoFull = Image::getInfoFromURL($cleaned["full"]);
        else
-               $infoFull = array("0" => 0, "1" => 0);
+               $infoFull = ["0" => 0, "1" => 0];
 
        if ($cleaned["preview"] != "")
-               $infoPreview = Photo::getPhotoInfo($cleaned["preview"]);
+               $infoPreview = Image::getInfoFromURL($cleaned["preview"]);
        else
-               $infoFull = array("0" => 0, "1" => 0);
+               $infoFull = ["0" => 0, "1" => 0];
 
        if (($infoPreview[0] >= $infoFull[0]) && ($infoPreview[1] >= $infoFull[1])) {
                $temp = $cleaned["full"];
@@ -304,31 +310,29 @@ function fromgplus_cleantext($text) {
        $text = strip_tags($text);
        $text = html_entity_decode($text, ENT_QUOTES);
        $text = trim($text);
-       $text = str_replace(array("\n", "\r", " ", $trash), array("", "", "", ""), $text);
+       $text = str_replace(["\n", "\r", " ", $trash], ["", "", "", ""], $text);
        return($text);
 }
 
 function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
-       require_once("include/Photo.php");
-       require_once("include/items.php");
-       require_once("include/network.php");
+       require_once 'include/items.php';
 
        $post = "";
        $quote = "";
-       $pagedata = array();
+       $pagedata = [];
        $pagedata["type"] = "";
 
        foreach ($item->object->attachments as $attachment) {
                switch($attachment->objectType) {
                        case "video":
                                $pagedata["type"] = "video";
-                               $pagedata["url"] = original_url($attachment->url);
+                               $pagedata["url"] = Network::finalUrl($attachment->url);
                                $pagedata["title"] = fromgplus_html2bbcode($attachment->displayName);
                                break;
 
                        case "article":
                                $pagedata["type"] = "link";
-                               $pagedata["url"] = original_url($attachment->url);
+                               $pagedata["url"] = Network::finalUrl($attachment->url);
                                $pagedata["title"] = fromgplus_html2bbcode($attachment->displayName);
 
                                $images = fromgplus_cleanupgoogleproxy($attachment->fullImage, $attachment->image);
@@ -349,13 +353,14 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
 
                        case "photo":
                                // Don't store shared pictures in your wall photos (to prevent a possible violating of licenses)
-                               if ($shared)
+                               if ($shared) {
                                        $images = fromgplus_cleanupgoogleproxy($attachment->fullImage, $attachment->image);
-                               else {
-                                       if ($attachment->fullImage->url != "")
-                                               $images = store_photo($a, $uid, "", $attachment->fullImage->url);
-                                       elseif ($attachment->image->url != "")
-                                               $images = store_photo($a, $uid, "", $attachment->image->url);
+                               } else {
+                                       if ($attachment->fullImage->url != "") {
+                                               $images = Image::storePhoto($a, $uid, "", $attachment->fullImage->url);
+                                       } elseif ($attachment->image->url != "") {
+                                               $images = Image::storePhoto($a, $uid, "", $attachment->image->url);
+                                       }
                                }
 
                                if ($images["preview"] != "") {
@@ -366,8 +371,9 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
                                        $post .= "\n[img]".$images["full"]."[/img]\n";
                                        $pagedata["images"][0]["src"] = $images["full"];
 
-                                       if ($images["preview"] != "")
+                                       if ($images["preview"] != "") {
                                                $pagedata["images"][1]["src"] = $images["preview"];
+                                       }
                                }
 
                                if (($attachment->displayName != "") && (fromgplus_cleantext($attachment->displayName) != fromgplus_cleantext($displaytext))) {
@@ -377,7 +383,7 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
                                break;
 
                        case "photo-album":
-                               $pagedata["url"] = original_url($attachment->url);
+                               $pagedata["url"] = Network::finalUrl($attachment->url);
                                $pagedata["title"] = fromgplus_html2bbcode($attachment->displayName);
                                $post .= "\n\n[bookmark=".$pagedata["url"]."]".$pagedata["title"]."[/bookmark]\n";
 
@@ -398,7 +404,7 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
 
                        case "album":
                                $pagedata["type"] = "link";
-                               $pagedata["url"] = original_url($attachment->url);
+                               $pagedata["url"] = Network::finalUrl($attachment->url);
                                $pagedata["title"] = fromgplus_html2bbcode($attachment->displayName);
 
                                $thumb = $attachment->thumbnails[0];
@@ -411,7 +417,7 @@ function fromgplus_handleattachments($a, $uid, $item, $displaytext, $shared) {
                                break;
 
                        case "audio":
-                               $pagedata["url"] = original_url($attachment->url);
+                               $pagedata["url"] = Network::finalUrl($attachment->url);
                                $pagedata["title"] = fromgplus_html2bbcode($attachment->displayName);
                                $post .= "\n\n[bookmark=".$pagedata["url"]."]".$pagedata["title"]."[/bookmark]\n";
                                break;
@@ -436,7 +442,7 @@ function fromgplus_fetch($a, $uid) {
        $account = PConfig::get($uid,'fromgplus','account');
        $key = Config::get('fromgplus','key');
 
-       $result = fetch_url("https://www.googleapis.com/plus/v1/people/".$account."/activities/public?alt=json&pp=1&key=".$key."&maxResults=".$maxfetch);
+       $result = Network::fetchUrl("https://www.googleapis.com/plus/v1/people/".$account."/activities/public?alt=json&pp=1&key=".$key."&maxResults=".$maxfetch);
        //$result = file_get_contents("google.txt");
        //file_put_contents("google.txt", $result);
 
@@ -514,12 +520,12 @@ function fromgplus_fetch($a, $uid) {
                                                if (function_exists("share_header"))
                                                        $post .= share_header($item->object->actor->displayName, $item->object->actor->url,
                                                                                $item->object->actor->image->url, "",
-                                                                               datetime_convert('UTC','UTC',$item->object->published),$item->object->url);
+                                                                               DateTimeFormat::utc($item->object->published),$item->object->url);
                                                else
                                                        $post .= "[share author='".str_replace("'", "&#039;",$item->object->actor->displayName).
                                                                        "' profile='".$item->object->actor->url.
                                                                        "' avatar='".$item->object->actor->image->url.
-                                                                       "' posted='".datetime_convert('UTC','UTC',$item->object->published).
+                                                                       "' posted='".DateTimeFormat::utc($item->object->published).
                                                                        "' link='".$item->object->url."']";
 
                                                $post .= fromgplus_html2bbcode($item->object->content);