public function addDistributionAssetRules($optionalDistributionAssetRules, $requiredDistributionAssetRules) { if (!is_array($optionalDistributionAssetRules)) { $optionalDistributionAssetRules = array(); } if (!is_array($requiredDistributionAssetRules)) { $requiredDistributionAssetRules = array(); } $assetDistributionRules = array_merge($requiredDistributionAssetRules, $optionalDistributionAssetRules); $assetDistributionRulesSubForm = new Zend_Form_SubForm(array('DisableLoadDefaultDecorators' => true)); $assetDistributionRulesSubForm->addDecorator('ViewScript', array('viewScript' => 'asset-distribution-rules-sub-form.phtml')); foreach ($assetDistributionRules as $assetDistributionRule) { $assetDistributionRuleSubForm = new Form_AssetDistributionRuleSubForm(); $assetDistributionRuleSubForm->populateFromObject($assetDistributionRule); if (in_array($assetDistributionRule, $requiredDistributionAssetRules)) { $assetDistributionRuleSubForm->setIsRequired(true); } $assetDistributionRulesSubForm->addSubForm($assetDistributionRuleSubForm, 'asset_distribution_rule_' . spl_object_hash($assetDistributionRule)); } $this->addSubForm($assetDistributionRulesSubForm, 'asset_distribution_rules'); }