Просмотр исходного кода

Merge branch 'master' of https://github.com/unaio/una

AntonLV 4 лет назад
Родитель
Сommit
b78eef6e29
2 измененных файлов с 14 добавлено и 6 удалено
  1. 6 2
      inc/classes/BxDolPage.php
  2. 8 4
      template/scripts/BxBasePageAccount.php

+ 6 - 2
inc/classes/BxDolPage.php

@@ -644,8 +644,7 @@ class BxDolPage extends BxDolFactory implements iBxDolFactoryObject, iBxDolRepla
             $aI = array_combine($aURIs, array_fill(0, count($aURIs), 1));
             if (!preg_match('/\/oauth2\//', $_SERVER['REQUEST_URI']) /*&& !preg_match('/searchKeyword.php$/', $_SERVER['PHP_SELF'])*/ && !preg_match('/member.php$/', $_SERVER['PHP_SELF']) && !isset($aI[$this->_aObject['uri']])) {
                 if ($bRedirectToLoginFormForUnauthenticated) {
-                    header("Location: " . bx_append_url_params(BX_DOL_URL_ROOT . BxDolPermalinks::getInstance()->permalink('page.php?i=login'), ['relocate' => bx_get_self_url()]));
-                    exit;
+                    $this->_redirectToLoginForm();
                 }
                 else {
                     return false;
@@ -656,6 +655,11 @@ class BxDolPage extends BxDolFactory implements iBxDolFactoryObject, iBxDolRepla
         return isAdmin() || BxDolAcl::getInstance()->isMemberLevelInSet($a['visible_for_levels']);
     }
 
+    protected function _redirectToLoginForm ()
+    {
+        header("Location: " . bx_append_url_params(BX_DOL_URL_ROOT . BxDolPermalinks::getInstance()->permalink('page.php?i=login'), ['relocate' => bx_get_self_url()]));
+        exit;
+    }
 }
 
 /** @} */

+ 8 - 4
template/scripts/BxBasePageAccount.php

@@ -78,11 +78,15 @@ class BxBasePageAccount extends BxTemplPage
         }
     }
 
-    protected function _isVisiblePage ($a)
+    protected function _isVisiblePage ($a, $bRedirectToLoginFormForUnauthenticated = false)
     {
-        if (!isLogged())
-            return false;
-        return parent::_isVisiblePage ($a);
+        if (!isLogged()) {
+            if ($bRedirectToLoginFormForUnauthenticated)
+                $this->_redirectToLoginForm();
+            else
+                return false;
+        }
+        return parent::_isVisiblePage ($a, $bRedirectToLoginFormForUnauthenticated);
     }
     
 	protected function _addJsCss()