public function end_post() { //checkIsLoggedIn($this); $status = 200; $return["result"] = "OK"; $datestring = "%Y/%m/%d %H:%i:%s"; $currentDate = mdate($datestring, now()); $arrOptions['userFromId'] = $this->post('userFromId'); $arrOptions['userToId'] = $this->post('userToId'); $arrOptions['publicationId'] = $this->post('publicationId'); $arrOptions['publicationType'] = $this->post('publicationType'); $arrOptions['objectId'] = $this->post('objectId'); $arrOptions['comments'] = $this->post('comments'); $arrOptions['quantity'] = $this->post('quantity'); $processState = $arrOptions['publicationType'] == "money" ? "F" : "W"; try { $donation = new CI_Donation(); $donation->setUserId($arrOptions['userFromId']); $donation->setPublicationId($arrOptions['publicationId']); $donation->setDonationDate($currentDate); $donation->setProcessState($processState); $donationId = $donation->save(); if ($donationId) { $donatedObject = new CI_DonatedObject(); $donatedObject->setDonationId($donationId); $donatedObject->setObjectId($arrOptions['objectId']); $donatedObject->setQuantity($arrOptions['quantity']); $donatedObjectId = $donatedObject->save(); $message = new CI_Message(); $message->setUserFrom($arrOptions['userFromId']); $message->setUserTo($arrOptions['userToId']); $message->setPublication($arrOptions['publicationId']); $message->setText($arrOptions['comments']); $message->save(); } } catch (Exception $ex) { $status = 500; $return["result"] = "NOOK"; } if ($status == 200) { if ($arrOptions['publicationType'] == "money") { $request = CI_Request::getById($arrOptions['publicationId'])[0]; $amountCollected = $request->amountCollected[0]->quan; $quantityGoal = $request->quantity; if ($amountCollected >= $quantityGoal) { CI_Publication::pause($arrOptions['publicationId']); } $return["data"]['amountCollected'] = $amountCollected; $return["data"]['quantityGoal'] = $quantityGoal; } else { CI_Publication::pause($arrOptions['publicationId']); } } $this->response($return, $status); }
public function index_post() { $arrOptions['id'] = $this->input->post('id') ? $this->input->post('id') : 0; $arrOptions['userId'] = $this->input->post('userId') ? $this->input->post('userId') : ''; $arrOptions['publicationId'] = $this->input->post('publicationId') ? $this->input->post('publicationId') : ''; $arrOptions['donatedObjects'] = $this->input->post('donatedObjects') ? $this->input->post('donatedObjects') : ''; $arrOptions['processState'] = $this->input->post('processState') ? $this->input->post('processState') : ''; $objs = array(); $donatedObjects = $arrOptions['donatedObjects']; //$donatedObjectsList = CI_DonatedObject::setFromArray($objs); if ($arrOptions['id'] > 0) { $donation = CI_Donation::getById($arrOptions['id']); //quitar todos los obj y volver a insertarlo } else { $donation = new CI_Donation(); } $donation->setUserId($arrOptions['userId']); $donation->setPublicationId($arrOptions['publicationId']); $donation->setProcessState($arrOptions['processState']); $donation->setDonatedObjects($donatedObjects); if ($id = $donation->save()) { foreach ($donatedObjects as $donObject) { $donatedObject = new CI_DonatedObject(); $donatedObject->setDonationId($id); $donatedObject->setObjectId($donObject['objectId']); $donatedObject->setQuantity($donObject['quantity']); $donatedObject->save(); } $return['result'] = 'OK'; $myDonation = new stdClass(); $myDonation->id = $donation->getId(); /*$myDonation->userId = $donation->getUserId(); $myDonation->publicationId = $donation->getPublicationId(); $myDonation->donatedObjects = $donation->getDonatedObjects();*/ $return['data'] = $myDonation; } else { $return['result'] = 'NOOK'; } echo json_encode($return); }