Coder Social home page Coder Social logo

ramainen / doit-cms Goto Github PK

View Code? Open in Web Editor NEW
20.0 20.0 11.0 9.14 MB

Простая система администрирования и фреймворк. В первую очередь фреймворк.

Home Page: doit-cms.ru

License: MIT License

HTML 13.75% PHP 72.64% CSS 1.80% JavaScript 11.80%

doit-cms's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

doit-cms's Issues

Константы в config.php

Это позволит:

  1. Использовать сторонние движки баз данных, и использовать СУБД иные, нежели MySQL.
    Например в функции db()->sql()
  2. Использовать префиксы таблиц без использования глобальных переменных

link_to на основе роутера

Попытка определить адрес функции при помощи анализа роутинга. Если некая функция доступна по нескольким адресам, берётся более короткая страница (например, главная)

Параметры для foreach

Чёт-нечёт, до и после, столбцы, опции, значения по-умолчанию в нечисловых ключах массива

Наследование шаблонов

Реализовать twig (Django) style наследование шаблонов - блоки + наследование родительского шаблона и переопределение его блоков.

Префикс property_

Реализовать вкупе со следующими переменными:

  • d()->id
  • d()->table

Образец пагинации

  1. образец должен быть модулем.
  2. образец должен быть конфигурируемым
  3. образце должен быть легко включаемым или генерируемым

Документация внутри репозитория

  1. Документация должна транслироваться в HTML и PDF.
  2. Формат должен быть поддерживаемым в альтернативных ОС.
  3. Формат должен быть текстовым.
  4. Формат должен поддерживать подразделы.

Пред-подготовка {{function параметры}}

Преобразовывать следующее:

{{helper client 'user' admin user => list }}

в следующее

{{helper d()->client, 'user', d()->admin,'user'=> d()->list }}

По следующим правилам:

  • убрать пробелы до и после =>
  • между пробелами (обходя скобки) ставить запятые
  • если каждый элемент - константа (только англ. символы), то ставить d()-> перед ним

yield для <foreach>

Для использования yield каждый foreach должен объявлять независимую функцию для рекурсивного вызова.
Возможно, {{foreach rows as row do each_row}}.

Редактор ini файлов

Он-же записан в меню опций:
логин пароль администратора (девелопера)
главное (боковое) меню сайта
поля для страницы редактирования и дополнительные кнопки
роутеры
миграции для таблиц
правила для валидаторов

Безымянные переменные вида param##

Безымянные переменные для шаблонов, для шаблонов электронной почты, для шаблонов форм и так далее.
Письмо имеет шаблон. Страница имеет шаблон. Страница и письмо имеют безымянные переменные, например, заполняющиеся из существующего массива.

Автоматическая многостраничная документация

  1. Один файл - одна страница.
  2. Имя страницы - первая строка в файле.
  3. Содержание переключает по страницам.
  4. На каждой странице есть ссылки на следующую и предыдущую.
  5. Есть содержание.
  6. Каждая страница - независимая статья на разные темы: О системе, FAQ, документация, рецепты, пошаговые инструкции.

Псевдосвойство after_me

Для вызова функций сразу после этой.

$array[2]->after_me=d()->adverting();
d()->users =  $array;

В шаблоне:

<foreach users as user>
    <div>{user.name}</div>
</foreach>

Реализовать поддержку дочерних объектов

Реализовать поддержку дочерних объектов для панели администрирования (кнопка добавить дочерний объект, просмотр списка дочерних объектов как из текущей таблицы, так и из соседних).

Хелпер widgets

Привязка к объекту, строковой константе, url

Класс для работы с бд

Класс для простой работы с базой данных.
Должен выполнять следующие функции:
db()->sql();
db()->num_rows()
db()->fetch_array()
Предусмотреть поддержку дополнительных СУБД.

is_each(2)

Определение каждого второго, третьего, и так далее элемента

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.