Переглянути джерело

Getting name and booking date into Square

Richard Knight 6 роки тому
батько
коміт
22e447f67d
2 змінених файлів з 12 додано та 7 видалено
  1. 7 6
      src/SquarepayExtension.php
  2. 5 1
      templates/frontend/cardentryform.twig

+ 7 - 6
src/SquarepayExtension.php

@@ -28,13 +28,13 @@ class SquarepayExtension extends SimpleExtension
 			// Create and configure a new Square API client using the OAuth token
 			$manager = $app['filesystem'];
 			if (!$manager->hasFilesystem('extensions_config')) {
-				throw new Exception('Could not find filesystem extensions_config');
+				throw new \Exception('Could not find filesystem extensions_config');
 			}
 			$filesystem = $manager->getFilesystem('extensions_config');
 			$path = '.sqoatoken';
 			$file = $filesystem->getFile($path);
 			if (!$file->exists($path)) {
-				throw new Exception('Could not find '.$path);
+				throw new \Exception('Could not find '.$path);
 			}
 			$oauthToken = $file->read($path);
 
@@ -199,6 +199,7 @@ class SquarepayExtension extends SimpleExtension
 		$name = $request->request->get('name');
 		$email = $request->request->get('email');
 		$date = $request->request->get('date');
+		$booker = $request->request->get('booker');
 		
 		$config = $this->getConfig();
 		$testmode = $config['testmode'];
@@ -230,7 +231,7 @@ class SquarepayExtension extends SimpleExtension
 		try {
 			$ordersApi = new \SquareConnect\Api\OrdersApi($apiClient);
 			$response = $ordersApi->createOrder($locationId, $request);
-			dump($response);
+			// dump($response);
 		}
 		catch (Exception $e) {
 			// TODO: Add better error handling
@@ -261,9 +262,8 @@ class SquarepayExtension extends SimpleExtension
 			$paymentInfo['order_id'] = $orderId;
 		}
 		$referenceInfo = [
-			'buyer_name' => $name,
-			'buyer_email_address' => $email,
-			'date_of_booking' => $date
+			'reference_id' => $name.' <'.$email.'>',
+			'note' => $booker.' on '.$date
 		];
 
 		// $chargeRequest = new \SquareConnect\Model\ChargeRequest();
@@ -280,6 +280,7 @@ class SquarepayExtension extends SimpleExtension
 		// Order succeeded
 		// dump($response);
 		// exit;
+        $app['session']->set('basket', []);
         return new RedirectResponse('/order-complete');
 	}
 

+ 5 - 1
templates/frontend/cardentryform.twig

@@ -19,9 +19,13 @@ var locationId = '{{ testmode ? sq_sandbox_location_id : sq_location_id }}';
 		<input type="email" name="email">
 	</div>
 	<div class="cc-row">
-		<label>Departure Date</label>
+		<label>Date of Booking</label>
 		<input type="date" name="date" placeholedr="dd/mm/yy">
 	</div>
+	<div class="cc-row">
+		<label>Name of Booker</label>
+		<input type="text" name="booker">
+	</div>
 	<div class="cc-row">
 		<label>Card Number</label>
 		<div id="sq-card-number"></div>