Перейти к контенту

MiksIr

Пользователи
  • Число публикаций

    160
  • Регистрация

  • Последнее посещение

Личная информация

  • ICQ
    5081723

Дополнительные

  • Город
    msk.ru

Недавние посетители профиля

9 021 просмотр профиля

Достижения MiksIr

  1. MiksIr

    BBCode

    Кто-нибудь использует в своей работе PECL bbcode? Если есть такие - отпишитесь. Во-первых отзывы интересуют, во-вторых - возможность тестирования пропатченной мной версии.
  2. Проблема 99% не из-за этого.
  3. Ну именно закрыть окно - способ один - windows.close(). А вот кто и когда и в каком месте это скажет - тут уже куча способов. Можно постить аяксом и закрывать на калл-бек функции. Можно попробовать закрывать на onSubmit - возможно даже, что форма все-равно отправится, но тут нужно проверить поведение всех браузеров.
  4. Скрипт должен вывести что-то типа <script type="text/javascript"> window.close() </script>
  5. MiksIr

    NetBeans

    Ну да, ноги там из Java растут. Но для php все же скорее нравится, чем нет. Есть моменты, когда "подтормаживает" - как правило когда пытается или инспектор обновить, или большой тултип выкинуть. Кстати, а в Java при дебаге есть по наведению мыши на переменную тултип с ее значением? В phpEd очень понравилось - удобнее чем несколько кликов, что бы в watch добавить...
  6. MiksIr

    NetBeans

    Да... и самое главное - кто бы мог подумать, что такое будет =(
  7. MiksIr

    NetBeans

    По причине аварии с интернетом в офисе решил попробовать NetBeans. Понравилось... что-то есть такое приятное, хотя вроде и phpEd всем устраивает. И решил было уже пнуть всех - а давайте перейдем на NetBeans. Еще привлекало то, что использует от xdebug для дебага - мы его используем в CLI версии, что бы покрытие мерять, а вот в CGI версии используется phpEd-ный дебагер. Но с пол-пинка xdebug не завелся, интернет не работал, так что отложил до сегодня. Сегодня стал разбираться... и кроме мата слов не было. Оказалось, что xdebug в принципе работает только с одним клиентом - он делает коннект к клиенту (к IDE) на хост, который прописан в конфиге. Как решение, конечно, можно для каждого девелопера завести свой пул php процессов с переопределением этой ini директивы, но решение не нравилось. Еще менее понравилось решение со специальным xdebug прокси, написанным на питоне... во-первых, потому что это прокси, а во-вторых потому что он не поддерживается NetBeans 6.5 (в 6.7 судя по тикетам эту поддержку сделали). Второй поток матов вызвал firefox расширение и дебаг сессия в NetBeans. Раньше то как (и в зенде, и в phpEd) - с помощью FF экстеншена мы имели тулбар с кнопкой "отдебажить" и счастье было. Расширение для xdebug позволяет включить/выключить режим дебага, что менее удобно, ибо стопудова все будут забывать его выключать =) Но и это фигня... не фигня то, что дебаг сессию в NetBeans это не активирует. Т.е. нужно сначала перевести NetBean в дебаг режим, после этого включить галочку в фаирфоксе "дебаг" и тока потом тыкаться в нужную ссылку на сайте (ну или форму там отправлять =). Маразм? Оказывается, еще нет. Включить просто так дебаг режим в NetBeans нельзя - можно только запустить на дебаг открытый файл (или проект), потом этот файл "исполнить" - и когда он отработает, о счастье, дебаг режим не выключается и уже можно колдовать со фаирфоксом. В общем, никто легких путей не ищет. Проблему с клиентами xdebug-а удалось решить патчем от фейсбука - случайно нашел после нескольких часов написания своего такого патча (т.к. первый раз пишу расширения для PHP). А вот как решить проблему с NetBeans... хотя бы дебаг запускать без запуска index.php проекта.... PS: Тааак... с 6.7 начинает что-то вырисовываться... там уже можно запускать дебаг "просто так", указывать мапинги "удаленный файл" - "локальный файл"... правда, работают они криво. Не, такое ощущение что те, кто разрабатывал IDE и те, кто рожает костыли сейчас - совершенно разные люди. Разные уровнем. PSS: В общем, методом тыка догадок все наладилось. Теперь нужно нажать в NetBeans кнопку дебага, нажать в фаирфоксе кнопку дебага и тыкать в нужный урл. Хотя, наверно, режим дебага в фаирфоксе можно держать всегда включенным - если NetBeans не ждет дебага, ничего не будет... Надеюсь, все же когда-нибудь понявится нормальный экстеншн для фаирфокса.
  8. MiksIr

    Щаблоны 2

    GiV, я был бы всеми руками за. Но заниматся этим в свободное время - для меня нереально. Да и одному тяжко, с командой веселее =) Т.е. лично я взялся за это только если оно пошло как работа. Это, в общем, не исключает опенсорс - зависит от модели, на которой планируется потом зарабатывать, но эта модель вот несколько расплывчата, а ситуация в стране не способствует финансовым рискам. Так что в то, что этот проект запустится у нас - я не очень верю =) А свой проект запускать, как я сказал, я не в состоянии - ленив до чертиков =)
  9. MiksIr

    Щаблоны 2

    Есть такой проект =) ждем финансирования В рамках текущего проекта нет ресурсов на это, увы... по моим оценкам до чего-то работающего - это где-то человекогод =)
  10. MiksIr

    Щаблоны 2

    Ну вот, пришлось вернуться к скинам =) Благо, не сильно поломали весь функционал. Попутно переводим все на смарти. Что бы сделать это плавно и незаметно - придумали следующее. Все классы шаблонов, которые генерит форум отнаследовали от нашего. В нем прописан магический вызов - если метода в классе нет, то срабатывает наш, инициализирует, если нужно, смарти и на основании имени класса и имени метода ищет шаблон .tpl. Т.е. теперь нам достаточно написать шаблон на смарти, положить его туда же, где старые шаблончики в xml и удалить старый шаблон - новый хватается сразу после перегенерации кеша.
  11. "Дали возможность" =) На самом деле "забрать" эту возможность можно только одним способом - написанием говноклассов =) Чем тщательнее все разбито на методы, тем легче писать что-то свое. Правда, даже если забыть о гиморе с инсталляцией таких модулей (исходные файлы форума все-равно править придется - класс переименовывать, а если там есть автолоадер - то и сам файл), тут еще один подводный камень. Требуется неукоснительное сохранение интерфейсов всех классов от версии к версии... извините, я в это не верю... особо в случае с IPS. Хуки, да, пришлось бы рассматривать заявки на добавление новых, но зато уж добавил - так добавил, хранить неизменное API в виде хуков легче.
  12. Да что-то вроде. В общем, мне кажется идеальное решение - оно что-то близкое к тому, как пишут модули.. ну для таго же апача. Т.е. набор возможных действий, а модуль имеет указатель на методы для тех действий, что ему интересны.
  13. MiksIr

    Сфинкс

    Умеет брать информацию как из базы (SQL запрос в конфиге с поддержкой выборки "пачками"), так и из внешней программы (ожидает простой XML). Индексация быстра. Индекс представляет собой набор сортированных словарей и не подразумевает изменения - только полное перестроение. Однако, можно построить много индексов и операция слияния индексов (операция накладная, но менее чем запрашивать все данные с нуля). Т.е. строим один индекс по базе, новые данные постоянно переиндексируем во второй индекс (дельту) и переодически индексы сливаем. Дельт может быть несколько... например за месяц, за неделю, за день. Индексация быстрая... к примеру "total 13582 docs, 6422569 bytes, total 18.592 sec, 345452.15 bytes/sec, 730.54 docs/sec". Документ тут, конечно, пост на форуме. Каждому документу могут быть назначены атрибуты (их, кстати, можно менять). Например, удаление поста из основного индекса можно реализовать установкой такого атрибута.. ну еще много всего придумать можно. По атрибутам можно потом проводить фильтрацию результатов поиска. Каждый документ состоит из набора полей - я использую три - заголовок, текст, метадата. В последнем лежат "фейковые" ключевые слова, например "forum55", "author1045". Хотите искать только в сообщениях определенного пользователя - пожалуйста "как я пил пиво @metadata author1045" или даже просто "как я пил пиво author1045" (конечно, реализацию эту можно скрыть в скрипте поиска). Так же реализуем поиск в наборе форумов. Разным индексам и разным полям в документе можно назначить разный вес, что будет учитываться при релевантной сортировке (логично выдать сначала название тем, где найдены ключевики, а потом отдельные посты...). Кстати, отдельный документ "название темы" я не заводил - просто ставлю поле title если документ - это первый пост в теме. Синтаксис запросов позволяет действительно искать (а не раздумывать - что ж это мне вывалилось). На основе атрибутов же можно построить и поиск по закрытым форумам, для меня это не принципиально - форумы почти все публичные, а по закрытым - обойдутся =) Ну или оставим для них поиск по базе - трафик там маленький. Ну и работает все - только никак не налажу ротацию дельт - просто из-за времени.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.