Андрей
Сам лексикон должен лежать в core/components/babel/lexicon/en - где en нужный язык
Sentinel
Куда закинуть?
Это подгрузка лексикона в шаблоне
ᛟᛗᛖᚾ
Всем доброго вечер! Подскажите, а можно ли как-то расширить getImageList ? У меня есть потребность в tplOdd, прокатит такой вариант если я пропишу его в снипите getImageList?
Zenno
Парни, всем доброго ✊ Можно небольшой ликбез? Обновлялся до версии modx 3.0.1 появилась проблема с кириллицей. Решил откатом на 2.8.4 и возвращением php 7.0. После этого восстановился бэкапом, который снял перед всеми этими манипуляциями. Теперь сайт доступен, если полность вернуть все файлы, включая кеш. Однако не выводятся ресурсы, которые выгружались через pdo tools (новости, список документов и т.д.). Решал эту проблему обновлением pdotools в админке, но сейчас не могу авторизоваться - пишет "неверный пользователь или пароль". Пароль меняю через базу - не помогает. Попытка снести папку core -> cache приводит к красной табличке с надписью "site temporary unavaliable"... приходится возвращать кеш назад. Насколько мне известно, сайт пару лет назад попал под раздачу через уязвимость в gallery, но раньше худо-бедно работал... Нервно курю, вороша в голове свои скудные знания modx, в надежде на волшебный совет 😔
Степан
Парни, всем доброго ✊ Можно небольшой ликбез? Обновлялся до версии modx 3.0.1 появилась проблема с кириллицей. Решил откатом на 2.8.4 и возвращением php 7.0. После этого восстановился бэкапом, который снял перед всеми этими манипуляциями. Теперь сайт доступен, если полность вернуть все файлы, включая кеш. Однако не выводятся ресурсы, которые выгружались через pdo tools (новости, список документов и т.д.). Решал эту проблему обновлением pdotools в админке, но сейчас не могу авторизоваться - пишет "неверный пользователь или пароль". Пароль меняю через базу - не помогает. Попытка снести папку core -> cache приводит к красной табличке с надписью "site temporary unavaliable"... приходится возвращать кеш назад. Насколько мне известно, сайт пару лет назад попал под раздачу через уязвимость в gallery, но раньше худо-бедно работал... Нервно курю, вороша в голове свои скудные знания modx, в надежде на волшебный совет 😔
кешь удаляйте и смотрите конфиги 99%
Степан
но в принципе я не думаю что дайнгрейд вам поможет
Степан
только если есть бекап и оттуда дергать файлы
Zenno
Можете подсказать, на что в конфигах обратить внимание?
Степан
Можете подсказать, на что в конфигах обратить внимание?
хм там все нужно смотрите ошибки 5** в php
Степан
там все есть
Zenno
Спасибо ) буду корпеть 🤝
Степан
если хостинг на бегет php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off php_flag log_errors on php_flag ignore_repeated_errors off php_flag ignore_repeated_source off php_flag report_memleaks on php_flag track_errors on php_value docref_root 0 php_value docref_ext 0 php_value error_log PHP_errors.log php_value error_reporting 2047 php_value log_errors_max_len 0 <Files PHP_errors.log> Order allow,deny Deny from all Satisfy All </Files>
Степан
в .htaccess
Степан
да и в принципе на любом просто не на всех включены логи php
Zenno
Хостинг jino
Степан
да тоже сойдет
Алексей
Всем доброго вечер! Подскажите, а можно ли как-то расширить getImageList ? У меня есть потребность в tplOdd, прокатит такой вариант если я пропишу его в снипите getImageList?
посмотрите доку по сниппету этому. помоему там был параметр четные-нечетные. или как написали через условие в чанке.
Sentinel
через pdoResources можно попробовать, json
Sentinel
или накаТать свой сниппет 😉
Alexey
Люди добрые! А не подскажете, можно ли при вызове метода $miniShop2->order->submit(); сказать скрипту, чтобы он письма не отправлял?
Alexey
можно подсунуть несуществующие адреса, но как-то по-людски хочется)))
Alexey
А чо, так можно?)
Артур
А чо, так можно?)
Да, а ты не знал?)
Alexey
спасип, не знал. Я же эвист)
Евгений
спасип, не знал. Я же эвист)
ну хоть интерфейс протыкай, по системным настройкам пройдись, там делов на пару минут
Alexey
да я нашел, просто не знал что в интерфейсе есть, думал через api
Евгений
да я нашел, просто не знал что в интерфейсе есть, думал через api
запросы по api можно оформить в исушку на гитхабе, Коля сделает) )
Alexey
да ладно, думаю в мире не так много извращенцев, которым это надо)
Павел
Всем привет. Делал кто интеграцию с amoCRM? Не могу решить задачу. Делаю интеграцию с новой версией api v4. Все вроде бы сделал. При создании сделки я указываю id определенного столбика воронки, но сделка все равно падает не туда. Мб кто сталкивался с данной проблемой?
Павел
Мне нужно, чтобы при отправке формы создавались сделки в amoCRM в определенном столбике воронки
Николай
Мне нужно, чтобы при отправке формы создавались сделки в amoCRM в определенном столбике воронки
В статусе. Столбики там статусы называются. Ты случайно не в "Неразобранное" кидаешь заявку? Просто этот статус зарезервирован и через API нельзя туда заявки ложить
Павел
А как тогда поступить? Есть решение данной проблемы?
Николай
Попробуй для эксперимента в отдельную кастомную колонку
Николай
А как тогда поступить? Есть решение данной проблемы?
Ну другую колонку создать. Не системную.
Павел
Не все равно падает в просчёт
Павел
В другой статус
Павел
Вообще не реагирует никак на id в коде
Николай
Покажешь код запроса?
Павел
Как код лучше кинуть? Фото?
Николай
Или лучше распечатанный массив отправляемых данных
Николай
я сравню со своими наработками
Николай
Павел
Павел
Павел
Павел
Павел
Конечно не очень мб будет понятно, но только такая возможность есть))
Николай
О господи
Николай
А нельзя скопировать код и текстом прислать. Или скриншот сделать
Павел
Сейчас тогда на рабочий компьютер поставлю телегу
Николай
Я вообще в этом коде не вижу указанный ID воронки и ID статуса
Павел
<?php $name = $hook->getValue('name'); $company = $hook->getValue('company'); $phone = $hook->getValue('tel'); $email = $hook->getValue('email'); //$text = $hook->getValue('text'); $subdomain = 'tekotto'; //Поддомен нужного аккаунта $access_token = $modx->getOption('access_token'); $headers = [ 'Authorization: Bearer ' . $access_token ]; $contactsUrl = 'https://'.$subdomain.'.amocrm.ru/api/v4/contacts'; // контакт $contacts = array( array( 'name' => $name, "custom_fields_values" => array( array( 'field_id' => 73869, 'field_name' => 'Телефон', 'values' => array( array( 'value' => $phone, 'enum_code' => 'WORK', ) ) ), array( 'field_id' => 73871, 'field_name' => 'Email', 'values' => array( array ( 'value' => $email, 'enum_code' => 'WORK', ) ) ), ) ), ); $curl = curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_USERAGENT, "amoCRM-API-client/1.0"); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($contacts)); curl_setopt($curl, CURLOPT_URL, $contactsUrl); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl,CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); curl_setopt($curl,CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); $out = curl_exec($curl); curl_close($curl); $result = json_decode($out, true); $contact_id = $result['_embedded']['contacts']['0']['id']; //var_dump($result); $companiesUrl = 'https://'.$subdomain.'.amocrm.ru/api/v4/companies'; // компании $companies = array( array( 'name' => $company, "custom_fields_values" => array( array( 'field_id' => 73869, 'field_name' => 'Телефон', 'values' => array( array( 'value' => $phone, 'enum_code' => 'WORK', ) ) ), array( 'field_id' => 73871, 'field_name' => 'Email', 'values' => array( array ( 'value' => $email, 'enum_code' => 'WORK', ) ) ), ) ), ); $curl = curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_USERAGENT, "amoCRM-API-client/1.0"); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($companies)); curl_setopt($curl, CURLOPT_URL, $companiesUrl); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl,CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); curl_setopt($curl,CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); $out = curl_exec($curl); curl_close($curl); $result = json_decode($out, true); $companies_id = $result['_embedded']['companies']['0']['id']; $leadsUrl = 'https://'.$subdomain.'.amocrm.ru/api/v4/leads'; // сделки $lead = array( array( 'name' => 'Заявка с сайта(Тест)', 'status_id '=> 48871798, 'pipeline_id' => 2215348, 'created_by' => 0, '_embedded' => array( 'contacts' => array( '0' => array( 'id' => $contact_id, ) ), 'companies' => array( '0' => array( 'id' => $companies_id, ) ) ), ), ); $curl =
Павел
curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_USERAGENT, "amoCRM-API-client/1.0"); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($lead)); curl_setopt($curl, CURLOPT_URL, $leadsUrl); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl,CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); curl_setopt($curl,CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT']."/cookie.txt"); $out = curl_exec($curl); curl_close($curl); $result2 = json_decode($out, true); //var_dump($result2);
Павел
array(2) { ["_links"]=> array(1) { ["self"]=> array(1) { ["href"]=> string(41) "https://tekotto.amocrm.ru/api/v4/contacts" } } ["_embedded"]=> array(1) { ["contacts"]=> array(1) { [0]=> array(5) { ["id"]=> int(25594725) ["is_deleted"]=> bool(false) ["is_unsorted"]=> bool(false) ["request_id"]=> string(1) "0" ["_links"]=> array(1) { ["self"]=> array(1) { ["href"]=> string(50) "https://tekotto.amocrm.ru/api/v4/contacts/25594725" } } } } } } array(2) { ["_links"]=> array(1) { ["self"]=> array(1) { ["href"]=> string(42) "https://tekotto.amocrm.ru/api/v4/companies" } } ["_embedded"]=> array(1) { ["companies"]=> array(1) { [0]=> array(4) { ["id"]=> int(25594727) ["is_deleted"]=> bool(false) ["request_id"]=> string(1) "0" ["_links"]=> array(1) { ["self"]=> array(1) { ["href"]=> string(51) "https://tekotto.amocrm.ru/api/v4/companies/25594727" } } } } } } array(5) { ["validation-errors"]=> array(1) { [0]=> array(2) { ["request_id"]=> string(1) "0" ["errors"]=> array(1) { [0]=> array(3) { ["code"]=> string(11) "NotNullable" ["path"]=> string(24) "_embedded.companies.0.id" ["detail"]=> string(30) "This value should not be null." } } } } ["title"]=> string(11) "Bad Request" ["type"]=> string(25) "https://httpstatus.es/400" ["status"]=> int(400) ["detail"]=> string(25) "Request validation failed" } 1
Павел
код
Павел
ответ
Павел
Разве не тут я указываю id? $lead = array( array( 'name' => 'Заявка с сайта(Тест)', 'status_id '=> 48871798, 'pipeline_id' => 2215348,
Павел
pipeline_id воронка status_id статус
Павел
Вот воронка http://joxi.ru/zANPZGat17Kkwm
Николай
Код желательно помечать вот так
Павел
Не знал, теперь буду знать
Николай
Так у тебя заявка создается все таки? Просто судя по ответу запрос не проходит валидацию
Павел
Создается
Павел
Возможно поторопился и что-то забыл вернуть
Павел
из-за этого в конце 400 выдает, а так все создается
Павел
И сделка и контакт и компания
Roman
Мне нужно, чтобы при отправке формы создавались сделки в amoCRM в определенном столбике воронки
POST /api/v4/leads pipeline_id — ID воронки, в которую добавляется сделка. Поле не является обязательным
Николай
Не мешало бы разобраться с этим, чтобы точно исключить ошибку. Тем более там в ответе написано чего не хватает для счастья. А по существу - запрос правильный. Ты точно не ошибся с ID ? Может собака неглубоко зарыта?
Николай
POST /api/v4/leads pipeline_id — ID воронки, в которую добавляется сделка. Поле не является обязательным
Верно. И статус тоже не обязателен. Без них лид садится в воронку и статус по умолчанию