Кот канарский полосатый толстый

VALID INFO! My crazy life!

Задержись в реальности!

Contao CMS: Скрипт для обновления путей к файлам после перехода на версию 3 с версии 2
Codded
r3code
При переходе на версию 3 меняется структура файлов, в частности tl_files переименовано в files.
Файлы из tl_files переносим в files и затем вносим обновление для путей в базу данных. Вручную долго, потому разработчик сделал скрипт для обновления путей https://gist.githubusercontent.com/leofeyer/3304014/raw/6002559eb84a4d01e1849b599fb12b5758a7ae46/contao-db-update.php
В него надо вписать учетные данные доступа к БД поместить на сервер и выполнить его, обратиться к нему.
База обновлена.

Сайты работающие на Contao CMS 2.x, 3.x подверглись взлому
Серьёзно о главном
r3code
Сайты на Contao 2.9, 2.11, 3.3 были взломаны китайскими или корейскими хакерам через известные уязвимости.
Контент был заменен на спам ссылки. Несколько моих сайтов было взломано, при этом сообщил мне об
этом Google обнаружив резкое изменение контента на сайте.
Взломщики часто закачивают несколько шифрованный файлов, которые при обращении представляют собой дорвеии. В индексе я обнаружил несколько сотен новых страниц названия их на китайском или корейском.
В шифрованных файлах php встретились слова North Korea и butan.
Часто появлялись нехарактерные названия папок images, wp-content. Названия файлов: ceshi.php, xxcd.php

Библиотека для работы с JSON-RPC 2.0 на Pascal/Delphi/Lazarus
Codded
r3code
В августе портировал библиотеку для работы с JSON-RPC 2.0 на Pascal, нужно было работать с объектами JSON просто без заморочек в проекте Lazarus/Delphi. Можно просто добавлять свои объекты ошибок JSON-RPC. Разбирать и проверять правильность сообщений, создавать запросы и уведомления. Требует SuperObject для работы с JSON.
Ссылка на исходники https://github.com/r3code/pascal-jsonrpc-lite (под лицензией GPL 3.0)
--
Вдохновился простотой https://github.com/teambition/jsonrpc-lite - очень логично и просто выглядело, но для NodeJS.

Код после этого стал значительно проще, чем просто работа с JSON через SuperObject.
Примеры смотрите в исходниках. Тесты на DUnit 9.3 под Delphi 7.

NodeJS: Как передать аудио-поток в браузер
Codded
r3code
Пример как передать аудио-поток в браузер на NodeJS.
В браузере использован элемент html5 audio.
Исходный код https://github.com/r3code/node-ogg-simple-stream 

Delphi 7: набор скриптов для автоматизации сборки из командной строки
Codded
r3code
Сделал набор скриптов для запуска сборки Delphi проектов из командной строки. Пригодно для сборки Delphi проектов в Jenkins (для того и сделал).
Выполняется сборка, патч MadExcept, запуск тестов DUnit.
Проекты для сборки указываются в файле BuildTargets.txt
Каждый проект имеет свой bat файл сборки в котором можно задать параметры каждой сборки отдельно (директивы, пути к библиотекам).
По результату исполнения вы увидите отчет о сборке каждого проекта. В Jenkins смотреть в Console Output.

Исходный код: https://github.com/r3code/delphi7-batch-build-scripts

Инструментальные наборы для быстрой верстки веб-фронтэнда
Небо может?
r3code
Главное, чтоб под Windows работало все, желательно поддержка БЭМ.
Некоторые из найденных наборов, которые стоит попробовать:

  1. ADM DEV KIT (Gulp) - состоит из Jade + PostHTML-BEM и PostCSS.

  2. TARS - состоит из Gulp.js. Includes Jade, SASS, PostCSS, Autoprefixer, Compress files.

  3. CSSR(отечественный) - состоит из gulp, Jade, bemto.jade, gulp-stylus, stylint, rupture, autoprefixer-stylus, gulp-group-css-media-queries, cssnano,, gulp.spritesmith-multi, webpack, babel, eslint, browser-sync, debuga.

  4. Gulp Front(отечественный) - состоит из Gulp, Jade и Stylus + дополнительные утилиты, см. сайт.

  5. JS App Starter (отечественный) - состоит из Gulp, Browserify, Babel, jsHint, Jade, Stylus, Autoprefixer, Imagemin, Spritesmith и др.

Отдельно генераторы статических сайтов смотрим тут https://staticsitegenerators.net/

PHP: получение стоимости отправки посылки с сайта pochta.ru
Codded
r3code

Сайт почты http://pochta.ru обновился, но API у него сразу не появлся от того.
Изучил работу сайта и написал свою реализацию.

Это частный случай для доставки посылки наземным транспортом.
Работает до обновления pochta.ru серверного кода, иногда там изменяются форматы ответов.
Для поддержания кода в рабочем состоянии я использую периодические сборки с автоматизированными тестами при помощи travis-ci.

Я успешно использую этот код для автоматического расчета стоимости доставки посылки в интернет магазине на основе HostCMS 6. Стоимость добавляется автоматически к заказу системой - это сильно упростило жизь операторам.

Примеры и исходный код: https://github.com/r3code/pochtaru-parcel-cost

Состояние билда: https://travis-ci.org/r3code/pochtaru-parcel-cost

Как делать "правильные" ссылки на рисунки в Word
Серьёзно о главном
r3code
Оригинал взят у savchenko_g в Как делать "правильные" ссылки на рисунки в Word
Приветствую!

Полезная фича Ворда, которая была найдена после долгих поисков - как правильно делать ссылки на рисунки (или таблицы). Это позволить сделать Ваши документы красивыми.
Часто требуется дать ссылку просто на номер рисунка, например, "1", чтобы просклонять в тексте "на рисунке 1", "в таблице 2" и т.д. Стандартные опции такой возможности не предоставляют.

Как дать рисунку название, знают почти все (правой кнопкой мыши по рисунку, "Вставить название"). Рисунки при этом автонумеруются.

Как сделать ссылку на рисунок, включающую его номер, тоже понятно.
"Вставка-Перекрестная ссылка", появляется окно:
pic

Ссылка при этом будет видна как "Рисунок 1" (Постоянная часть и номер). А как вставить ссылку только на номер?

Решение:
1. Вставляем ссылку обычным образом, как показано выше. Ссылка типа "Постоянная часть и номер", после вставки выглядит как "Рисунок 1".
2. Перемещаем курсор на ссылку - она выделяется
s1
3. Нажимаем SHIFT-F9 - видим автотекст типа "{REF _Ref233434534 \h }"
4. Меняем автотекст на "{REF _Ref233434534 \h \# \0 }" . Важно, что после "\0" должен стоять пробел. Т.е. мы добавили "\# \0 ".
5. Нажимаем F9.

Ссылка в виде номера рисунка готова! Склоняйте ее и используйте в тексте как хотите.

Delphi Аспект-ориентированное програмирование
Codded
r3code
В D2010+ доступно много новых возможностей, теперь даже AOP можно использовать!

Для использования AOP можно использовать несколько библиотек:
- DSharp / Spring4d
- MeAOP

По DSharp доступны видео с Code Rege

  1. Developer Skill Sprints - Aspect Oriented Programming using DSharp with Nick Hodges

  2. Meta-Programming in Delphi - Adding a function call to every method of a class


Delphi Dependency Injection - внедрение зависимостей
Codded
r3code
В новых версия Delphi от 2010 появилось много интересных возможностей, доступных в других современных языках программирования, в том числе внедрение зависисмостей (DI). Эта техника помогет снизить взаимозависимотьс компонентов кода.

Вот некоторые библиотеки поддерживающие данную технику:

  1. Встроеный в XE4 System.Rtti.TVirtualMethodInterceptor

  2. Видео от Nick Hodges Dependency Injection and the Delphi Spring Framework


?

Log in