function DeleteCampaign($CpId, $Id, $NoRedir = false) { global $Db, $Logs, $Lang, $nsProduct; $SubCnt = $Db->CNT(PFX . "_tracker_campaign", "PARENT_ID={$Id}"); if ($SubCnt > 0) { $Query = "SELECT ID FROM " . PFX . "_tracker_campaign WHERE PARENT_ID={$Id}"; $Sql = new Query($Query); while ($Row = $Sql->Row()) { DeleteCampaign($CpId, $Row->ID, true); } } $Query = "\n\t\tSELECT \n\t\t\tTCP.ID,\n\t\t\tTSC.ID AS SUB_CAMP,\n\t\t\tTST.ID AS SPLIT_TEST\n\t\t\tFROM " . PFX . "_tracker_camp_piece TCP\n\t\t\t\tLEFT JOIN " . PFX . "_tracker_sub_campaign TSC\n\t\t\t\t\tON TSC.SUB_ID=TCP.ID\n\t\t\t\tLEFT JOIN " . PFX . "_tracker_split_test TST\n\t\t\t\t\tON TST.SUB_ID=TCP.ID\n\t\t\tWHERE CAMPAIGN_ID={$Id} \n\t\t\tORDER BY TCP.NAME\n\t"; $Sql = new Query($Query); while ($Row = $Sql->Row()) { if ($Row->SUB_CAMP) { DeleteSubCampaign($CpId, $Row->ID, true); } if ($Row->SPLIT_TEST) { DeleteSplit($CpId, $Row->ID, true); } } $Query = "DELETE FROM " . PFX . "_tracker_campaign WHERE ID = {$Id}"; $Db->Query($Query); $Query = "DELETE FROM " . PFX . "_tracker_watch WHERE GRP_ID = {$Id}"; $Db->Query($Query); if (!$NoRedir) { $nsProduct->Redir("campaign", "RDlt=1"); } }
} $MaxYear = date("Y") + 5; ///////////////////////////////////////////// ///////// call any process functions if (!$nsUser->DEMO) { if (ValidId($SubCamp->ID) && ValidVar($MoveCampTo) && $MoveCampTo != $SubCamp->CAMPAIGN_ID) { MoveSubCamp($EditId, $MoveCampTo); } if (ValidId($EditId) && isset($EditArr) && is_array($EditArr)) { UpdateSubCampaign($EditId, $EditArr); } if (isset($EditId) && $EditId == "new" && isset($EditArr) && ValidId($GrpId)) { CreateNewSubCampaign($GrpId, $EditArr); } if (ValidId($DeleteId)) { DeleteSubCampaign($CpId, $DeleteId); } if (isset($GenCode) && $GenCode == 1) { GenLink(); } if (ValidId($EditCostId) && ValidArr($EditCost)) { UpdateCost($EditCostId, $EditCost); } if (ValidVar($EditCostId) == "new" && ValidArr($EditCost)) { CreateCost($EditCost); } if (ValidVar($UpdateSum) == 1) { UpdateSumThis($SumThis); } if (ValidId($DelCostId)) { DeleteCost($DelCostId);