コード例 #1
0
ファイル: AttributeForm.php プロジェクト: youprofit/Zurmo
 public function __construct(RedBeanModel $model = null, $attributeName = null)
 {
     assert('$attributeName === null || is_string($attributeName)');
     assert('$model === null || $model->isAttribute($attributeName)');
     if ($model !== null) {
         $this->attributeName = $attributeName;
         $this->attributeLabels = $model->getAttributeLabelsForAllActiveLanguagesByAttributeName($attributeName);
         $this->attributePropertyToDesignerFormAdapter = new AttributePropertyToDesignerFormAdapter();
         $validators = $model->getValidators($attributeName);
         foreach ($validators as $validator) {
             if ($validator instanceof CDefaultValueValidator) {
                 $this->defaultValue = $validator->value;
             } elseif ($validator instanceof CRequiredValidator) {
                 $this->isRequired = true;
                 $modelAttributesAdapter = new ModelAttributesAdapter($model);
                 if ($modelAttributesAdapter->isStandardAttribute($attributeName) && $modelAttributesAdapter->isStandardAttributeRequiredByDefault($attributeName)) {
                     $this->attributePropertyToDesignerFormAdapter->setUpdateRequiredFieldStatus(false);
                 }
             }
         }
         if ($model instanceof Item && $attributeName != null) {
             $this->isAudited = $model->isAttributeAudited($attributeName);
         }
     }
 }
コード例 #2
0
 /**
  * @depends testStandardAttributeThatBecomesRequiredCanStillBeChangedToBeUnrequired
  */
 public function testIsStandardAttributeRequiredByDefault()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     //Testing an attribute that is not on the specified model, but requires a casting up.
     $contact = new Contact();
     $adapter = new ModelAttributesAdapter($contact);
     $this->assertTrue($adapter->isStandardAttributeRequiredByDefault('lastName'));
 }