В прошлом мае мы уже получили заряд адреналина от нового обмена. Но к этому заряду добавилась еще одна неприятненькая иньекия
Раньше было так: 1. Существовал скрипт тестирования обмена 2. Вся информация о последнем обмене была доступна "в одном пакете" и легко было проанализировать XML
При вводе в эксплуатацию нового обмена мы потеряли эту связку.
Что то за эти революционные полгода изменилось в данном отношении?
Хочется получить ответ в виде:
по первому пункту есть такое то, по второму пункту есть такое то.
Либо, если этого нет, то потенциальный вопрос на конференцию, когда это будет?
Коллеги, прошу поддержать идею о как можно более быстром создании полноценного раздела ВАКАНСИИ на сайте разработчиков Битрикс.
Это нужно даже не вчера, а много лет назад.
Прошу коллег из Битрикс, наконец, принять мнение партнеров и помочь реально, вместо того, чтобы только задавать вопросы в партнерских анкетах и не зацикливаться лишь на "академии"
Ринулся тут продлить несколько доменов. Как всегда, закинул в корзину в панели Мастерхоста, и вот те на — выставили счет по 413 рублей за каждый домен. Как же так, спрашиваю их. Отвечают, мол акция кончилась, теперь платим по полной. Но почему у вас вот такое горит тогда?
А. ну тут по старинке, отвечает. Мол если автопродление, действует старая цена. Сколько такое продлится — пока непонятно, но я галочки активировал, жду халявного продления. По регламенту списание произойдет за неделю до окончания срока действия. Полный текст .
Не уверен, что будет время доводить до ума одну разработку, поэтому выкладываю её в сыром виде "как есть". Не смотря на это она должна представлять академический интерес.
О чём речь? Речь о том, чтобы сделать платформонезависимые утилиты для Битрикса, помогающие в разработке. И о том, чтобы интегрировать их в любимую среду (в её роли выступает phpStorm).
В результате получаем что-то вроде такого:
Кроме генерации параметров, эта штука умеет выделять языковые файлы, сканируя компонент и экономить этим изрядное время и нервы. Подробнее посмотреть, скачать, пощупать и попытаться (если есть много времени) завести у себя .
Уже давненько на МП запрещено явное указание скидок при покупке модулей и решений не на МП Однако я только за этот мес как минимум на два-три натолкнулся (как решения, так и модули), предлагающие купить Битрикс у них, и за это будет счастье.
Вот, например свежачок из новинок. С пылу, с жару, но уже мимо кассы ползет , как заправский партизан. есть предложение ко всем нам Давайте будем хоть как-то соблюдать хоть какие-то правила, а не играть в игрушки "авось пронесет" Ну не доводите Денис до греха
Предисловие, пригодится если вам необходимо создать набор элементов исключительно из картинок. И повезло мне сделать сайт для одного человека замечательного как фотографа, но ленивого, как контент-менеджера. Лень было загружать каждую фотографию, как отдельный элемент - фотографий-то много. Поставил этот замечательный модуль... но не работает, то есть визуально всё выглядит так, будто новые фотографии-элементы загружены, но по факту их нет. Внедрение логов показало следующую ошибку, при добавлении элементов:
Error: Файл не является графическим. Картинка для анонса: Не графический файл.
Выясняется, что все загружаемые файлы превращаются в какой-то битый набор символов. При чем, загруженный файл становится вдвое больше оригинала. 10 минут в гугле по теме бинарной загрузки файлов привели к следующему решению с сайта , спасибо им огромное за то что поделились решением. Итак, нужно отредактировать файл: /bitrix/js/igima.imagetoelement/igima_image_to_element_main.js
// http://www.15web.ru/blog/html5-upload
// Пилюля от слабоумия для Chrome, который гад портит файлы в процессе загрузки.
if (!XMLHttpRequest.prototype.sendAsBinary) {
XMLHttpRequest.prototype.sendAsBinary = function(datastr) {
function byteValue(x) {
return x.charCodeAt(0) & 0xff;
}
var ords = Array.prototype.map.call(datastr, byteValue);
var ui8a = new Uint8Array(ords);
this.send(ui8a.buffer);
}
}
После каждого обновления кор.портала приходится исправлять неправильное выставление счетов. Ошибка заключается в смещении места печати и размеров подписи - она в нашем случае квадратная и не получается добиться соотношения 4:1. Получается примерно так:
Судя по коду формирования PDF, эти вещи не планировалось делать редактируемыми, поэтому приходится править сразу в файле модуля, а обновляться реже. Файл находится здесь: /bitrix/modules/sale/ru/payment/bill/pdf.php
Здесь можно поправить соотношение размеров для подписи(1) и отступ сверху(2):
А здесь можно поправить отступ для печати:
P.S. Редактировать файлы модуля нехорошо и всё это один большой вредный совет, но сделать иначе я возможности не нашел и ситуация с формированием PDF не меняется уже где-то года полтора.
В начале 2014 года для одного клиента мы делали индивидуальное решение для трекинга почтовых отправлений. Главной проблемой стало то, что ни один существующий сервис не предоставлял доступа к требуемым нам транспортным компаниям. Подавляющее большинство использовало связку Почта России и EMS. Поэтому в принципе пришлось писать все свое. Бонусом прикрутили SMSоповещение клиентов. Как итог клиенту мы сдали работающий модуль – он доволен, его клиенты довольны и конечно довольны мы, получив бесценный опыт по интеграции с различными транспортными компаниями.
Из данного модуля родилась идея создания , который бы включал максимальное количество транспортных компаний. Самым сложным в проекте стало то, что не все транспортные компании захотели предоставить доступ к своим API, а у некоторых его просто не оказалось. Мы не сторонники парсить странички, поэтому пока отложили эти компании в копилку TODO.
Итак, на данный момент мы поддерживаем 6 транспортных компаний – Почта России, EMS, СПСР Экспресс, СДЭК, ПЭК и Энергия.
Сам сервис мы развернули на платформе 1С-Битрикс: Управление сайтом в редакции Бизнес веб-кластер. Настроили кластеризацию, завернули все в красивую картинку и приготовились к выпуску на рынок.
Так же мы продумали тарифы для пользователей сервисом, и кое-что есть только у нас – безлимитный тариф! Всего за 1000 рублей в месяц можно отслеживать неограниченное количество треков одного магазина одновременно. В тарифные планы мы не стали включать SMS, а вынесли их в отдельные пакеты, которые не оффсетятся и не сгорают, если их не использовать за месяц. Тарифы и пакеты SMSможно настроить на автоматическое продление.
Для разработчиков мы , которое по нашим оценкам должно покрыть все основные потребности в организации трекинга отправленных посылок. И как итог мы создали для 1С-Битрикс, который содержит в себе два компонента (список треков, с возможностью фильтрации по id пользователя и подробная информация о треке с фильтром по трек коду), гаджет на рабочий стол и раздел статистики сервиса.
Что мы планируем в этом году:
Сделать индивидуальные шаблоны для информирования клиентов по SMS/E-Mail
Расширить список транспортных компаний, мы попытались подключить всех, до кого могли дотянуться, но переговоры со многими компаниями просто зашли в тупик на стадии «А есть ли у вашего сервиса какое-то API для отслеживания отправлений»
Развивать сервис и модуль в сторону большего удобства для клиентов, фидбек очень приветствуется.
Запустить аффилиатскую программу для партнеров (пока с этим много сложностей с юридической стороной вопроса, ищем взаимовыгодные варианты)
PS: Мы готовы дать разработчикам демо-доступ на месяц, для того чтобы вы могли оценить возможности нашего сервиса и рекомендовать его клиентам. Так же нам очень интересно сотрудничество с компаниями которые продают тиражные интернет магазины, по включению нашего модуля в поставку решения.
Написал модуль для автоматической генерации спрайтов. Пока не выкладывал, сделаю это завтра, на свежую голову, тем более там все равно модерация несколько недель идет.
А сейчас хочу показать как можно будет использовать этот модуль и что он дает. Итак, у нас есть страница с разделами каталога, каждый представлен картинкой и текстом - в сумме около 40 картинок,
Соответственно процесс загрузки страницы выглядит примерно так:
Это ооочень много запросов и всегда очень хотелось изменить эту ситуацию. И вот день настал, вот так выглядит загрузка сейчас (страница выглядит абсолютно также):
Не смотря на то, что страница выросла в размере, кол-во запрашиваемых ресурсов резко сократилось и мне кажется, что это хорошо.
Для такого результата дорабатывается result_modifier.php и template.php шаблона компонента:
Многие партнеры знают наш проект запущенный в 2012 году и .
Мы старательно развиваем проект уже 3 года ежемесячно выпуская обновления и добавляя новый функционал. Решение получилось очень функциональным технически во многом не уступающее, а в чем-то даже превосходящее лидирующие российские интернет-магазины, что позволяет нашим клиентам получить быстрый и бюджетный старт в сети Интернет. Благодаря этому в настоящий момент проект имеет уже более 50 активных внедрений в России, Украине, Белоруссии, Армении, Молдавии, Казахстане, среди которых интернет-магазины: Hewlett Packard, Цифроград, Samsung и другие известные компании.
Но, прогресс не стоит на месте — в последние годы в дизайне появились новые актуальные тренды: на смену скевоморфизму пришёл флэтдизайн (плоский дизайн), а в результате стремительного развития смартфонов и планшетов очень важной стала адаптивность вёрстки (автоматически подстраивается под смартфоны и планшеты). И хотя в функциональном плане решение у нас очень сильное, мы понимаем, что его внешний вид пора обновить. По этому мы начали разработку новой ветки — Битроник 2.0!
Битроник 2.0 — это новая линейка интернет-магазинов цифровой, бытовой техники, гаджетов и прочей электроники и оборудования! Будет доступна в редакциях: PRO (цена и наличие зависят от выбранного города) и LITE (работает даже на редакции "Старт".)
В настоящий момент мы уже полностью завершили этап проектирования и этап дизайна. Что можно утверждать уже сейчас — наш Битроник сильно помолодел! Мы нарисовали всё-всё-всё: все до одной формы и всплывашки, мобильную версию для нескольких разрешений, UI (пользовательские интерфейсы), 12 цветовых схем для "скево" + 12 для "флэта" (можно будет переключать в панели настройки.) Это был титанический труд. всего у дизайнера получилось более 100 макетов!!!
Вот так теперь выглядит главная страница интернет-магазина: в розовой цветовой схеме в "скево" и в голубой во "флэте" (размер картинок очень большой, а увеличительного стекла в этих блогах нет — по этому, для просмотра рекомендуем сохранить на диск):
Список товаров:
Детальная страница товара:
Пример UI (пользовательские интерфейсы) для зелёной цветовой схемы в "скево" :
А уже 15 февраля мы покажем вам готовую вёрстку решения!
Дата первого стабильного релиза Битроник 2.0 (получит: 12 цветовых схем в "скево" +10 во "флэт", адаптивная верстка для смартфонов и планшетов, AJAX, , ) назначена нами на 15 марта! И далее мы будем постепенно подтягивать функциональные возможности новой ветки решения до уровня Битроник 1.0, добавлять функциональные новинки платформы 1С-Битрикс итд
Внимание! Мы открываем предзаказ нашего решения! Итак, кто успеет оплатить решение в течении следующих ~3 недель — смогут получить решение по смехотворно низкой цене, всего в 5000 рублей! А когда мы покажем вам верстку — решение все еще можно будет приобрести с большой скидкой, всего за 7500 рублей! В продажу решение поступит с клиентской ценой 27900 рублей...
По вопросу оплаты, пожалуйста, пишите на адрес Консультация по бесплатной горячей линии: 8-800-234-0-248
В очередной раз, используя на одном из проектов компонент bitrix:catalog наткнулись на интересное поведение. При включении ЧПУ в данном компоненте и включённой опции "INCLUDE_SUBSECTIONS" ссылки на товары из вложенных разделов начинают выводится исходя из текущего раздела. Т. е. ссылки получаются дублирующими и доступными для всех клиентов, включая "роботов".
Если перейти во вложенный раздел, то ссылки соответственно поменяют "#SECTION_ID#" в URL.
Однако позже выяснилось, что при включении параметра "SHOW_ALL_WO_SECTION" ситуация меняется. Ссылки начинают формироваться в соответствии с ID группы, заданной для элемента в таблице `b_iblock_element`. В коде шаблона компонента bitrix:catalog в файле section.php при включении компонента bitrix:catalog.section этот параметр отсутствует, а по умолчанию для компонента он имеет значение "N", поэтому добавляем в section.php одну строку и смотрим на результат.
Автоматическое заполнение поля SEARCHABLE_CONTENT приводило к разрастанию b_iblock_element у меня эта таблица доросла до ~2гиг.
Для инфоблоков по которым не производится поиск средствами битрикс, содержимое это поля не нужно.
Судя по коду /bitrix/modules/iblock/classes/general/iblockelement.php, в данное поле попадает NAME+PREVIEW_TEXT+DETAIL_TEXT в верхнем регистре, и шевеление галочкой "Индексировать элементы для модуля поиска" в настройках инфоблока ни как не влияет на заполняемость данного поля.
Дабы побороть данную несправедливость черезмерное расходование памяти. к таблице добавлено два триггера, которые при вставке обновлении очищают поле SEARCHABLE_CONTENT у элементов перечисленных инфоблоков.
CREATE TRIGGER `BEFORE_INSERT_b_iblock_element` BEFORE INS ERT ON `b_iblock_element` FOR EACH ROW BEGIN IF ( NEW.IBLOCK_ID IN ( 4, 6, 7, 8, 15) ) THEN SET NEW.SEARCHABLE_CONTENT=NULL; END IF; END
CREATE TRIGGER `BEFORE_UPDATE_b_iblock_element` BEFORE UPD ATE ON `b_iblock_element` FOR EACH ROW BEGIN IF ( NEW.IBLOCK_ID IN ( 4, 6, 7, 8, 15) ) THEN SE T NEW.SEARCHABLE_CONTENT=NULL; END IF; END
(4, 6, 7, 8, 15) ID ифоблоков для которых нет необходимости запоминать SEARCHABLE_CONTENT
для очистки накопившегося: UPDATE `b_iblock_element` SE T SEARCHABLE_CONTENT = NULL WHERE IBLOCK_ID IN ( 4, 6, 7, 8, 15 )
не и на последок OPTIMIZE TABLE `b_iblock_element`
Сегодня заметил странную вещь Пусть нам надо обновить компоненты нашего модуля. Ранее было так: 1. Собираем обновление 2. копируем обновления компонентов в пространство имен, где они лежат на сайте, выполняя операцию через updater.php
обычно так
только вставляем данные строки в updater.php обновления И все файлы заменены
Что заметил сегодня
Вот исходные файлы одного из компонентов, которые пришли с обновлением
А вот результат после выполнения CopyDirFiles
Все файлы обновились, все ОК. Но не обновилось содержимое файлов! В эксперименте показан размер одного из них до обновления
.Ради эксперимента выполняем то же самое из админки
Получаем
Т.е. все ОК.
Два вопроса:
1. Почему CopyDirFiles так себя ведет при использовании в SiteUpdate. Ранее не замечал за ним таких проблем 2. Как правильно обновить файлы модуля, может я что то не так сделал? (ранее этот прием работал)
В я писал о доработке , что бы он мог выводить свойство привязки к элементам и что удивительно, эти замечания вошли в новую версию компонента. Это замечательно, но есть одно но - на почту приходит сообщение, где выбранные элементы указываются в виде чисел (ID элементов).
Что бы это поправить, нужно редактировать component.php, по крайней мере, этот способ показался наименее трудозатратным и наиболее правильным.
Итак, нам нужно заменить код от (примерно с 240 по 270 строки) новым:
Здесь сам код:
Если повезет, то и эти правки учтут и шпаргалка станет ненужна
Пост по следам . В комментариях с Олегом вышел спор, где он доказывал надуманность нового подхода. Отчасти он прав. Вот простой ответ почему лучше приучать себя к новому стилю:
//наш правильный док.рут
echo $_SERVER["DOCUMENT_ROOT"];
//тут вставляем компонент новичка, который делает вот что (например, из-за ошибки новичка):
$_SERVER["DOCUMENT_ROOT"] = '/newpath';
//и вы к нему ниже радостно обращаетесь:
echo '<br/>';
echo $_SERVER["DOCUMENT_ROOT"];
//а наш "монстро-код" по-прежнему обработал нормально:
$context = \Bitrix\Main\Application::getInstance()->getContext();
$server = $context->getServer();
echo '<br/>';
echo $server->getDocumentRoot();
В новом ядре Битрикс D7, чтобы достучаться до некоторых серверных переменных, нужно использовать специальный класс. Я про такие переменные сервера как IP-адрес, хост, и так далее. Коротенечко пробежимся по классу.
Всем доброго времени суток. Помогите разобратся с проблемой. При пополнении внутреннего счета, счет как написано в доках должен создаватся автоматически. Но у меня деньги списываются платеж в робокассу проходит но счет у пользователя не создается. Куда копать???