function GenLink($UrlTO = false, $Keyword = false) { global $_GP, $CampId, $Logs, $Lang, $SplitId, $nsProduct, $UseSSL, $LinkArr; global $AllowCSV, $csv, $Db, $UseRedirect, $SiteId; global $VarCamp, $VarKw, $VarKeyword, $KeyArr; $ExportSep = $Lang['SeparatorValue']; if (!$CampId && !$SplitId) { $Logs->Err($Lang['NeedToChoose']); return; } if ($CampId && !$SplitId) { if (!$UrlTO) { $Logs->Err($Lang['UrlNeeded']); return; } } //if ($UrlTO&&!CheckURLTO($UrlTO)) return false; //if (!$SplitId) $UseSSL=false; if ($UseSSL) { $HL = $nsProduct->HL; $nsProduct->HL = $nsProduct->SSL_LINK; } $Keyword = trim($Keyword); $CSVArr = array(); if ($CampId && $csv) { $CampName = $Db->ReturnValue("SELECT NAME FROM " . PFX . "_tracker_camp_piece WHERE ID = {$CampId}"); } if ($SplitId && $csv) { $SplitName = $Db->ReturnValue("SELECT CP.NAME FROM " . PFX . "_tracker_camp_piece CP WHERE CP.ID = {$SplitId}"); } if ($CampId && !$SplitId) { if (!$UseRedirect) { $Link = ""; $Link .= $UrlTO; if (strpos($Link, "?")) { $Link .= "&"; } else { $Link .= "?"; } $Link .= "{$VarCamp}={$CampId}"; } else { $Link = getURL("campaign", "cid={$CampId}&st={$SiteId}", "track"); $Link .= "&rurl=" . urlencode($UrlTO); } $Keyword = trim(ToLower($Keyword)); $KeyArr = array(); if ($Keyword) { $KeyArr = explode("\n", $Keyword); $KeyArr = array_unique($KeyArr); } $Inx = 0; if (count($KeyArr) > 0) { for ($i = 0; $i < count($KeyArr); $i++) { if (!isset($KeyArr[$i]) || !$KeyArr[$i]) { continue; } $KeyArr[$i] = trim($KeyArr[$i]); $LinkVar = ""; $KeyId = CheckKeyword($KeyArr[$i]); if ($KeyId) { $LinkVar = $Link . "&{$VarKeyword}={$KeyId}"; } $LinkArr[$i] = $LinkVar; if ($csv) { $CSVArr[$Inx]['Link'] = $LinkVar; $CSVArr[$Inx]['Keyword'] = $KeyArr[$i]; $CSVArr[$Inx]['Camp'] = $CampName; } $Inx++; } } else { $Logs->Msg($Link); } } if ($CampId && $SplitId) { $GLOBALS['GLink'] = false; $Id = GetSplitId($SplitId); if (!MOD_R) { $Link = getURL("split", "s={$Id}&{$VarCamp}={$CampId}", "track"); } else { $Link = str_replace(".html", "", getURL("split", "", "track")); $Link .= "/s{$Id}/{$VarCamp}{$CampId}/"; } $Keyword = trim(ToLower($Keyword)); $KeyArr = array(); if ($Keyword) { $KeyArr = explode("\n", $Keyword); $KeyArr = array_unique($KeyArr); } $Inx = 0; if (count($KeyArr) > 0) { for ($i = 0; $i < count($KeyArr); $i++) { if (!isset($KeyArr[$i]) || !$KeyArr[$i]) { continue; } $KeyArr[$i] = trim($KeyArr[$i]); $Keyword = $KeyArr[$i]; $LinkVar = ""; $KeyId = CheckKeyword($Keyword); if ($KeyId && !MOD_R) { $LinkVar = $Link . "&{$VarKeyword}={$KeyId}"; } if ($KeyId && MOD_R) { $LinkVar = $Link . "{$VarKeyword}{$KeyId}/"; } $LinkArr[$i] = $LinkVar; if ($csv) { $CSVArr[$Inx]['Link'] = $LinkVar; $CSVArr[$Inx]['Keyword'] = $KeyArr[$i]; $CSVArr[$Inx]['Split'] = $SplitName; $CSVArr[$Inx]['Camp'] = $CampName; } $Inx++; } } else { $Logs->Msg($Link); } } if ($SplitId && !$CampId) { $GLOBALS['GLink'] = false; $GLOBALS['GKey'] = false; $Id = GetSplitId($SplitId); if (!MOD_R) { $SLink = getURL("split", "s={$Id}", "track"); } else { $SLink = str_replace(".html", "", getURL("split", "", "track")); $SLink .= "/s{$Id}/"; } $Logs->Msg($SLink); } if (ValidArr($KeyArr) && count($KeyArr) > 1) { $AllowCSV = true; } if ($UseSSL) { $nsProduct->HL = $HL; } if ($csv) { $NamesArr['Keyword'] = $Lang['ColumnKey']; $NamesArr['Link'] = $Lang['ColumnLink']; if ($SplitId) { $NamesArr['Split'] = $Lang['ColumnSplit']; } if ($CampId) { $NamesArr['Camp'] = $Lang['ColumnCamp']; } send_file_to_client("links.csv", ExportCsv($CSVArr, $ExportSep, $NamesArr)); } }
function GenLink() { global $_GP, $SubCamp, $Logs, $Lang; if (isset($_GP['Keyword'])) { $Keyword = $_GP['Keyword']; } else { $Keyword = false; } if (isset($_GP['UrlTO'])) { $UrlTO = $_GP['UrlTO']; } else { $UrlTO = false; } $Keyword = ToLower($Keyword); if (!$UrlTO) { $ErrArr['Link'] = $Lang['MustFill']; } if (isset($ErrArr)) { $Logs->Err($Lang['FormErr']); $GLOBALS['ErrArr'] = $ErrArr; return; } $Link = ""; $Link .= $UrlTO; if (strpos($Link, "?")) { $Link .= "&"; } else { $Link .= "?"; } $KeyId = CheckKeyword($Keyword); if ($KeyId) { $Link .= "k={$KeyId}&"; } $Link .= "c=" . $SubCamp->ID; $Logs->Msg($Link); }