diff --git a/application/models/QuestionTheme.php b/application/models/QuestionTheme.php index c020221997d..6f4549ff838 100644 --- a/application/models/QuestionTheme.php +++ b/application/models/QuestionTheme.php @@ -529,7 +529,7 @@ public static function uninstall($oQuestionTheme) } // todo optimize function for very big surveys, eventually in yii 2 or 3 with batch processing / if this is breaking in Yii 1 use CDbDataReader $query = new CDbDataReader($command), $query->read() - $aQuestions = Question::model()->findAll( + $aQuestions = Question::model()->count( 'type = :type AND question_theme_name = :theme AND parent_qid = :parent_qid', [ ':type' => $oQuestionTheme->question_type, diff --git a/application/models/services/ThemeQuestionAttributeProvider.php b/application/models/services/ThemeQuestionAttributeProvider.php index d0dc221c844..0d17a49fdee 100644 --- a/application/models/services/ThemeQuestionAttributeProvider.php +++ b/application/models/services/ThemeQuestionAttributeProvider.php @@ -43,10 +43,10 @@ protected function getAttributesFromQuestionTheme($questionThemeName, $questionT if ($questionTheme !== null) { $xmlFilePath = $questionTheme['xml_path'] . '/config.xml'; $extensionConfig = \ExtensionConfig::loadFromFile($xmlFilePath); - $xmlAttributes = $extensionConfig->getNodeAsArray('attributes'); } - if (!empty($xmlAttributes)) { + if (!empty($extensionConfig)) { + $xmlAttributes = $extensionConfig->getNodeAsArray('attributes'); if (!empty($xmlAttributes['attribute']['name'])) { // Only one attribute set in config: need an array of attributes $xmlAttributes['attribute'] = array($xmlAttributes['attribute']);