فهرست منبع

#53 - some fixes after cleanup

Alex Trofimov 12 سال پیش
والد
کامیت
67b23bd7e6

+ 2 - 2
inc/classes/BxDolEmailTemplates.php

@@ -66,7 +66,7 @@ class BxDolEmailTemplates extends BxDol implements iBxDolSingleton {
     /**
      * Class constructor.
      */
-    function __construct() {
+    protected function __construct() {
         if (isset($GLOBALS['bxDolClasses'][get_class($this)]))
             trigger_error ('Multiple instances are not allowed for the class: ' . get_class($this), E_USER_ERROR);
 
@@ -85,7 +85,7 @@ class BxDolEmailTemplates extends BxDol implements iBxDolSingleton {
             'about_us' => '<a href="' . $sAboutUsLink . '">' . _t('_sys_et_txt_about_us') . '</a>',
         );
 
-        $this->_oEmailTemplatesQuery = new BxDolEmailTemplatesQuery();
+        $this->_oEmailTemplatesQuery = BxDolEmailTemplatesQuery::getInstance();
     }
 
     /**

+ 14 - 3
inc/classes/BxDolEmailTemplatesQuery.php

@@ -13,10 +13,20 @@ bx_import('BxDolDb');
  * Database queries for BxDolEmailTemplates object.
  * @see BxDolEmailTemplates
  */
-class BxDolEmailTemplatesQuery extends BxDolDb {
+class BxDolEmailTemplatesQuery extends BxDolDb implements iBxDolSingleton 
+{
+    public static function getInstance() 
+    {
+        if (!isset($GLOBALS['bxDolClasses'][__CLASS__])) {
+            $o = new BxDolEmailTemplatesQuery();
+            $GLOBALS['bxDolClasses'][__CLASS__] = $o;
+        }
 
-    public function getTemplate ($sTemplateName, $iLangAccount, $iLangDefault, $iLangFallback) {
+        return $GLOBALS['bxDolClasses'][__CLASS__];
+    }
 
+    public function getTemplate ($sTemplateName, $iLangAccount, $iLangDefault, $iLangFallback) 
+    {
         // get email templates keys
         $sSql = $this->prepare("SELECT `Subject`, `Body` FROM `sys_email_templates` WHERE `Name`=? LIMIT 1", $sTemplateName);
         $a = $this->getRow($sSql);
@@ -50,7 +60,8 @@ class BxDolEmailTemplatesQuery extends BxDolDb {
         return array ('Subject' => $sSubject, 'Body' => $sBody);
     }
 
-    public function getLangTranslation ($sKey, $iLangId) {
+    public function getLangTranslation ($sKey, $iLangId) 
+    {
         $sSql = $this->prepare("SELECT `s`.`String` FROM `sys_localization_strings` as `s` INNER JOIN `sys_localization_keys` AS `k` ON (`s`.`IDKey` = `k`.`ID`) WHERE `k`.`Key` = ? AND `s`.`IDLanguage` = ? LIMIT 1", $sKey, $iLangId);
         return $this->getOne($sSql);
     }

+ 3 - 1
modules/base/profile/classes/BxBaseModProfileModule.php

@@ -139,7 +139,9 @@ class BxBaseModProfileModule extends BxBaseModGeneralModule implements iBxDolPro
         bx_import('BxDolProfile');
         $s = '';
         foreach ($a as $iProfileId) {
-            $o = BxDolProfile::getInstance($iProfileId);
+            if (!($o = BxDolProfile::getInstance($iProfileId))) {
+                continue;
+            }
             $s .= $o->getUnit();
         }
 

+ 2 - 1
modules/boonex/timeline/classes/BxTimelineModule.php

@@ -37,7 +37,8 @@ define('BX_TIMELINE_PARSE_TYPE_DEFAULT', BX_TIMELINE_PARSE_TYPE_POST);
 
 class BxTimelineModule extends BxDolModule
 {
-    protected $_iOwnerId;
+    public $_iOwnerId;
+
     protected $_sJsPostObject;
     protected $_sJsViewObject;
     protected $_aPostElements;