Jelajahi Sumber

Merge branch 'master' of https://github.com/boonex/dolphin

AntonLV 13 tahun lalu
induk
melakukan
5eb092a5ac

+ 1 - 0
inc/classes/BxDolTemplate.php

@@ -319,6 +319,7 @@ class BxDolTemplate extends BxDol implements iBxDolSingleton {
         ));
 
         //--- Load default JS ---//
+        bx_import('BxDolLanguages');
         $this->addJsTranslation(array(
             '_are you sure?',
         ));

+ 22 - 8
modules/boonex/persons/classes/BxPersonsFormPerson.php

@@ -12,6 +12,7 @@
 bx_import('BxTemplFormView');
 bx_import('BxDolProfile');
 bx_import('BxDolStorage');
+bx_import('BxDolImageTranscoder');
 
 /**
  * Create/Edit Person Form.
@@ -52,36 +53,38 @@ class BxPersonsFormPerson extends BxTemplFormView {
         parent::initChecker($aValues, $aSpecificValues);
 
         foreach ($this->_aImageFields as $sField => $aVals) {
-            if (!isset($this->aInputs[$sField]) || !isset($aValues[$sField]))
+            if (!isset($this->aInputs[$sField]))
                 continue;
 
             if ($aValues && !empty($aValues['id'])) 
                 $this->aInputs[$sField]['content_id'] = $aValues['id'];
 
             $sErrorString = '';
-            $this->aInputs[$sField]['file_id'] = $this->_processFile ($sField, $aValues[$sField], $sErrorString);
+            $this->aInputs[$sField]['file_id'] = $this->_processFile ($sField, isset($aValues[$sField]) ? $aValues[$sField] : 0, $sErrorString);
             if ($sErrorString) {
                 $this->aInputs[$sField]['error'] = $sErrorString;
                 $this->setValid(false);
             }
 
+            if (!isset($this->aInputs[$aVals['field_preview']]) || !empty($this->aInputs[$aVals['field_preview']]['content']))
+                continue;
+
             $oTranscoder = BxDolImageTranscoder::getObjectInstance($aVals['images_transcoder']);
 
             $aVars = array (
                 'bx_if:picture' => array (
-                    'condition' => $oTranscoder && $aValues[$sField] ? true : false,
+                    'condition' => $oTranscoder && isset($aValues[$sField]) && $aValues[$sField] ? true : false,
                     'content' => array (
-                        'picture_url' => $oTranscoder ? $oTranscoder->getImageUrl($aValues[$sField]) : '',
+                        'picture_url' => $oTranscoder && isset($aValues[$sField]) && $aValues[$sField] ? $oTranscoder->getImageUrl($aValues[$sField]) : '',
                     ),
                 ),
                 'bx_if:no_picture' => array (
-                    'condition' => !$oTranscoder || !$aValues[$sField] ? true : false,
+                    'condition' => !$oTranscoder || !isset($aValues[$sField]) || !$aValues[$sField] ? true : false,
                     'content' => array (),
                 ),
             );
             $this->aInputs[$aVals['field_preview']]['content'] = $this->_oModule->_oTemplate->parseHtmlByName('picture_preview.html', $aVars);
         }
-        
     }
 
     public function insert ($aValsToAdd = array(), $isIgnore = false) {
@@ -89,9 +92,20 @@ class BxPersonsFormPerson extends BxTemplFormView {
             BxPersonsConfig::$FIELD_AUTHOR => $this->_iAccountProfileId,
             BxPersonsConfig::$FIELD_ADDED => time(),
             BxPersonsConfig::$FIELD_CHANGED => time(),
-            BxPersonsConfig::$FIELD_COVER => $this->aInputs[BxPersonsConfig::$FIELD_COVER]['file_id'],
-            BxPersonsConfig::$FIELD_PICTURE => $this->aInputs[BxPersonsConfig::$FIELD_PICTURE]['file_id'],
         ));
+        
+        if (isset($this->aInputs[BxPersonsConfig::$FIELD_PICTURE])) {
+            $aValsToAdd = array_merge($aValsToAdd, array (
+                BxPersonsConfig::$FIELD_PICTURE => $this->aInputs[BxPersonsConfig::$FIELD_PICTURE]['file_id'],
+            ));
+        }
+
+        if (isset($this->aInputs[BxPersonsConfig::$FIELD_COVER])) {
+            $aValsToAdd = array_merge($aValsToAdd, array (
+                BxPersonsConfig::$FIELD_COVER => $this->aInputs[BxPersonsConfig::$FIELD_COVER]['file_id'],
+            ));
+        }
+
         return parent::insert ($aValsToAdd, $isIgnore);
     }