Exemple #1
0
 /**
  * Gets the configurations for the given model's  attributes
  * @param ActiveRecord $model the active record to get attributes for
  *
  * @return array the attribute config
  */
 protected function getAttributeConfigs(ActiveRecord $model)
 {
     $attributes = array();
     $pk = $model->getTableSchema()->primaryKey;
     foreach ($model->getVisibleAttributeNames() as $attribute) {
         $validators = array();
         foreach ($model->getValidators($attribute) as $validator) {
             if ($validator->enableClientValidation && ($js = $validator->clientValidateAttribute($model, $attribute)) !== null) {
                 $validators[] = $js;
             }
         }
         if (is_array($pk)) {
             $isPk = in_array($attribute, $pk);
         } else {
             $isPk = $attribute == $pk;
         }
         $attributes[$attribute] = array('label' => $model->getAttributeLabel($attribute), 'description' => $model->getAttributeDescription($attribute), 'primitive' => $model->getAttributePrimitive($attribute), 'type' => $model->getAttributeType($attribute), 'format' => $model->getAttributeFormat($attribute), 'input' => $model->getAttributeInput($attribute), 'validators' => $validators, 'isWritable' => $model->isAttributeSafe($attribute), 'isRequired' => $model->isAttributeRequired($attribute), 'isPrimaryKey' => (bool) $isPk);
     }
     return $attributes;
 }
Exemple #2
0
 /**
  * Gets the configurations for the given model's  attributes
  * @param ActiveRecord $model the active record to get attributes for
  *
  * @return array the attribute config
  */
 protected function getAttributeConfigs(ActiveRecord $model)
 {
     $types = $model->attributeTypes();
     $descriptions = $model->attributeDescriptions();
     $attributes = array();
     foreach ($model->getVisibleAttributeNames() as $attribute) {
         $validators = array();
         foreach ($model->getValidators($attribute) as $validator) {
             if ($validator->enableClientValidation && ($js = $validator->clientValidateAttribute($model, $attribute)) !== null) {
                 $validators[] = $js;
             }
         }
         $attributes[$attribute] = array('label' => $model->getAttributeLabel($attribute), 'type' => isset($types[$attribute]) ? $types[$attribute] : null, 'description' => isset($descriptions[$attribute]) ? $descriptions[$attribute] : null, 'writable' => $model->isAttributeSafe($attribute), 'required' => $model->isAttributeRequired($attribute), 'validators' => $validators);
     }
     return $attributes;
 }