function PreGenerateExport($profile_id) { global $DB; $profile_id = intval($profile_id); if ($profile_id <= 0) { return false; } $ar_profile = CCatalogExport::GetByID($profile_id); if (!$ar_profile || 'Y' == $ar_profile['NEED_EDIT']) { return false; } if ($ar_profile["DEFAULT_PROFILE"] != "Y") { parse_str($ar_profile["SETUP_VARS"]); } CCatalogDiscountSave::Disable(); $strFile = CATALOG_PATH2EXPORTS . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { $strFile = CATALOG_PATH2EXPORTS_DEF . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { return false; } } @(include $_SERVER["DOCUMENT_ROOT"] . $strFile); CCatalogDiscountSave::Enable(); CCatalogExport::Update($profile_id, array("=LAST_USE" => $DB->GetNowFunction())); return "CCatalogExport::PreGenerateExport(" . $profile_id . ");"; }
die('No defined site - $siteID'); } require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"; if (!defined(LANGUAGE_ID) || preg_match('/^[a-z]{2}$/i', LANGUAGE_ID) !== 1) { die('Language id is absent - defined site is bad'); } set_time_limit(0); if (CModule::IncludeModule("catalog")) { $profile_id = 0; if (isset($argv[1])) { $profile_id = (int) $argv[1]; } if ($profile_id <= 0) { die('No profile id'); } $ar_profile = CCatalogExport::GetByID($profile_id); if (!$ar_profile) { die("No profile"); } $strFile = CATALOG_PATH2EXPORTS . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { $strFile = CATALOG_PATH2EXPORTS_DEF . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { die("No export script"); } } $bFirstLoadStep = true; $arSetupVars = array(); $intSetupVarsCount = 0; if ($ar_profile["DEFAULT_PROFILE"] != 'Y') { parse_str($ar_profile["SETUP_VARS"], $arSetupVars);
LocalRedirect($APPLICATION->GetCurPage() . "?lang=" . urlencode(LANGUAGE_ID) . "&success_export=Y"); } } elseif (($_REQUEST["ACTION"] == "EXPORT_EDIT" || $_REQUEST['ACTION'] == 'EXPORT_COPY') && $bCanEdit) { $boolFlag = true; if (!isset($_REQUEST['PROFILE_ID'])) { $strErrorMessage .= GetMessage('CES_EDIT_PROFILE_ERR_ID_ABSENT') . "\n"; $boolFlag = false; } else { $PROFILE_ID = intval($_REQUEST['PROFILE_ID']); if ($PROFILE_ID <= 0) { $strErrorMessage .= GetMessage('CES_EDIT_PROFILE_ERR_ID_ABSENT') . "\n"; $boolFlag = false; } } if ($boolFlag) { $arProfile = CCatalogExport::GetByID($PROFILE_ID); if ($arProfile) { if ($arProfile["DEFAULT_PROFILE"] == "Y") { $strErrorMessage .= ($_REQUEST["ACTION"] == "EXPORT_EDIT" ? GetMessage('CES_EDIT_PROFILE_ERR_DEFAULT') : GetMessage('CES_COPY_PROFILE_ERR_DEFAULT')) . "\n"; $boolFlag = false; } } else { $strErrorMessage .= ($_REQUEST["ACTION"] == "EXPORT_EDIT" ? GetMessage('CES_EDIT_PROFILE_ERR_DEFAULT') : GetMessage('CES_COPY_PROFILE_ERR_DEFAULT')) . "\n"; $boolFlag = false; } } if ($boolFlag) { if (strlen($arReportsList[$arProfile['FILE_NAME']]["FILE_SETUP"]) > 0) { $STEP = intval($_REQUEST["STEP"]); if (isset($_POST['backButton'])) { $STEP -= 2;
public static function PreGenerateExport($profile_id) { global $DB; $profile_id = (int) $profile_id; if ($profile_id <= 0) { return false; } $ar_profile = CCatalogExport::GetByID($profile_id); if (!$ar_profile || 'Y' == $ar_profile['NEED_EDIT']) { return false; } $strFile = CATALOG_PATH2EXPORTS . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { $strFile = CATALOG_PATH2EXPORTS_DEF . $ar_profile["FILE_NAME"] . "_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"] . $strFile)) { return false; } } $arSetupVars = array(); $intSetupVarsCount = 0; if ('Y' != $ar_profile["DEFAULT_PROFILE"]) { parse_str($ar_profile["SETUP_VARS"], $arSetupVars); if (!empty($arSetupVars) && is_array($arSetupVars)) { $intSetupVarsCount = extract($arSetupVars, EXTR_SKIP); } } global $arCatalogAvailProdFields; $arCatalogAvailProdFields = CCatalogCSVSettings::getSettingsFields(CCatalogCSVSettings::FIELDS_ELEMENT); global $arCatalogAvailPriceFields; $arCatalogAvailPriceFields = CCatalogCSVSettings::getSettingsFields(CCatalogCSVSettings::FIELDS_CATALOG); global $arCatalogAvailValueFields; $arCatalogAvailValueFields = CCatalogCSVSettings::getSettingsFields(CCatalogCSVSettings::FIELDS_PRICE); global $arCatalogAvailQuantityFields; $arCatalogAvailQuantityFields = CCatalogCSVSettings::getSettingsFields(CCatalogCSVSettings::FIELDS_PRICE_EXT); global $arCatalogAvailGroupFields; $arCatalogAvailGroupFields = CCatalogCSVSettings::getSettingsFields(CCatalogCSVSettings::FIELDS_SECTION); global $defCatalogAvailProdFields; $defCatalogAvailProdFields = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_ELEMENT); global $defCatalogAvailPriceFields; $defCatalogAvailPriceFields = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_CATALOG); global $defCatalogAvailValueFields; $defCatalogAvailValueFields = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_PRICE); global $defCatalogAvailQuantityFields; $defCatalogAvailQuantityFields = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_PRICE_EXT); global $defCatalogAvailGroupFields; $defCatalogAvailGroupFields = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_SECTION); global $defCatalogAvailCurrencies; $defCatalogAvailCurrencies = CCatalogCSVSettings::getDefaultSettings(CCatalogCSVSettings::FIELDS_CURRENCY); CCatalogDiscountSave::Disable(); include $_SERVER["DOCUMENT_ROOT"] . $strFile; CCatalogDiscountSave::Enable(); CCatalogExport::Update($profile_id, array("=LAST_USE" => $DB->GetNowFunction())); return "CCatalogExport::PreGenerateExport(" . $profile_id . ");"; }
/** * <p>Метод выполняет профиль <i>profile_id</i> на агенте.</p> * * * * * @param int $profile_id Код выполняемого профиля. * * * * @return mixed <p>В случае успешного выполнения профиля экспорта метод * возвращает строку для следующего вызова агента. В противном * случае метод вернет <i>false</i>.</p><br><br> * * @static * @link http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogexport/pregenerateexport.php * @author Bitrix */ public static function PreGenerateExport($profile_id) { global $DB; $profile_id = intval($profile_id); if ($profile_id<=0) return false; $ar_profile = CCatalogExport::GetByID($profile_id); if ((!$ar_profile) || ('Y' == $ar_profile['NEED_EDIT'])) return false; $strFile = CATALOG_PATH2EXPORTS.$ar_profile["FILE_NAME"]."_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"].$strFile)) { $strFile = CATALOG_PATH2EXPORTS_DEF.$ar_profile["FILE_NAME"]."_run.php"; if (!file_exists($_SERVER["DOCUMENT_ROOT"].$strFile)) { return false; } } $arSetupVars = array(); $intSetupVarsCount = 0; if ('Y' != $ar_profile["DEFAULT_PROFILE"]) { parse_str($ar_profile["SETUP_VARS"], $arSetupVars); if (!empty($arSetupVars) && is_array($arSetupVars)) { $intSetupVarsCount = extract($arSetupVars, EXTR_SKIP); } } CCatalogDiscountSave::Disable(); include($_SERVER["DOCUMENT_ROOT"].$strFile); CCatalogDiscountSave::Enable(); CCatalogExport::Update($profile_id, array( "=LAST_USE" => $DB->GetNowFunction() ) ); return "CCatalogExport::PreGenerateExport(".$profile_id.");"; }