$arParams = array('FILE' => $sendfile, 'PATH_TO' => $path_to); $runQueue = array(); $dbr_members = CControllerMember::GetList(array("ID" => "ASC"), $arFilter); while ($ar_member = $dbr_members->Fetch()) { $runQueue[$ar_member["ID"]] = $ar_member["NAME"]; $cnt++; if ($maxSafeCount !== false && $cnt > $maxSafeCount) { $runQueue = array(); break; } } foreach ($runQueue as $memberId => $memberName) { $cnt++; echo BeginNote(); echo "<b><u>" . htmlspecialcharsEx($memberName) . ":</u></b><br>"; $result = CControllerMember::RunCommandWithLog($memberId, " ", $arParams, false, 'sendfile'); if ($result === false) { $e = $APPLICATION->GetException(); echo "Error: " . $e->GetString(); } elseif ($result === "") { echo "OK"; } else { echo nl2br($result); } echo EndNote(); } if ($maxSafeCount !== false && $cnt > $maxSafeCount) { echo BeginNote(); echo GetMessage("CTRLR_UPLOAD_ERR_TOO_MANY_SELECTED"); echo EndNote(); ?>
$cnt++; if ($maxSafeCount !== false && $cnt > $maxSafeCount) { $runQueue = array(); break; } } $cnt_ok = 0; foreach ($runQueue as $memberId => $memberName) { if ($add_task == "Y") { if (CControllerTask::Add(array("TASK_ID" => "REMOTE_COMMAND", "CONTROLLER_MEMBER_ID" => $memberId, "INIT_EXECUTE" => $query))) { $cnt_ok++; } } else { echo BeginNote(); echo "<b><u>" . htmlspecialcharsEx($memberName) . ":</u></b><br>"; $result = CControllerMember::RunCommandWithLog($memberId, $query); if ($result === false) { $e = $APPLICATION->GetException(); echo "Error: " . $e->GetString(); } else { echo nl2br($result); } echo EndNote(); } } if ($maxSafeCount !== false && $cnt > $maxSafeCount) { echo BeginNote(); echo GetMessage("CTRLR_RUN_ERR_TOO_MANY_SELECTED"); echo EndNote(); ?> <script>top.document.getElementById('tr_force').style.display='';</script><?php
public function Execute() { global $DB; if (!CModule::IncludeModule("controller")) { return CBPActivityExecutionStatus::Closed; } if (!CModule::IncludeModule("iblock")) { return CBPActivityExecutionStatus::Closed; } $rootActivity = $this->GetRootActivity(); $documentId = $rootActivity->GetDocumentId(); if ($documentId[0] !== 'iblock' || $documentId[1] !== 'CIBlockDocument' || $documentId[2] <= 0) { return CBPActivityExecutionStatus::Closed; } $arFilter = array("=ACTIVE" => "Y", "=DISCONNECTED" => "N"); if ($this->SitesFilterType == "groups") { if (is_array($this->SitesFilterGroups)) { $arFilter["=CONTROLLER_GROUP_ID"] = $this->SitesFilterGroups; } else { return CBPActivityExecutionStatus::Closed; } } elseif ($this->SitesFilterType == "sites") { if (intval($this->SitesFilterSitesGroup) > 0 && is_array($this->SitesFilterSites)) { $arFilter["=CONTROLLER_GROUP_ID"] = $this->SitesFilterSitesGroup; $arFilter["=ID"] = $this->SitesFilterSites; } else { return CBPActivityExecutionStatus::Closed; } } $rootActivity = $this->GetRootActivity(); $documentId = $rootActivity->GetDocumentId(); $export_file = $this->Export($documentId); if (strlen($export_file) <= 0) { return CBPActivityExecutionStatus::Closed; } $documentService = $this->workflow->GetService("DocumentService"); $document = $documentService->GetDocument($documentId); $arIBlock = CIBlock::GetArrayByID($document["IBLOCK_ID"]); $iblock_type = $arIBlock["IBLOCK_TYPE_ID"]; $query = ' if(version_compare(SM_VERSION, "11.0.10") < 0) { echo "Client main module version >= 11.0.10 is required."; return false; } $charset_to = ' . $this->PHP2PHP(LANG_CHARSET) . '; $export_file = CTempFile::GetDirectoryName()."import.tar.gz"; $iblock_type = ' . $this->PHP2PHP($iblock_type) . '; if(!CModule::IncludeModule("iblock")) { echo "Information block module not installed"; return false; } $iblock_id = CIBlockCMLImport::GetIBlockByXML_ID(' . $this->PHP2PHP($arIBlock['XML_ID']) . '); if(!$iblock_id) { $rsType = CIBlockType::GetByID($iblock_type); if(!$rsType->Fetch()) { echo "Information block type not found: $iblock_type"; return false; } } CheckDirPath($export_file); file_put_contents($export_file, base64_decode("' . base64_encode(file_get_contents($export_file)) . '")); if(!file_exists($export_file) || !is_file($export_file)) { echo "Can not create file: ".$export_file; return false; } $USER->Authorize(1); $USER->SetControllerAdmin(true); $res = ImportXMLFile($export_file, $iblock_type, false, "N", "N", true, false, true, true); if($res !== true) { echo $APPLICATION->ConvertCharset($res, LANG_CHARSET, $charset_to); return false; } return true; '; $rsMembers = CControllerMember::GetList(array("ID" => "ASC"), $arFilter); if ($this->SyncTime == "task") { while ($arMember = $rsMembers->Fetch()) { CControllerTask::Add(array("TASK_ID" => "REMOTE_COMMAND", "CONTROLLER_MEMBER_ID" => $arMember["ID"], "INIT_EXECUTE" => $query)); } } else { while ($arMember = $rsMembers->Fetch()) { CControllerMember::RunCommandWithLog($arMember["ID"], $query, array(), false, 'run_immediate'); } } return CBPActivityExecutionStatus::Closed; }
$arFilter[0]["NAME"] = $arFilterNAME; } } } $cnt_ok = 0; $dbr_members = CControllerMember::GetList(array("ID" => "ASC"), $arFilter); while ($ar_member = $dbr_members->GetNext()) { $cnt++; if ($add_task == "Y") { if (CControllerTask::Add(array("TASK_ID" => "REMOTE_COMMAND", "CONTROLLER_MEMBER_ID" => $ar_member["ID"], "INIT_EXECUTE" => $query))) { $cnt_ok++; } } else { echo BeginNote(); echo "<b><u>" . $ar_member["NAME"] . ":</u></b><br>"; $result = CControllerMember::RunCommandWithLog($ar_member["ID"], $query); if ($result === false) { $e = $APPLICATION->GetException(); echo "Error: " . $e->GetString(); } else { echo nl2br($result); } echo EndNote(); } } if ($cnt <= 0) { echo BeginNote(); echo GetMessage("CTRLR_RUN_ERR_NSELECTED"); echo EndNote(); } if ($add_task == "Y") {