Exemple #1
0
 /**
  * Test properties.
  */
 public function testProperties()
 {
     $obj = new ZMObject();
     $obj->set('foo', 'bar');
     $obj->set('deng', 'poh');
     // custom only
     $this->assertEquals(array('foo' => 'bar', 'deng' => 'poh'), $obj->getProperties());
 }
 /**
  * Create the model from the current request.
  *
  * @return ZMObject The model.
  */
 protected function createModel($parameterBag)
 {
     $model = new ZMObject();
     $model->set('type', $parameterBag->get('type'));
     $model->set('orderId', $parameterBag->get('orderId'));
     $model->set('message', $parameterBag->get('message'));
     $model->set('types', $this->getPlugin()->getRequestTypes());
     return $model;
 }
Exemple #3
0
 /**
  * Test obj2map.
  */
 public function testObj2map()
 {
     // get all properties
     $expectAll = array('foo' => 'bar', 'doh' => 'nut', 'properties' => array('foo' => 'bar', 'doh' => 'nut'), 'propertyNames' => array('foo', 'doh'), 'attachedMethods' => array());
     $obj = new ZMObject();
     $obj->set('foo', 'bar');
     $obj->set('doh', 'nut');
     $map = Beans::obj2map($obj);
     $this->assertEquals($expectAll, $map);
     // get subset of properties
     $expectSpecific = array('foo' => 'bar', 'doh' => 'nut');
     $map = Beans::obj2map($obj, array_keys($expectSpecific));
     $this->assertEquals($expectSpecific, $map);
     // get subset of array
     $arr = array_merge($expectSpecific, array('some' => 'other'));
     $map = Beans::obj2map($arr, array_keys($expectSpecific));
     $this->assertEquals($expectSpecific, $map);
 }
 /**
  * Finalise a coupon.
  *
  * @param int couponId The coupon id.
  * @param int accountId The redeeming account id.
  * @param string remoteIP The redeeming IP addres; default is an empty string.
  */
 public function finaliseCoupon($couponId, $accountId, $remoteIP = '')
 {
     $tracker = new ZMObject();
     $tracker->set('couponId', $couponId);
     $tracker->set('accountId', $accountId);
     $tracker->set('redeemDate', new \DateTime());
     $tracker->set('redeemIp', $remoteIP);
     $tracker->set('orderId', 0);
     \ZMRuntime::getDatabase()->createModel('coupon_redeem_track', $tracker);
     $sql = "UPDATE %table.coupons%\n                SET coupon_active = :active\n                WHERE coupon_id = :id";
     $args = array('id' => $couponId, 'active' => Coupon::FLAG_WAITING);
     \ZMRuntime::getDatabase()->updateObj($sql, $args, 'coupons');
 }