diff --git a/admin/donors.php b/admin/donors.php index 7eb752ea..f38a522e 100644 --- a/admin/donors.php +++ b/admin/donors.php @@ -24,6 +24,7 @@ "; echo i18n("Appeal").":"; echo ""; + $query = mysql_query( + "SELECT accounts.id as acc_id, users.id as usr_id, users.deleted, MAX(users.year) FROM accounts JOIN users ON" . + " users.accounts_id = accounts.id" . + " WHERE users.sponsors_id = '$id'" . + " AND types LIKE '%sponsor%'" . + " GROUP BY acc_id" . + " HAVING deleted='no'" . + " ORDER BY `primary` DESC, lastname, firstname" + ); - // loop through each contact in the donor - $query = mysql_query("SELECT users.id,users.uid,users.deleted,MAX(year) - FROM users - LEFT JOIN users_sponsor ON users_sponsor.users_id=users.id - WHERE - sponsors_id='$id' - AND types LIKE '%sponsor%' - GROUP BY uid - HAVING deleted='no' - ORDER BY users_sponsor.primary DESC,lastname,firstname - "); echo mysql_error(); $uids=array(); while($r=mysql_fetch_object($query)) { - $uids[]=$r->uid; + $uids[]=$r->usr_id; } $q=mysql_query("SELECT * FROM fundraising_campaigns @@ -352,12 +351,12 @@ switch($_GET['action']) { case 'newcontactsearch': if($_POST['email']) - $q=mysql_query("SELECT *,MAX(year) FROM users WHERE email='".trim($_POST['email'])."' GROUP BY uid HAVING deleted='no'"); + $q=mysql_query("SELECT *,MAX(year) FROM users WHERE email='".trim($_POST['email'])."' GROUP BY accounts_id HAVING deleted='no'"); if($r=mysql_fetch_object($q)) { echo i18n("There is an exact email address match for %1",array($_POST['email'])); echo ""; ?> @@ -381,7 +380,7 @@ switch($_GET['action']) { if($_POST['email']) $searchstr.=" AND email LIKE '%".$_POST['email']."%'"; - $q=mysql_query("SELECT *,MAX(year) FROM users WHERE $searchstr GROUP BY uid HAVING deleted='no'"); + $q=mysql_query("SELECT *,MAX(year) FROM users WHERE $searchstr GROUP BY accounts_id HAVING deleted='no'"); $num=mysql_num_rows($q); if($num==0) { echo i18n("No existing users match, will create a new user"); @@ -390,7 +389,7 @@ switch($_GET['action']) { echo i18n("Did you mean one of these existing users? (click to choose one)")."
"; echo ""; } @@ -473,13 +472,13 @@ function delete_contact(){ } function addexisting_contact() { - $uid=intval($_POST['uid']); - $sponsors_id=intval($_POST['id']); - echo "Linking uid=$uid to sponsors_id=$sponsors_id
"; + $accid = intval($_POST['accounts_id']); + $sponsors_id = intval($_POST['id']); + echo "Linking accounts_id=$accid to sponsors_id=$sponsors_id
"; - echo "uid $uid has users.id {$u['id']}"; +// echo "uid $uid has users.id {$u['id']}"; - $u=user_load_by_uid($uid); + $u=user_load_by_accounts_id($accid); $u['sponsors_id']=$sponsors_id; $u['types'][]="sponsor"; user_save($u); @@ -498,7 +497,7 @@ function save_contact(){ if($_POST['recordtype'] == 'new'){ if($_POST['email']) { - $q=mysql_query("SELECT *,MAX(year) FROM users WHERE email='".trim($_POST['email'])."' GROUP BY uid HAVING deleted='no'"); + $q=mysql_query("SELECT *,MAX(year) FROM users WHERE email='".trim($_POST['email'])."' GROUP BY accounts_id HAVING deleted='no'"); if(mysql_num_rows($q)) { error_("A user with that email address already exists"); exit; @@ -508,8 +507,11 @@ function save_contact(){ // this is a new record being submitted. Create the user. $successMessage = "Contact created successfully"; $successLog = "Added contact "; - $u = user_create("sponsor", $_POST['email']); - $id = $u['id']; + $acc = account_create($_POST['email']); + $accid = $acc['id']; + $usr = user_create($accid); + user_add_role($usr, 'sponsor'); + //sponsor }else if($_POST['recordtype'] == 'existing'){ // this is an existing record being updated. Load the user. $successMessage = "Contact updated successfully"; @@ -602,15 +604,15 @@ function draw_contactsinfo_form($contact = null){ // loop through each contact and draw a form with their data in it. - $query = mysql_query("SELECT *,MAX(year) FROM users LEFT JOIN users_sponsor ON users_sponsor.users_id=users.id - WHERE - sponsors_id='" . $sponsor_id . "' - AND types LIKE '%sponsor%' - GROUP BY uid - HAVING deleted='no' - ORDER BY users_sponsor.primary DESC,lastname,firstname - "); - echo mysql_error(); + + $q = "SELECT * , MAX( year ) + FROM users + WHERE sponsors_id = '" . $sponsor_id . "' + AND TYPES LIKE '%sponsor%' + GROUP BY accounts_id + HAVING deleted = 'no' + ORDER BY `primary` DESC , lastname, firstname"; + $query = mysql_query($q); while($contact = mysql_fetch_array($query)){ // draw a header for this user @@ -807,8 +809,8 @@ function draw_activityinfo_form(){ FROM fundraising_donor_logs AS fdl LEFT JOIN users ON fdl.users_id=users.id LEFT JOIN fundraising_campaigns ON fdl.fundraising_campaigns_id=fundraising_campaigns.id - WHERE sponsors_id=" . $sponsorid. " ORDER BY dt DESC"; - //echo "" . $query . ""; + WHERE fdl.sponsors_id=" . $sponsorid. " ORDER BY dt DESC"; +// echo "" . $query . ""; $q = mysql_query($query); echo mysql_error(); if(mysql_num_rows($q)) { @@ -1044,9 +1046,9 @@ function update_contactsinfo() ); } -function contactsinfo_save(uid) { +function contactsinfo_save(accounts_id) { var id=sponsor_id; - $("#debug").load("?action=contactsinfo_save&id="+id, $("#contact_" + uid).serializeArray(), + $("#debug").load("?action=contactsinfo_save&id="+id, $("#contact_" + accounts_id).serializeArray(), function() { $("#contactaccordion").accordion(); update_contactsinfo(); @@ -1054,9 +1056,9 @@ function contactsinfo_save(uid) { return false; } -function contactsinfo_delete(uid) { +function contactsinfo_delete(accounts_id) { var id=sponsor_id; - $("#debug").load("?action=contactsinfo_delete&id="+id, $("#contact_" + uid).serializeArray(), + $("#debug").load("?action=contactsinfo_delete&id="+id, $("#contact_" + accounts_id).serializeArray(), function() { $("#contactaccordion").accordion(); update_contactsinfo(); @@ -1106,9 +1108,9 @@ function donewcontactsearch() { $("#newcontactsearch").load("?action=newcontactsearch",$("#contact_new").serializeArray()); } -function useexistingcontact(uid) { +function useexistingcontact(accounts_id) { var id=sponsor_id; - $("#debug").load("?action=contactsinfo_addexisting",{id: id, uid: uid} ,function() { update_contactsinfo(); }); + $("#debug").load("?action=contactsinfo_addexisting",{id: id, accounts_id: accounts_id} ,function() { update_contactsinfo(); }); } function togglefulldonationhistory() {