За последние 24 часа нас посетили 22675 программистов и 1269 роботов. Сейчас ищут 734 программиста ...

Бесплатный новый GNU GPL 3.0 eMarket (движок интернет-магазина). Готовим релиз.

Тема в разделе "Решения, алгоритмы", создана пользователем musicman3, 28 дек 2020.

?

Проект интересен?

  1. Да

    4 голосов
    80,0%
  2. Нет

    1 голосов
    20,0%
  1. musicman3

    musicman3 Активный пользователь

    С нами с:
    30 июн 2019
    Сообщения:
    144
    Симпатии:
    12
    Адрес:
    Дыра на карте
    Новый релиз 1.0 beta 3:

    - PDF бланки (добавлен первый бланк - счет)
    - CSRF защита
    - PHPUnits тесты
    - PHP рефакторинг
    - JS рефакторинг
    - Новый удобный инсталлятор
    - Фиксы и другое
     
  2. musicman3

    musicman3 Активный пользователь

    С нами с:
    30 июн 2019
    Сообщения:
    144
    Симпатии:
    12
    Адрес:
    Дыра на карте
    Внедрили покупку без регистрации и новомодный ChatGPT для карточки товаров, можно описание, теги и ключевые слова с ним делать при желании. На каждого сотрудника можно указывать свой токен.
     
  3. musicman3

    musicman3 Активный пользователь

    С нами с:
    30 июн 2019
    Сообщения:
    144
    Симпатии:
    12
    Адрес:
    Дыра на карте
    Итак, выпущен v. 1.0 RC1. Что нового?
    • Покупка без регистрации
    • Интеграция с ChatGPT
    • Своя "Страница не найдена"
    • добавлен PostgreSQL
    • добавлен SQLite
    • Рефакторинг
    • Различные багфиксы и др.
    Если есть предложения или конструктивная критика, то буду рад услышать.
     
  4. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    Почему решили использовать рекурсию?

    https://github.com/musicman3/eMarket/blob/master/src/eMarket/model/eMarket/Core/Tree.php#L33


    PHP:
    1. public static function filesTree(string $dir): array {
    2.  
    3.         $handle = opendir($dir) or die("Error: Can't open directory $dir");
    4.         $files = [];
    5.         $subfiles = [];
    6.         while (false !== ($file = readdir($handle))) {
    7.             if ($file != '.' && $file != '..' && $file != '.gitkeep' && $file != '.gitignore') {
    8.                 if (is_dir($dir . '/' . $file)) {
    9.  
    10.                     $subfiles = self::filesTree($dir . '/' . $file);
    11.  
    12.                     $files = array_merge($files, $subfiles);
    13.                 } else {
    14.                     $files[] = $dir . '/' . $file;
    15.                 }
    16.             }
    17.         }
    18.         closedir($handle);
    19.         return $files;
    20.     }
     
    musicman3 нравится это.
  5. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    861
    Симпатии:
    132
    Звезду с очередного акка джитхабова поставил, естественно (меня через личку можно известить, куда звёзд натыкать, некоторое кол-во могу).
    Это начало, бууду топать тему
     
    musicman3 нравится это.
  6. musicman3

    musicman3 Активный пользователь

    С нами с:
    30 июн 2019
    Сообщения:
    144
    Симпатии:
    12
    Адрес:
    Дыра на карте
    Эта функция предусматривает рекурсию, чтобы углубляться неограниченно внутрь, но думаю это и так понятно. А отдельная написанная рекурсия удобна чтобы можно было "рекурсировать" в соответствии с выставленными условиями. Но если есть более удобное решение, то почему бы нет, предложите, это думаю будет интересно. Всегда интересно видеть хорошие решения.

    Мы не профи в продвижении, поэтому просто делаем проект хорошо, как можем. Но любой лайк важен, что уж тут говорить. Спасибо.
     
    #56 musicman3, 24 май 2023
    Последнее редактирование: 24 май 2023
  7. musicman3

    musicman3 Активный пользователь

    С нами с:
    30 июн 2019
    Сообщения:
    144
    Симпатии:
    12
    Адрес:
    Дыра на карте
    Обновил версию и на демо-сайте. Кто хочет можете ознакомиться.