Exemple #1
0
 public function create($aData)
 {
     $oConnection = Propel::getConnection(GatewayPeer::DATABASE_NAME);
     try {
         $sGatewayUID = G::generateUniqueID();
         $aData['GAT_UID'] = $sGatewayUID;
         $oGateway = new Gateway();
         $oGateway->fromArray($aData, BasePeer::TYPE_FIELDNAME);
         if ($oGateway->validate()) {
             $oConnection->begin();
             $iResult = $oGateway->save();
             $oConnection->commit();
             return $sGatewayUID;
         } else {
             $sMessage = '';
             $aValidationFailures = $oGateway->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;
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function postStore()
 {
     $input = Input::only('user_id', 'gateway_name', 'gateway_address');
     $input['prefix'] = $this->generate_prefix();
     $rules = array('gateway_name' => 'required|min:3', 'gateway_address' => 'required|ip_hostname|unique:gateways,gateway_address,NULL,id,deleted_at,NULL', 'prefix' => 'unique:gateways,prefix');
     $v = Validator::make($input, $rules);
     if ($v->fails()) {
         return Output::push(array('path' => 'gateway/add', 'errors' => $v, 'input' => TRUE));
     }
     $gateway = new Gateway(['user_id' => Auth::user()->status == 2 ? $input['user_id'] : Auth::user()->id, 'gateway_name' => $input['gateway_name'], 'gateway_address' => $input['gateway_address'], 'prefix' => $input['prefix']]);
     $gateway->save();
     Event::fire('logger', array(array('gateway_add', array('id' => $gateway->id, 'gateway_name' => $gateway->gateway), 2)));
     if ($gateway->id) {
         return Output::push(array('path' => 'gateway', 'messages' => array('success' => _('You have added gateway successfully'))));
     } else {
         return Output::push(array('path' => 'gateway/add', 'messages' => array('fail' => _('Fail to add gateway')), 'input' => TRUE));
     }
 }