Jump to content
Local

Den1xxx

Muggles
  • Content Count

    32
  • Joined

  • Last visited

Community Reputation

1 Обычный

About Den1xxx

  • Rank
    Пролетал Мимо

Информация

  • Пол
    Мужчина
  1. Den1xxx

    Релизы Ubilling 2016

    Со страницы http://wiki.ubilling.net.ua/doku.php?id=needhelp Могу сделать респонзив на бутстрапе 3 основанный на этом — http://bootswatch.com/ Т.е. 16 тем в одной Но, блин, есть предложение. В папке «skins» как-то нагажено. Я предлагаю перенести все картинки в корень в папку «images» То же касается и остальных бутстрапов и прочего — что находится в этой папке, следует оттуда перенсти. Дело в том, что движок под админом каждый раз сканирует все папки в «skins» на предмет наличия «skin_name.txt» И куча дополнительных папок ему не на пользу, особенно когда будет 20 скинов, например. Да и лишняя путаница это. Я вот, например, сейчас заглянул туда и не понял — где скин, а где просто папка. А новую системную папку «images» задефайнить в common.php define('IMAGES_PATH', RCMS_ROOT_PATH . 'images/'); И запихнуть туда все картинки из скинов, в папках. Причём можно пока из скинс не удалять, но скопировать и постепенно вывести практику пихать картинки в скинс из обращения.
  2. Den1xxx

    Релизы Ubilling 2016

    А для чего он нужен? При впечатляющем ускорении PHP7 нагрузка реально падает в разы. Цифры с реального проекта (магазин 1500 товаров, клоны того же магазина) В варианте с PHP 5.5 используется мемкеш, в PHP 7 — мемкеша нет и памяти всё равно ест меньше. Кстати, mysql драйвер устарел именно с версии PHP 5.5 http://php.net/manual/ru/mysql.installation.php Если всё же нужен. В списке расширений для PHP7 вот здесь это не он? https://github.com/gophp7/gophp7-ext/wiki/extensions-catalog Вот прямая https://github.com/websupport-sk/pecl-memcache/tree/NON_BLOCKING_IO_php7/php7 И в инете можно найти описание установки мемкеш на FreeBSD https://forums.freebsd.org/threads/55141/#post-323134 PS/ Я не верю, что уважаемый Nightfly не мечтал заменить устаревший драйвер. Но там такое наследство по всему движку, что это просто трудно сделать. Надеюсь, что слегка помог в этом нелегком деле, хотя там ещё могут быть подводные камни на уровне системы.
  3. Den1xxx

    Релизы Ubilling 2016

    Ну, да - уже недели две как. Опохмелюсь, можт обновлю скрин в доке :-) Подбросим работки, чтоб не расслаблялся. Заглянул в Убиллинг, в системные функции и опечалился. В последний год с устаревшим MySQL драйвером ничего не изменилось. А ведь он уже deprecated в более-менее адкватно свежих версиях PHP, и выпилена в PHP 7 → а она снижает нагрузку в 2-3 раза (проверено на себе). Предлагаю обновить. Печально в этом то, что слово «mysql» в Убиллинге встречается 1157 раз. Правда, несколько обнадеживает то, что апи в Убиллинге повторяется зачем-то 7 раз (можно ведь было бы положить в одно место и инклюдить?). Поэтому, возможно, не такой уж большой объём работ? Хотя, кого мы обманываем? Таки большой. Ладно, хватит воды, к делу. Поскольку в Убиллинге я не очень, а свой проверенный драйвер уже год как работает в родственном этому проекте, я нагло переписал Ваш, Nightfly, api.mysql.php. Вот http://fromgomel.com/uploads/api.mysql.php.7z Особенности: 1. Работает на PHP от 5.0 и выше. 2. Для гарантии одного соединения применён шаблон синглтон. 3. Дисконнект при выгрузке объекта (читай — при завершении работы скрипта). 4. Запуск производится с помощью $mysqldb = MySQLDB::connect(); в самом апи. Что не мешает вызывать повторно в любом другом месте — всё равно вернётся тот же объект (синглтон, ага). Запуск объекта по типу $db = new MySQLDB(); теперь невозможен, следует писать $db = MySQLDB::connect(); 5. Для ускоренной и правильной замены устаревшей реализации mysql_real_escape_string() введена rcms_escape_string() Инструкция по обновлению (сам так обновлял год назад). 1. Заменяем mysql_real_escape_string() на rcms_escape_string() 2. Заменяем new MySQLDB(); на MySQLDB::connect(); 3. Заменяем апи на новое в 7 местах. Хотя, возможно, это не прокатит, лучше запихнуть в system и инклюдить оттуда. 4. Самое сложное. Заменяем mysql_query() на nr_query() или что-то другое. Применительно к Убиллингу. После пп. 1-3 эта функция останется в api/libs/api.workaround.php, docs/dshaper/dnswitch.php, modules/general/migration2/index.php и в консоли. Надеюсь, не слишком напугал. Спасибо за внимание.
  4. seversever404, добро пожаловать в клуб
  5. Den1xxx

    Релизы Ubilling 2015

    А... вы про то что прилетает из ob_get_contents(). Туплю. Добавил pre - спасибо Ой, та нема за шо. Вам спасибо.
  6. Den1xxx

    Релизы Ubilling 2015

    Упс. А разве тег <pre> этому помеха? Сравните: vs ЗЫ копирайт подпортил картинки, мог бы быть и попрозрачнее. А надпись «Исполняем это» имхо вовсе не нужна, если в текстарии сохранился исходный код.
  7. Den1xxx

    Релизы Ubilling 2015

    Добрый день, nightfly. Пробегал мимо, посмотрел на консоль (было интересно, как сильно отличаются права в родственном проекте — $system->rights_database). Вот здесь — http://demo.ubilling.net.ua:9999/billing/?module=sqlconsole&devconsole=true К выводу желательно бы добавить <pre>, как в SQL консоли. Иначе в выводе нечитаемая каша. А также запоминание в textarea того, что было отправлено, т.к. вводить повторно при лёгком изменении кода — лень. Мне-то пофиг, а Вам с этим жить Удачи в разработке.
  8. Den1xxx

    Адміністратори UBILLING

    Хе-хе. Обижаете. Всё до нереально-тупого-простого сделано, в лучших традициях: CREATE TABLE `users` ( `username` varchar(255) NOT NULL COMMENT 'Логин пользователя', `userdata` text NOT NULL COMMENT 'Сериализированный массив параметров пользователя', PRIMARY KEY (`username`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE `users_cache` ( `username` varchar(255) NOT NULL COMMENT 'Логин', `nicks` varchar(255) NOT NULL COMMENT 'Ник', `mails` varchar(255) NOT NULL COMMENT 'Почта', PRIMARY KEY (`username`), UNIQUE KEY `nicks` (`nicks`), UNIQUE KEY `mails` (`mails`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; Нет никаких ИД пользователя, как в оригинале Вроде он, спасибо. Иногда излишняя стеснительность — больший грех, чем прелюбодеяние. Это я к тому, что давно бы всё готово было Давайте запланируем на через-недельку. А то с этими праздниками опять.
  9. Den1xxx

    Адміністратори UBILLING

    Точно, ступил. Это из кеша А вообще у меня в магазине администраторы давно в БД — искать легче, «ху из ху». Их же может быть много, с разными правами. Могу поделиться user-classes.php Для совместимости юзеры при первом запуске распарсиваются из папки users в БД. Создаются 2 таблички — users и users_cache Для максимальной совместимости с оригиналом=) Только у Вас наверное табличка users уже используется. Но переименовать недолго — по одному файлу пробежаться всего-то. Есть ещё личная просьба: киньте в меня пожалуйста скином с reloadcms.com А то 3-й или четвертый раз пытаюсь начать верстать, но лень сильнее меня Нужно для раздела закачек и вики.
  10. Den1xxx

    Адміністратори UBILLING

    Вспоминайте, кому давали логин/пароль Это не показывает что они администраторы. Есть какие-то тестовые, скорее всего, бесправные, пользователи. Чтобы они стали админом, их кто-то должен права дать сначала
  11. Таки кнопка у меня такая на последнем FF работает. Хотя версию — две назад искал, не находил
  12. Den1xxx

    Релизы Ubilling 2014

    Чтобы функция загрузки бекапов могла работать с большими файлами (>100Мб) и на хостинге не кончилась внезапно память, одну функцию надо переписать в виде: function zb_DownloadFile($filePath,$contentType='') { if (!empty($filePath)) { if (file_exists($filePath)) { log_register("DOWNLOAD FILE `".$filePath."`"); if (($contentType=='') OR ($contentType=='default')) { $contentType='application/octet-stream'; } else { //additional content types if ($contentType=='docx') { $contentType='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'; } } header("Content-Disposition: attachment; filename=\"" . basename($filePath)."\""); header("Content-Type: ".$contentType); header("Content-Transfer-Encoding: Binary"); header("Content-Description: File Transfer"); header("Content-Length: " . filesize($filePath)); flush(); // this doesn't really matter. $fp = fopen($filePath, "r"); while (!feof($fp)) { echo fread($fp, 65536); flush(); // this is essential for large downloads } fclose($fp); die(); } else { throw new Exception('DOWNLOAD_FILEPATH_NOT_EXISTS'); } } else { throw new Exception('DOWNLOAD_FILEPATH_EMPTY'); } }
  13. Den1xxx

    Релизы Ubilling 2014

    Сегодня увидел на сервере своего провайдера прикольную фишку. Думаю, что такой прикол возможно добавить и в Убиллинг. 13.01.2014 Уважаемые абоненты, использующие технологию доступа IPoE. Добавлена новая услуга «Турбокнопка»: предназначена для кратковременного (1 час) увеличения скорости доступа к сети Интернет; активируется абонентом самостоятельно через личный кабинет на сайте www.garant-tv.by; стоимость услуги списывается со счета сразу после активации; не прерывает текущих загрузок файлов, потокового аудио/видео и т.д.; действие заканчивается автоматически через 1 час после активации.
  14. Den1xxx

    backend Ipay

    Случайно модули ipay.by с ipay.ua не перепутали? Это разные ПС, если что.
  15. Den1xxx

    Релизы Ubilling

    Я кстати делал так (в другой системе с внутренним балансом). 1. Выбираем среди пользователей суперадмина. 2. Делаем кнопку «Ограбить всех!». При нажатии кнопки весь баланс со всех пользователей списывается на баланс суперадмина. 3. Profit! Но вообще-то это может быть полезно только при переходе с режима тестирования на реальную работу
×