Fixed check for quantity in order.
[readifood.git] / lib / order.php
index 426606b..9c9e1c9 100644 (file)
     echo "<tr>\n";
     echo "  <td>Parcel size</td>\n";
     echo "  <td><select name=\"parcel_size\">\n";
-    $mask = 1 << (count($parcel_sizes) + 1);
+    $mask = 1 << count($parcel_sizes);
     for ($i = 0; $i < count($parcel_sizes); $i++) {
-      option("parcel_size", $i << 1, $parcel_sizes[$i], $order->getParcel() % $mask);
+      option("parcel_size", 1 << $i, $parcel_sizes[$i], $order->getParcel() % $mask);
     }
     echo "</select></td>\n";
     echo "</tr>\n";
     $order->setBeneficiaryId($contact->getId());
 
     echo "<form method=\"POST\" action=\"" . $_SERVER['REQUEST_URI'] . "\">\n";
-    echo "<p>Place an order:</p>\n";
+    echo "<p>Placing order for " . $contact->getStrongLink() . ".";
+    $parcel = $contact->getParcel();
+    if ($parcel) {
+      echo "  Suggested parcel type is <span class=\"strong\">" .  get_contact_parcel_string($contact) . "</span>";
+      $order->setParcel($parcel);
+    }
+    echo "</p>\n";
 
     echo "<table>\n";
     show_order_form($order, $area_id);
     $requester_id = $_POST['requester_id'];
     $beneficiary_id = $_POST['beneficiary_id'];
     $hub_id = $_POST['hub_id'];
-    $quantity = $_POST['quantity'];
     $driver_id = $_POST['driver_id'];
     if (! $driver_id) $driver_id = null;
     $state = $_POST['state'];
     }
     else $hub_id = null;
 
-    if (! is_numeric($quantity)) {
-      echo "<p>Invalid quantity!</p>\n";
-      return false;
-    }
-
     if ($new && isset($_POST['recurrence'])) $recurrence = $_POST['recurrence'];
     if (! $recurrence) $recurrence = 0;