X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=lib%2Forder.php;h=38a235aa28cf91e5636f49282ddd3a2ac9426454;hb=6bd4ad3daf2cc870d96a3fed9ea9caf6798d2b78;hp=928ca67efeafcb2bfc7448106970f8bd94257c6b;hpb=dedb377e98ae2f222f4d8b5dacc175e4d4e73f4b;p=readifood.git
diff --git a/lib/order.php b/lib/order.php
index 928ca67..38a235a 100644
--- a/lib/order.php
+++ b/lib/order.php
@@ -40,14 +40,7 @@
function show_orders($offset, $per_page, $requester_ids = null, $beneficiary_ids = null, $state_mask = null) {
/* XXX: Use Propel methods. */
- if (isset($state_mask)) {
- $order_ids = array();
- $dbh = Propel::getConnection();
- $sth = $dbh->prepare("select * from OrderState o where updated=(select max(updated) from OrderState where order_id=o.order_id) and state & $state_mask");
- $sth->execute();
- $order_states = OrderStatePeer::populateObjects($sth);
- foreach ($order_states as $order_state) $order_ids[] = $order_state->getOrderId();
- }
+ if (isset($state_mask)) $order_ids = get_order_ids_by_state($state_mask);
$q = new OrderQuery;
if (isset($requester_ids)) $q->filterByRequesterId($requester_ids);
if (isset($beneficiary_ids)) $q->filterByBeneficiaryId($beneficiary_ids);
@@ -57,27 +50,7 @@
$orders = $q->orderByDate()->find();
if (count($orders)) {
foreach ($orders as $order) {
- echo "
\nOrder " . $order->getStrongLink($order->getId()) . ": " . get_order_displayname($order);
- if (check_admin(1)) {
- echo " " . $order->getDeleteLink();
- }
-
- /* XXX: Should pull from query. */
- $q = new ContactQuery;
- $contact = $q->findOneById($order->getBeneficiaryId());
- if ($contact) {
- echo " for " . $contact->getLink();
- $area = get_contact_area($contact);
- if ($area) echo " in " . $area->getLink();
- }
-
- if ($order->getHubId()) {
- $q = new HubQuery;
- $hub = $q->findOneById($order->getHubId());
- if ($hub) echo " to hub " . $hub->getLink();
- $area = get_hub_area($hub);
- if ($area) echo " in " . $area->getLink();
- }
+ echo "
\n" . get_order_summary($order) . "
\n";
}
}
else echo " none";
@@ -222,11 +195,11 @@
}
function show_order_forms($city_id, $state_mask) {
- echo "
Invalid quantity!
\n"; - return false; - } - if ($new && isset($_POST['recurrence'])) $recurrence = $_POST['recurrence']; if (! $recurrence) $recurrence = 0; @@ -583,7 +550,7 @@ if (isset($id)) $order = get_order_by_id($id); if (! $order) return; - echo "\n"; + end_form(); show_order_history($order->getId()); } @@ -683,15 +650,9 @@ } else if (isset($id)) show_order($id); else if ($state_mask) show_orders(0, 10, null, null, $state_mask); - else { - /* XXX: Shown after adding. */ - show_order_forms($city_id, $state_mask); - show_add_new_order_form($city_id); - } - if (count($parameters)) { - show_order_forms($city_id, $state_mask); - } + show_order_forms($city_id, $state_mask); + show_add_new_order_form($city_id); ?>