- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/Service/WebForm/WebFormScenarioService.php
- Класс: Bitrix\Crm\Service\WebForm\WebFormScenarioService
- Вызов: WebFormScenarioService::prepareProductsScenario
private function prepareProductsScenario(
BaseScenario $baseScenario,
bool $bigPic = false,
int $schema = Entity::ENUM_ENTITY_SCHEME_DEAL,
bool $usePayment = false,
string $title = null
): BaseScenario
{
$optionScenario = (new ScenarioOptionBuilder())
->addAgreements(true)
->addCaptcha(true)
->addRecaptcha()
->addFields([
['name' => 'CONTACT_NAME', 'autocomplete' => true, 'required'=> true],
['name' => 'CONTACT_PHONE', 'autocomplete' => true, 'required'=> true],
['name' => 'CONTACT_EMAIL','autocomplete' => true, 'required'=> false ],
['type' => 'product', 'bigPic' => $bigPic,],
])
->usePayment($usePayment)
->addDocumentScheme($schema)
;
$this->prepareDealAndResponsibilitiesConfiguration($optionScenario, false);
return $baseScenario->setCategory(ScenarioCategory::PRODUCTS)
->setCreateDateInTitle(true)
->prepareBuilder($optionScenario)
->setExpertModeMenuItems($this->getExpertModeDefaultItems())
->setMenuItems([
ScenarioMenuItem::FIELDS['id'],
ScenarioMenuItem::AGREEMENTS['id'],
ScenarioMenuItem::CRM['id'],
ScenarioMenuItem::PAY_SYSTEMS['id'],
ScenarioMenuItem::DESIGN['id'],
ScenarioMenuItem::OTHER['id'],
])
->setTitle($title)
;
}