X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fcontact.php;h=d83e10116302281e4c960acaf29d39389a0533b8;hb=refs%2Ftags%2Fuat-2013-04-30;hp=98340b8ce095b845acfbecc989e9d4c20a649218;hpb=d11f3b9f2da834281ab505d371d4b23bae80251a;p=readifood.git
diff --git a/lib/contact.php b/lib/contact.php
index 98340b8..d83e101 100644
--- a/lib/contact.php
+++ b/lib/contact.php
@@ -52,7 +52,10 @@
if ($role_string) echo " $role_string";
if ($role & $GLOBALS['ROLE_DONOR']) printf(" Donations", urlencode($contact->getDisplayname()), $contact->getId());
if ($role & $GLOBALS['ROLE_REQUESTER']) printf(" Referred", urlencode($contact->getDisplayname()), $contact->getId());
- if ($role & $GLOBALS['ROLE_BENEFICIARY']) printf(" Orders", urlencode($contact->getDisplayname()), $contact->getId());
+ if ($role & $GLOBALS['ROLE_BENEFICIARY']) {
+ printf(" Orders", urlencode($contact->getDisplayname()), $contact->getId());
+ if (get_contact_area($contact)) printf(" Place", urlencode($contact->getDisplayname()), $contact->getId());
+ }
if (check_admin(1)) {
echo " " . $contact->getDeleteLink();
}
@@ -174,7 +177,7 @@
}
function show_contact_form($contact = null, $new = false) {
- global $contact_roles;
+ global $contact_roles, $parcel_sizes, $parcel_contents;
if (! $contact) $contact = new Contact;
@@ -259,6 +262,30 @@
echo " \n";
echo "\n";
+ /* Parcel type. */
+ echo "
\n";
+ echo " Family unit | \n";
+ echo " | \n";
+ echo "
\n";
+
+ /* Parcel contents. */
+ echo "\n";
+ echo " Dietary requirements | \n";
+ echo " ";
+ for ($i = count($parcel_sizes); $i < count($parcel_contents); $i++) {
+ if (1 << $i == $GLOBALS['PARCEL_TOILETRY']) continue;
+ echo " getParcel() & (1 << $i)) echo " checked";
+ echo ">$parcel_contents[$i]\n";
+ }
+ echo " | \n";
+ echo "
\n";
+
/* Notes. */
echo "\n";
echo " Notes | \n";
@@ -310,7 +337,7 @@
}
function update_contact(&$contact, $area_id, $new = false) {
- global $contact_roles;
+ global $contact_roles, $parcel_sizes, $parcel_contents;
$role = 0;
for ($i = 0; $i < count($contact_roles); $i++) {
@@ -343,6 +370,7 @@
}
/* Get address. */
+ $area_id = $_POST['area_id'];
$line = $_POST['address'];
$postcode = $_POST['postcode'];
$q = new AddressQuery;
@@ -368,6 +396,10 @@
$telephone1 = $_POST['telephone1'];
$telephone2 = $_POST['telephone2'];
$email = $_POST['email'];
+ $parcel = $_POST['parcel_size'];
+ for ($i = count($parcel_sizes); $i < count($parcel_contents); $i++) {
+ if ($_POST['parcel_' . $i] == "on") $parcel |= (1 << $i);
+ }
$notes = $_POST['notes'];
$contact->setRole($role);
@@ -378,6 +410,7 @@
$contact->setTelephone1($telephone1);
$contact->setTelephone2($telephone2);
$contact->setEmail($email);
+ $contact->setParcel($parcel);
$contact->setNotes($notes);
$contact->setAddressId($address->getId());