]> git.mxchange.org Git - friendica.git/blobdiff - src/Content/Widget/CalendarExport.php
Merge pull request #6013 from JonnyTischbein/issue_comment_media_link_prompt
[friendica.git] / src / Content / Widget / CalendarExport.php
index 87b8c14da92654b6b45c37726974ab0763d9b185..2c21b2f0d0ab7e2d1b2f59194e87e038d27437cb 100644 (file)
@@ -27,6 +27,10 @@ class CalendarExport
        public static function getHTML() {
                $a = get_app();
 
+               if (empty($a->data['user'])) {
+                       return;
+               }
+
                $owner_uid = $a->data['user']['uid'];
 
                // The permission testing is a little bit tricky because we have to respect many cases.
@@ -40,7 +44,15 @@ class CalendarExport
                 * If it's a kind of profile page (intval($owner_uid)) return if the user not logged in and
                 * export feature isn't enabled.
                 */
-               if (!local_user() && $owner_uid && !Feature::isEnabled($owner_uid, 'export_calendar')) {
+               /*
+                * Cal logged in user (test permission at foreign profile page).
+                * If the $owner uid is available we know it is part of one of the profile pages (like /cal).
+                * So we have to test if if it's the own profile page of the logged in user
+                * or a foreign one. For foreign profile pages we need to check if the feature
+                * for exporting the cal is enabled (otherwise the widget would appear for logged in users
+                * on foreigen profile pages even if the widget is disabled).
+                */
+               if (local_user() != $owner_uid && !Feature::isEnabled($owner_uid, "export_calendar")) {
                        return;
                }