function SortTable($Table, $ByField = false, $Id, $To, $Where = false) { if (!$Table || !$Id || !$To) { return false; } if ($To != "Up" && $To != "Down") { return false; } global $Db; if (!$ByField) { $ByField = "POSITION"; } if ($Where) { $WhereStr = " AND " . $Where; } else { $WhereStr = ""; } $Query = "SELECT ID, {$ByField} FROM {$Table} WHERE ID = {$Id}"; $El1 = $Db->Select($Query); if ($To == "Up") { $Pos2 = $El1->POSITION - 1; } if ($To == "Down") { $Pos2 = $El1->POSITION + 1; } $Query = "SELECT ID, {$ByField} FROM {$Table} WHERE POSITION = " . $Pos2 . " {$WhereStr}"; $El2 = $Db->Select($Query); $Query = "UPDATE {$Table} SET {$ByField} = " . $Pos2 . " WHERE ID = " . $El1->ID . ""; $Db->Query($Query); $Query = "UPDATE {$Table} SET {$ByField} = " . $El1->POSITION . " WHERE ID = " . $El2->ID . ""; $Db->Query($Query); ResortTable($Table, $ByField, $Where); }
function MoveCampaign($MoveId, $MoveTo) { global $Db, $nsProduct; $Parent1 = $Db->ReturnValue("SELECT PARENT_ID FROM " . PFX . "_tracker_campaign WHERE ID = {$MoveId}"); if ($MoveTo > 0) { $Parent2 = $Db->ReturnValue("SELECT PARENT_ID FROM " . PFX . "_tracker_campaign WHERE ID = {$MoveTo}"); } else { $Parent2 = 0; } $Query = "UPDATE " . PFX . "_tracker_campaign SET PARENT_ID = {$MoveTo} WHERE ID = {$MoveId}"; $Db->Query($Query); ResortTable(PFX . "_tracker_campaign", "POSITION", "PARENT_ID={$Parent1}"); ResortTable(PFX . "_tracker_campaign", "POSITION", "PARENT_ID={$Parent2}"); $nsProduct->Redir("campaign"); }
function CreateNewSubCampaign($GrpId, &$Arr) { global $Db, $Logs, $nsProduct, $Lang, $CurrentCompany; extract($Arr); if (!$Name) { $ErrArr['Name'] = $Lang['MustFill']; } if (!ValidVar($Type)) { $Type = 0; } if (isset($ErrArr)) { $Logs->Err($Lang['FormErr']); $GLOBALS['ErrArr'] = $ErrArr; return; } $CompId = $CurrentCompany->ID; $Query = "SELECT ID FROM " . PFX . "_tracker_sub_campaign WHERE SRC_ID != '' AND SRC_ID='" . escape_string($SrcId) . "'"; $CheckId = $Db->ReturnValue($Query); if ($CheckId) { $Logs->Err($Lang['UniSrc']); return; } $Query = "INSERT INTO " . PFX . "_tracker_camp_piece (CAMPAIGN_ID, NAME, DESCRIPTION, COMPANY_ID) VALUES ({$GrpId}, ?, ?, {$CompId})"; $Db->Query($Query, $Name, $Descr); $NewId = $Db->LastInsertId; $Query = "INSERT INTO " . PFX . "_tracker_sub_campaign (SUB_ID, TYPE, SRC_ID) VALUES ({$NewId}, '{$Type}', ?)"; $Db->Query($Query, $SrcId); ResortTable(PFX . "_tracker_camp_piece", "POSITION", "CAMPAIGN_ID={$GrpId}"); $nsProduct->Redir("sub_camp", "RCrt=1&EditId={$NewId}"); }