Record donations in grams.
[readifood.git] / lib / functions.php
index b019e93..f9da713 100644 (file)
   }
 
   function get_donation_displayname($donation) {
-    return $donation->getQuantity() . "kg on " . $donation->getDate();
+    return sprintf("%0.2fkg on %s", $donation->getQuantity() / 1000, $donation->getDate());
   }
 
   function get_order_displayname($order) {
-    return $order->getQuantity() . "kg on " . $order->getDate();
+    return sprintf("%0.2fkg on %s", $order->getQuantity() / 1000, $order->getDate());
   }
 
   function get_address_area($address) {
     return get_city_contacts($city_id, $GLOBALS['ROLE_DRIVER']);
   }
 
-  function get_contact_role_string($contact) {
-    global $roles;
-
-    $role = $contact->getRole();
+  function get_role_string($object, $roles) {
+    $role = $object->getRole();
 
     $selected = array();
 
     return implode(", ", $selected);
   }
 
+  function get_contact_role_string($contact) {
+    return get_role_string($contact, $GLOBALS['contact_roles']);
+  }
+
+  function get_hub_role_string($hub) {
+    return get_role_string($hub, $GLOBALS['hub_roles']);
+  }
+
+  function show_role_form($role, $roles) {
+    for ($i = 0; $i < count($roles); $i++) {
+      echo " <input type=\"checkbox\" name=\"role_$i\"";
+      if ($role & (1 << $i)) echo " checked";
+      echo ">$roles[$i]\n";
+    }
+  }
+
   function get_area_hubs($area_id = null) {
     $q = new HubQuery;
     if (isset($area_id)) $q->useAddressQuery()->filterByAreaId($area_id)->endUse();