فهرست منبع

Ticket #3399 - Splash block and page.

AntonLV 5 سال پیش
والد
کامیت
f3a61fd161

+ 37 - 17
modules/boonex/artificer/classes/BxArtificerModule.php

@@ -18,6 +18,13 @@ class BxArtificerModule extends BxBaseModTemplateModule
         parent::__construct($aModule);
     }
 
+    public function serviceGetSafeServices()
+    {
+        return array_merge(parent::serviceGetSafeServices(), [
+            'GetSplashMarker' => '',
+        ]);
+    }
+
     public function serviceIncludeCssJs()
     {
         if(BxDolTemplate::getInstance()->getCode() != $this->_oConfig->getUri())
@@ -26,28 +33,41 @@ class BxArtificerModule extends BxBaseModTemplateModule
         return $this->_oTemplate->getIncludeCssJs();
     }
 
-    public function serviceGetBlockSplash()
+    public function serviceGetSplashMarker($sName)
     {
-        if($this->_oTemplate->getCode() != $this->_oConfig->getUri())
-            return '';
+        $sResult = '';
+
+        switch($sName) {
+            case 'members':
+                $sResult = '0';
+                if($aMembers = BxDolAccountQuery::getInstance()->getAccounts(['type' => 'confirmed']))
+                    $sResult = count($aMembers);
+                break;
+
+            case 'posts':
+                $iPosts = 0;
+                $aModules = bx_srv('system', 'get_modules_by_type', ['content']);
+                foreach($aModules as $aModule)
+                    if(BxDolRequest::serviceExists($aModule['name'], 'get_all'))
+                        $iPosts += bx_srv($aModule['name'], 'get_all', [['type' => 'all', 'count' => true]]);
+                
+                $sResult = $iPosts;
+                break;
+
+            case 'comments':
+                $sResult = (int)BxDolCmtsQuery::getInfoBy(['type' => 'all', 'count' => true]);
+                break;
 
-        $oPermalink = BxDolPermalinks::getInstance();
+            case 'login_agreement':
+                $oPermalink = BxDolPermalinks::getInstance();
+                $sLinkTerms = BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=terms');
+                $sLinkPrivacy = BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=privacy');
 
-        $sJoinForm = $sLoginForm = '';
-        if(!isLogged()) {
-            $sJoinForm = BxDolService::call('system', 'create_account_form', array(), 'TemplServiceAccount');
-            $sLoginForm = BxDolService::call('system', 'login_form', array(), 'TemplServiceLogin');
+                $sResult = _t('_bx_artificer_txt_splash_login_agreement', $sLinkTerms, $sLinkPrivacy);
+                break;
         }
 
-        $this->_oTemplate->addJs(array('lottie.min.js'));
-        return $this->_oTemplate->parseHtmlByName('splash.html', array(
-            'join_link' => BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=create-account'),
-            'join_form' => $sJoinForm,
-            'join_form_in_box' => !empty($sJoinForm) ? DesignBoxContent(_t('_sys_txt_splash_join'), $sJoinForm, BX_DB_PADDING_DEF) : '',
-            'login_link' => BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=login'),
-            'login_form' => $sLoginForm,
-            'login_form_in_box' => !empty($sLoginForm) ? DesignBoxContent(_t('_sys_txt_splash_login'), $sLoginForm, BX_DB_PADDING_DEF) : ''
-        ));
+        return $sResult;
     }
 }
 

+ 1 - 1
modules/boonex/artificer/data/template/system/css/forms.css

@@ -142,7 +142,7 @@ import url(../../../../../../../template/css/forms.css);
     height: 100%;
 
     margin: 0;
-    padding: 0.2rem 0.4rem;
+    padding: 0;
 
     border: 0;
     background-color: transparent;

+ 4 - 0
modules/boonex/artificer/data/template/system/css/media-phone.css

@@ -1,5 +1,9 @@
 @import url(../../../../../../../template/css/media-phone.css);
 
+html.bx-media-phone {
+    font-size:100%;
+}
+
 
 /* --- General ---*/
 .bx-media-phone #bx-toolbar-content .bx-toolbar-item.bx-ti-logo {

+ 0 - 32
modules/boonex/artificer/data/template/system/scripts/BxTemplPageHome.php

@@ -16,38 +16,6 @@ class BxTemplPageHome extends BxBasePageHome
     {
         parent::__construct($aObject, $oTemplate);
     }
-
-    protected function _getBlockRaw($aBlock)
-    {
-        $sResult = parent::_getBlockRaw($aBlock);
-
-        if(strpos($aBlock['title'], 'splash') !== false) {
-            $oPermalink = BxDolPermalinks::getInstance();
-            $sLinkTerms = BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=terms');
-            $sLinkPrivacy = BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=privacy');
-
-            $iMembers = 0;
-            if($aMembers = BxDolAccountQuery::getInstance()->getAccounts(['type' => 'confirmed']))
-                $iMembers = count($aMembers);
-
-            $iPosts = 0;
-            $aModules = bx_srv('system', 'get_modules_by_type', ['content']);
-            foreach($aModules as $aModule)
-                if(BxDolRequest::serviceExists($aModule['name'], 'get_all'))
-                    $iPosts += bx_srv($aModule['name'], 'get_all', [['type' => 'all', 'count' => true]]);
-
-            $iComments = BxDolCmtsQuery::getInfoBy(['type' => 'all', 'count' => true]);
-
-            $sResult = BxDolTemplate::getInstance()->parseHtmlByContent($sResult, array(
-                'members' => $iMembers,
-                'posts' => $iPosts,
-                'comments' => $iComments,
-                'login_agreement' => _t('_bx_artificer_txt_splash_login_agreement', $sLinkTerms, $sLinkPrivacy)
-            ));
-        }
-
-        return $sResult;
-    }
 }
 
 /** @} */

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
modules/boonex/artificer/install/sql/enable.sql


+ 2 - 2
splash.php

@@ -36,8 +36,8 @@ function getPageMainCode()
     	'login_form' => $sLoginForm,
         'login_form_in_box' => DesignBoxContent(_t('_sys_txt_splash_login'), $sLoginForm, BX_DB_PADDING_DEF)
     ));
-        
-    return $s;
+
+    return bx_process_macros($s);
 }
 
 check_logged();

+ 0 - 5
template/scripts/BxBasePageHome.php

@@ -56,8 +56,6 @@ class BxBasePageHome extends BxTemplPage
             if(!isLogged()) {
                 $sJoinForm = BxDolService::call('system', 'create_account_form', array(), 'TemplServiceAccount');
                 $sLoginForm = BxDolService::call('system', 'login_form', array(), 'TemplServiceLogin');
-                $sLoginFormOnly = BxDolService::call('system', 'login_form', array('no_join_text no_auth_buttons'), 'TemplServiceLogin');
-                $sLoginSocial = BxDolService::call('system', 'member_auth_code', array(), 'TemplServiceLogin');
             }
 
             $oTemplate = BxDolTemplate::getInstance();
@@ -69,9 +67,6 @@ class BxBasePageHome extends BxTemplPage
                 'login_link' => BX_DOL_URL_ROOT . $oPermalink->permalink('page.php?i=login'),
                 'login_form' => $sLoginForm,
                 'login_form_in_box' => !empty($sLoginForm) ? DesignBoxContent(_t('_sys_txt_splash_login'), $sLoginForm, BX_DB_PADDING_DEF) : '',
-                'login_form_only' => $sLoginFormOnly,
-                'login_form_only_in_box' => !empty($sLoginFormOnly) ? DesignBoxContent(_t('_sys_txt_splash_login'), $sLoginFormOnly, BX_DB_PADDING_DEF) : '',
-                'login_social' => $sLoginSocial,
             ));
         }
 

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است