diff --git a/admin/fundraising_campaigns.php b/admin/fundraising_campaigns.php
index 42fd00fb..e1823da3 100644
--- a/admin/fundraising_campaigns.php
+++ b/admin/fundraising_campaigns.php
@@ -36,19 +36,29 @@ switch($_GET['action']){
echo "
\n";
$q=mysql_query("SELECT * FROM fundraising_campaigns WHERE fiscalyear='{$config['FISCALYEAR']}' ORDER BY name");
while($r=mysql_fetch_object($q)) {
- echo "
\n";
+ echo "
\n";
echo "
}
@@ -493,8 +503,35 @@ switch($_GET['action']){
mysql_query("DELETE FROM emails WHERE id='$emails_id'");
happy_("Communicaton removed");
}
+ exit;
+ break;
+ case "campaign_remove":
+ $campaign_id = $_POST['campaign_id'];
+ if(is_numeric($campaign_id)) {
+ mysql_query("DELETE FROM fundraising_campaigns WHERE
+ (SELECT COUNT(*) FROM fundraising_donations WHERE fundraising_campaigns_id = $campaign_id) = 0 AND
+ (SELECT count(*) FROM emails WHERE fundraising_campaigns_id = $campaign_id) = 0 AND
+ id = $campaign_id");
+ if(mysql_affected_rows() == 0) {
+ error_("Cannot delete campaign. It is in use.");
+ } else {
+ mysql_query("DELETE FROM fundraising_campaigns_users_link WHERE fundraising_campaigns_id = $campaign_id");
+ mysql_query("DELETE FROM fundraising_donations WHERE fundraising_campaigns_id = $campaign_id");
+ mysql_query("DELETE FROM fundraising_donor_logs WHERE fundraising_campaigns_id = $campaign_id");
+ mysql_query("DELETE FROM emailqueue WHERE fundraising_campaigns_id = $campaign_id");
+ mysql_query("DELETE FROM emails WHERE fundraising_campaigns_id = $campaign_id");
+ happy_("Campaign removed");
+ echo "";
+ }
+ } else {
+ error_("Invalid Campaign ID");
+ }
+ exit;
break;
}
@@ -612,6 +649,11 @@ function campaigninfo_save(id) {
return false;
}
+function campaigninfo_remove(id) {
+ $("#debug").load("$_SERVER['PHP_SELF']?>?action=campaign_remove", $("#campaignremove_"+id).serializeArray());
+ return false;
+}
+
function update_tab_overview() {
$("#campaign_tab_overview").load("$_SERVER['PHP_SELF']?>?action=manage_tab_overview&id="+currentcampaignid);
}