Тема |
---|
1
2010-05-02, Balancer: Активировал (пока почти бесполезный) плагин PHPDoc'а на Trac'е.
|
0
2010-01-23, Balancer: Довольно давно слепил несложный генератор SQL-запроса для создания страниц, выдающий по простому шаблону класса соответствующий код таблицы. Чуть позже добавил и генератор простого класса по нему же. Сегодня капитально расширил функционал генератора. Кроме SQL и основного класса теперь генерируется весь базовый функционал админки. Страница со списком объектов, редактирование и создание объектов... Пока ещё достаточно сыро и неконфигурабельно, но уже сильно уменьшает объём рутины. Вид шаблона примерно такой: code text class: aviaport_directory_edition title: Авиационное издание titles: Авиационные издания admin_class: aviaport_admin_directory_edition directory_editions: int id++! int edition_type_id! // Тип издание - выбор из перечня: Журнал, Газета, Бюллетень string title // Название издания text description // Аннотация: …
|
0
2010-01-19, Balancer: Немного доработал PHP Framework BORS© Подключил блог из этого форума.
|
1
2009-11-26, Balancer: Коротко описана структура каталогов: Структура каталогов фреймворка
|
0
2009-07-09, Balancer: Возможны ситуации, когда нужно обращаться к БД с одним именем на разных серверах. В этом случае допустима запись при конфигурировании доступа вида: code php mysql_access ( 'ALIAS-DB-NAME => REAL_DB_NAME' , 'login' , 'pssword' , 'remote-server' ) ; mysql_access ( 'REAL_DB_NAME' , 'login' , 'pssword' ) ; В этом случае объекты БД будут привязываться к именам: code php $dbh = new driver_mysql ( 'REAL_DB_NAME' ) ; // Работа с локальным mysql-сервером $dbh = new driver_mysql ( 'ALIAS-DB-NAME' ) ; // Работа с удалённым mysql-сервером с БД REAL_DB_NAME Соответственно, в конфигах ORM-объектов можно прописывать алиасы. В записи 'ALIAS => NAME' допустимо любое количество пробелов или их отсутствие.
|
0
2009-07-09, Balancer: Идея реализации унифицированного механизма циклической обработки (чистка кешей, логов доступа, таймерные задачи), затрагивающих весь хостинг вместе с разнородными проектами разной степени взаимной реюзабельности признана избыточно сложной и ненужной. Порождается масса проблем и подводных камней, связанных с ограничением взаимного доступа и конфигурированием объектов. Теперь строго и однозначно - все механизмы обработки работают с раздельными конфигурациями отдельно. Уточнение на счёт базовых констант: базовые каталоги системы: BORS_CORE - как и всегда, путь к ядру системы BORS_3D_PARTY - путь к расширениям третьих сторон Каталоги конкретного хостинга/сервера: BORS_HOST - индивидуальные настройки хостинга/сервера, не требующие синхронизации, например, между тестовым и рабочим сервером. Это могут быть настройки путей ФС, доступа к БД и т.п. Все привязки к хостингу. BORS_LOCAL - настройки проекта, общие для всех сайтов, например, синхронизируемые между тестовым и рабочим серверами. Общие классы, их конфигурация…
|
12
2009-06-30, permeakra: … 1. ... И поэтому проглатываем, долю чего? Это несколько неправильно. 2. И, в общем, рекомендую скодить на хакадж и убедиться, что решений там более чем до фига. И сервачок наподобии эрланговских более чем ничего. Хотя насчёт массового использования…
|
(немного о фреймворке, для Морского каталога, на примере разьяснения одному знакомому)
7
2009-06-22, HolyBoy: … Созреешь. Возьми dokuwiki [DokuWiki] , он лёгкий и быстрый. Пусть новичок эту документацию и заполняет. Ему будет шпаргалка, а тебе польза. Кстати, почему именно борс, а не РоР? Потому что тогда его не было? А если бы сейчас начинал, то РоРом…
|
памятка, что сделать...
2
2009-04-25, Balancer: Удалённое хранилище картинок Нужно подыскать максимально надёжное и легко доступное внешнее хранилище с возможностью аплоада без регистрации. Лучше, если со стандартизированным API. Претенденты: http://imageshack.us/ http://ipicture.ru/…
|
как быть?
0
2009-03-31, Balancer: Исторически сложилось, что фреймворк BORS© работает не просто на системах с разными кодировками (utf-8, windows-1251, koi8-r), но нередко в смешанных условиях (БД отдаёт данные в utf-8, клиент должен получить в windows-1251, файлы лежат в koi8-r, клиент получает в utf-8, контент сайта отдаётся в koi8-r, но RSS отдаюься в utf-8 и т.п. сочетания). До какого-то момента всё было прекрасно: 1. Все тексты в PHP-коде лежат в utf-8, но при загрузке система переводит их во внутреннюю кодировку системы. Например: class ... function title() { return ec("Тест"); } где ec() - функция, осуществляющая перекодировку utf8->internal_charset 2. Все операции над текстом (upper/lower/substr/etc) осуществляются во внутренней кодировке сервера. 3. При выводе происходит преобразование internal_charset -> output_charset. 4. При загрузке данных из пользовательских файлов происходит перекодировка files_charset -> internal_charset 5. При загрузке данных из БД происходит перекодировка db_charset->internal_charset. 6.…
|
0
2009-03-06, Balancer: Подключил расстановку мягких (скрытых) русских переносов с Расстановка мягких переносов Сам пакет лежит в BORS_3RD_PARTY/phphypher. bors-функция - в inc/strings.php Использование в BORS: code php <?php require_once ( 'inc/strings.php' ) ; $result = bors_hyphen ( $text ) ; Особенности: 1. Пакет работает только с cp1251. Поэтому перед вызовом осуществляется преобразование из UTF-8 в эту кодировку. Возможна потеря юникодных символов. 2. Сейчас обрабатывается только русский текст, но в будущем не исключён переход на английский. Поэтому не стоит сразу прогонять через расстановщик готовый HTML-код.
|
документация
5
2008-11-20, Balancer: Небольшое дополнение. Генерируемый последним примером запрос будет один: code mysql SELECT `id` , username AS `title` , `group _ id` , title AS `user _ title` , `use _ avatar` , `avatar _ width` , `avatar _ height` , `num _ posts` , `signature` ,…
|
1
2008-05-08, Анатолий: Завел сегодня новый топик /временный/на форуме Морской с открыткой Поздравление с днем Победы . Все было видно а через полчаса топик исчез... В чем причина ?
|
0
2008-04-22, Balancer: code php <?php class aviaport_image_gallery extends base_page_db { function main_table_storage ( ) { return 'aviaport_image_gallery' ; } function main_db_storage ( ) { return 'WWW' ; } function storage_engine ( ) { return 'storage_db_mysql_smart' ; } function class_type ( ) { return ec ( 'Фотоотчёт' ) ; } function main_table_fields ( ) { return array ( 'id' , 'title' , 'description' , 'author_name' , 'create_time' , 'modify_time' , 'default_image_id' => 'default_image' , …
|
0
2008-02-08, KrMolot: 1) Удаляете печенье авиабазы 2) Заходите Авиационные новости к примеру 3) Щелкаете, скажем, на "ВВС России выбрали основной учебный вертолет" 4) Если сайт выдал печенье жмете назад и возвращаетесь на Авиационные новости 4) Нажимаете на ссылку "Зайти" 5) Вводите логин и пароль и нажимаете на кнопку "Зайти" Так вот, у меня не заходит и чтобы все же зайти приходится удалять печенье выданное при просмотре подобных ( ВВС России выбрали основной учебный вертолет. ) ссылок!
|
2
2008-01-22, Balancer:
|
0
2007-12-01, Balancer: base_null - не имеет никаких свойств кроме характеристик класса, фактически - абстрактный класс. base_empty - класс, объекты которого различаются идентификаторами. base_object - основной объект системы. Нечто, имеющее самостоятельную информационную ценность. Обладает базисом параметров, типа времени создания и последней модификации, названия и т.п. base_page - страница сайта. Объект, представляемый содержимым и шаблоном HTML-вывода. base_rss - аналогично, но генерирует XML категорий RSS или ATOM. base_list - базовый класс списков. base_object_db - класс, данные объектов которого хранятся в БД и автоматически извлекаются через ORM в момент создания экземпляра класса. base_page_db - аналогично, страница, данные которой хранятся в БД. base_page_hts - страница, данные которой хранятся в БД в старом HTS-формате base_list_db - список, элементы которого хранятся в БД. ... //TODO: добавить пересечения и деревья; добавить классы, требующие выправления иерархии
|
0
2007-09-18, Balancer: Решил, вот, начать публикацию примеров работы с нашим фреймворком. Итак, сегодня были добавлены RSS-потоки в темах, позволяющие отслеживать ответы. Собственно, код RSS-модуля с комментариями по ходу. code php <?php class_include ( 'forum_topic' ) ; class forum_topic_rss extends forum_topic { function render_engine ( ) { return 'render_self' ; } function url ( ) { return $this -> rss_url ( ) ; } function render ( ) { include ( "3part/feedcreator.class.ph p" ) ; $rss = &new UniversalFeedCreator ( ) ; $rss -> encoding = 'utf-8' ; $rss -> title = $this -> title ( ) ; $rss -> description = ec ( "Ответы в топик " ) . $this -> title ( ) ;…
|
8
2007-09-03, Fakir: Не нравится: 1) Отсутствие резалки топиков; 2) Отсутствие лички; 3) всё же размещение аватаров и прочего юзер-инфо в правом верхнем углу, ИМХО, не гут - слева в колонке, как раньше, удобнее: а то сейчас с этими юзерскими крыжами иногда криво форматируется…
|
0
2007-05-29, Balancer: Сделать: Стиль тэга term Репутацию и штрафы под аватаром Корневую страницу форумов Корректный учёт редиректов форумов "Форумы" - внешние ссылки. Категории (== сайты)
|
8
2007-02-21, Murkt: … Как же я тебе в Москве найду? … Хз. В принципе, можно мой доработать. … А что такое Coppermine? Поискать надо, может и есть. А можно, опять же, своё написать, потому что это можно делать быстро Вообще, структура Джанговского проекта предпологает…
|
2
2007-01-18, робин 44: Спасибо! набил withowtleft в отображениях и всё прошло
|
3
2006-12-13, Balancer: Ну, пусть хоть так, вот, пока
|
0
2006-11-15, Balancer: Только что на коммерческом хостинге встала задача пару страниц положить в файловую систему. Было сделано такое решение (время работы - минут 10 с обдумыванием, написанием и отладкой ). Общий принцип - CMS в самом конце всех проверок и обработок, если ни один модуль не взялся за отображение страницы, выводит страницу стандартным методом с помощью модуля handlers/post/80-pages.php . Он извлекает стандартный набор данных через DataBaseHTS->get(uri, key_name) и скармливает его Smarty-шаблону. - Есть возможность вставить свои перехватчики, подменяющие стандартные функции извлечения данных. Собственно, это на сегодня самый популярный способ написания модулей и плагинов. Вешаем на заданные URI или их группы наши функции, которые возвращают требуемые значения. Чаще всего для регистрации своих методов используется функция hts_data_prehandler_add(uri_rege xp, key_name, function) или hts_data_prehandler_add(uri_rege xp, array(key1_name => func1, key2_name => func2, ...)) , где в качестве function могут быть…
|
2
2006-11-15, Balancer: … Не покатит. Речь-то о виртуальной подсистеме. Конкретно - о Trac'е
|