From 133b8445759c60f44f2ab35e90c1848437b12696 Mon Sep 17 00:00:00 2001
From: Pradeep Nayak <pradeep.nayak@webaccess.co.in>
Date: Sat, 19 Oct 2013 18:47:15 +0530
Subject: [PATCH] CRM-13446

----------------------------------------
* CRM-13446: Add ON DELETE Options for constraints fails
  http://issues.civicrm.org/jira/browse/CRM-13446
---
 CRM/Upgrade/Incremental/php/FourThree.php | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/CRM/Upgrade/Incremental/php/FourThree.php b/CRM/Upgrade/Incremental/php/FourThree.php
index c7e5206859..f9a5eaa23c 100644
--- a/CRM/Upgrade/Incremental/php/FourThree.php
+++ b/CRM/Upgrade/Incremental/php/FourThree.php
@@ -77,13 +77,15 @@ class CRM_Upgrade_Incremental_php_FourThree {
     if ($rev == '4.3.6') {
       $constraintArray = array(
         'civicrm_contact' => 'contact_id',
-        'civicrm_campaign' => 'campaign_id'
+        'civicrm_campaign' => 'campaign_id',
+        'civicrm_payment_processor' => 'payment_processor_id',
+        'civicrm_financial_type' => 'financial_type_id'
       );
       foreach ($constraintArray as $key => $value) {
         $query = "SELECT contri_recur.id FROM civicrm_contribution_recur contri_recur LEFT JOIN {$key} ON contri_recur.{$value} = {$key}.id
 WHERE {$key}.id IS NULL";
-        if ($value == 'campaign_id') {
-          $query .= ' AND contri_recur.campaign_id IS NOT NULL ';
+        if ($value != 'contact_id') {
+          $query .= " AND contri_recur.{$value} IS NOT NULL ";
         }
         $dao = CRM_Core_DAO::executeQuery($query);
         if ($dao->N) {
-- 
2.25.1