Beispiel #1
0
 function create($aData)
 {
     if (!isset($aData['FLD_UID'])) {
         $aData['FLD_UID'] = G::generateUniqueID();
     } else {
         if ($aData['FLD_UID'] == '') {
             $aData['FLD_UID'] = G::generateUniqueID();
         }
     }
     $oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
     try {
         $oFields = new Fields();
         $oFields->fromArray($aData, BasePeer::TYPE_FIELDNAME);
         if ($oFields->validate()) {
             $oConnection->begin();
             $iResult = $oFields->save();
             $oConnection->commit();
             return $aData['FLD_UID'];
         } else {
             $sMessage = '';
             $aValidationFailures = $oFields->getValidationFailures();
             foreach ($aValidationFailures as $oValidationFailure) {
                 $sMessage .= $oValidationFailure->getMessage() . '<br />';
             }
             throw new Exception('The registry cannot be created!<br />' . $sMessage);
         }
     } catch (Exception $oError) {
         $oConnection->rollback();
         throw $oError;
     }
 }
Beispiel #2
0
 public function testValidDefault()
 {
     $field = new Fields();
     $field->fieldName = 'testName';
     $field->type = 'email';
     $field->defaultValue = 'not an email address';
     $field->validate(array('defaultValue'));
     $this->assertTrue($field->hasErrors('defaultValue'));
     // Now test (this is more a feature of AmorphousModel than of Fields)
     // that the "required" validator is disabled
     $field->clearErrors();
     $field->defaultValue = '';
     $field->required = 1;
     $field->validate(array('defaultValue'));
     $this->assertFalse($field->hasErrors('defaultValue'));
 }