Все проекты

IDКогда открытаНазваниеПроектКатегорияОжидается к датеКритичностьПриоритетСостояниеПрогрессКем открыта:
 31 26 Dec 2010 Выделенный пункт ModulesMenu30 Jan 2011КритичноВ мгновение!Завершено
100%
Артём Описание задачи

!

 41 26 Dec 2010 Довести до ума медиа Хранилища BundlesMediaBundleКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сделать такую штуку как «ханилище», в БД будет перечислены доступные хранилища для медиа данных (картинки, фотки и т.д.) в чем суть: например мы можем вынести статику на отдельный сервак, а группе новостей назначить использование такого-то хранилища, в тоже время если например хранилище забилось, мы просто создаём новое и прописываем в настройках группы новостей и модуль начинает выгружать картинку туда, в тоже время к каждой картинке надо приписывать id хранилища.

Также сделать индивидуальные хранилища картинок для групп юзеров и индивидуальных юзеров.

 51 08 Jan 2011 site_id в таблицах как разделитель для мультисайтовости + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

должен быть в

containers
folders
modules
nodes
themes

также нужен будет в модулях...

 61 14 Jan 2011 Модуль "Веб-формы" ModulesWebFormКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Осталось сделать:

  1. отправку оповещений о результатах веб формы на емаил администратору
  2. в просмотре результатов, помечать новые и прочитанные
  3. а также удалять результаты.
 87 22 Jan 2011 Ссылки на управление каталогом Unicat03 Feb 2011КритичноВ мгновение!Завершено
100%
Артём Описание задачи

1. Добавить запись
- http://loc/SmartCore/catalog/action_48/adultcoat/famale/?add_item – т.е. через GET запрос.
- http://loc/SmartCore/news/action_14/add/
2. Редартировать запись
- http://loc/SmartCore/catalog/action_48/adultcoat/famale/?edit_item=2
- http://loc/SmartCore/news/action_14/edit/?id=9 — надо переделать вот в такой формат:
- http://loc/SmartCore/news/action_14/?edit_item=9
3. Создать категорию
- http://loc/SmartCore/catalog/action_48/?add_cat_into=1 , где значение add_cat_into ID категорию в которой надо создать новую категорию.
4. Управление категориями
- http://loc/SmartCore/catalog/action_48/?edit_cat=5 - http://loc/SmartCore/news/action_14/?edit_cat=1

 89 22 Jan 2011 Перенести parser() в Юникат Unicat23 Jan 2011КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас он реализован в самих классах модулей Catalog и News.

 92 23 Jan 2011 Блокировка нод + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Блокировка нод в произвольных папках. Например включение ноды в корень сайта, так чтобы она отображалась только на внутренних разделах.

Надо сделать следующие режимы работы:
1) Блокировка ноды в папке, без наследования.
2) Блокировка ноды в папке, с наследованием.
3) Блокировка всех нод в папке, кроме заданной (например для файлменеджера, CAPTCHA и т.д.)

 101 30 Jan 2011 Управление свойствами записей. UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

* Создание групп свойств
* привязка групп свойств к категориям
* добавление свойств в группы
* настройка свойств

 103 11 Feb 2011 Helper_Validator + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сделать сабж, сейчас пока будет работать на ZF, но потом можно будет заменить на другой, либо применять разные библиотеки для разных данных.

 104 11 Feb 2011 Toolbar + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Вынести из папки Admin и оформить Тулбар как отдельную сущность в ядре.

 113 03 Mar 2011 Выделить административные методы модулей. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

такие методы как:

getFrontControls();
getFrontControlsDefaultAction();
getFrontControlsInnerDefaultAction();
nodeAction($params);
getParams();
createNode();

лучше вызывать не обращаясь напрямую к объекту модуля, а через свойство-объект модуля Admin:

$Module->Admin->getFrontControls();
$Module->Admin->getFrontControlsDefaultAction();
$Module->Admin->getFrontControlsInnerDefaultAction();
$Module->Admin->nodeAction($params);
$Module->Admin->getParams();
$Module->Admin->createNode();

где, Admin - это объект класса Module_SomeName_Admin

 118 05 Mar 2011 Поддержка мультисайтовости. UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Внедрить site_id в таблицы и запросы.

 119 07 Mar 2011 Убрать cookie_name из конфигурационного файла + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

этот параметр должен храниться в таблице сайтов.

 120 10 Mar 2011 Работа с cookie в UserProfile. Modules-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сделать в пост процессоре работу с куками через класс Cookie.

 124 19 Mar 2011 Наследование групп свойств с родительских категорий UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Метод getItemPrototype()

 129 22 Mar 2011 Хранение чисел в отдельной таблице UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

видимо надо выносить хранение числе в отдельную таблицу (items_content_integer) т.к. сортировка чисел в текстовом поле неадекватная :(

ну и видимо нужна будет items_content_double

еще как вариант, можно хранить числа в текстовом после, но с ведущими нулями, например:
090
100

только придётся всегда при извлечении средствами пхп обрезать нули..., а при записи, добивать

 131 01 Apr 2011 Проверка при создании папки + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Надо пофиксить глюк, при котором при создании папки, если папка уже существут, вываливается ошибка... надо сделать как в юникате т.е. присоздании существующей папки, либо переименовывать её, либо присваивать ури парту ид папки.

 132 12 Apr 2011 Хранение свойств в отдельных таблицах UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Появилась идейка хранить каждое свойство записи в своей таблице, например называться они будут по такой схеме items_s100_e1_title, где sXXX - это ид сайта, eXXX - ид экземпляра.

Вроде как при таком подходе проще будет сделать фильтрацию по нескольким полям...

 133 21 Apr 2011 Привязка групп свойств к категориям UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

через админку

таблица: properties_groups_category_relation

 137 14 May 2011 Сохрание контейнеров - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Глючит на парквебе :(

при сохранении пытается добавить контейнер

 170 17 Jul 2011 Ошибка при соханиении записи Юниката. - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '33-1-2-1' for key 'PRIMARY'

Похоже на теги...

 172 18 Jul 2011 Даты создания и id создателей. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сделать :)

В бд уже поля созданы для:

  • юникат тэгов, экземпляров, категорий и свойств.
  • контейнеров.
  • текстера.
 176 21 Jul 2011 Helper_Head + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Переместить функционал в объект EE.

 181 30 Aug 2011 Одиночный выбор в свойствах (select) UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас в БД записывается значение свойства типа select, это нехорошо, надо где-то в другом месте хранить список возможных значений с индексами и сделать возможность выбор по базе именно по индексам.

Скорее всего лучше будет хранить в таблице рядышком поля "индекс" (для быстрого поиска) и "техническое имя" (например для использования в uri_part).

Хотя нет... в таблице свойства надо хранить только индекс, а его расшифровку хранить в виде массива в параметрах свойства. Но надо учесть, что вариант селекта можно будет удалить только в том случае если оно не указано ни в одной записи, либо предлагать удалять выриант вместе с всеми значениями в БД.

Возможно надо будет внедрить что-то типа автоинкремента, чтобы ид вариантов были всегда уникальны.

 185 03 Sep 2011 Проверка на наличие полей. UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Важно при запросах на сортировку и фильтры в тех случаях когда таблиц нет :( например при создании ноды новостей, сразу вылазиит ошибка :(

 192 06 Sep 2011 Значение параметров нод по умолчанию. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Описывать в конструкторе, чтобы в случае, если у ноды отсутсвуют некоторые параметры, но запустилась корректно, без ошибок.

 193 07 Sep 2011 Медиа хранилище валит сервак :( - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

в случае если файл картинки отсутствует :((

 198 09 Sep 2011 Подгрузка классов из папки Application AdministrationBack-endКритичноВ мгновение!Завершено
100%
Артём Описание задачи

а то сейчас тупит по адресу /admin/module/ если юзаются модули не в папке system.

 199 09 Sep 2011 Тэги при создании записи UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

сейчас они доступны только при редактировании :((

 206 15 Sep 2011 DOM ready js-код + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сделать механизм при котором можно будет добавить некий js код в шапку страницы внутрь кода:

// Your code using failsafe $ alias here...
 
 211 19 Sep 2011 Ошибка при обращении к несуществующей ноде - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Например так /admin/structure/node/21/, при условии, что 21-ой ноды нет.

 229 01 Oct 2011 Доступ к ACTION для гостей + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Например сейчас гость может пройти по ссылке:

http://loc/SmartCore/news/zzz/action/74/edit/

а этого недолжно быть ;)

 237 13 Oct 2011 Возможность использовать внешние категории. UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Очень интересная возможность была бы! например можно вести отдельную ГЕО базу категорий, с регионами, городами и т.е. эти каталоги можно былобы внедрять в другие базы и привязывать к ним записи... конечно получится, что если уже внешнюю базу привинтили, то уже наглухо и во внешних базах нельзя удалять записи.

или может быть сделать как древовидные тэги оформленные в виде оттельного экземпляра каталога (задачка тут http://smart-core.org/task/index.php?do=details&task_id=190 )

 239 13 Oct 2011 Для языков по умолчанию можно внести дефолтные поля. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Например для папок и структур каталога. Это позволит при в односайтовых режимах уменьшить кол-во запросов в БД, а также в многосайтовых просто добавлять нужные переводы и всё.

При этом поле language_id в самой таблице не нужно т.к. само собой будет подразумеваться, что сайт на языке по умолчанию, а это значение будет задаваться в настройках сайта.

 240 14 Oct 2011 Проблемка при создаии папки - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Возможно встречается только при попытке создания в корне сайта:

http://site.ru/admin/structure/folder/create/1/?popup Notice: Undefined index: folder_id in /home/l/leman/leman-tour.ru/public_html/system/Kernel/Admin/Folder.php on line 116

Warning: Cannot modify header information - headers already sent by (output started at /home/site.ru/public_html/system/Kernel/Admin/Folder.php:116) in /home/site.ru/public_html/system/common.php on line 174

 253 02 Nov 2011 Может быть перенести themes_views в свойства папки? + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Ведь по сути, представление предъявляет требования к списку контейнеров, которые надо отобразить.

Тогда получается, что представления цепляются к сайту и можно считать необходимы для прописывания во всех подключенных темах.

По сути получается, что надо и engine_themes_layouts упразднить т.к. он тоже весьма костный.

Тут только нюансик есть, с форматом описания представлений т.к. их может быть много и для одной папки одно представление может быть задано, а другое нет.

 264 08 Nov 2011 Уничтожение сессии + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас при вызове метода destroy() устанавливается ключик is_active = 0, в тоже время session_id остаётся и при попытке, этимже юзером поднять сессию, появляется ошибка...

Пока что подкорректировал метод write() и в случае если is_active = 0, то этаже сессия заново активируется... но скорее всего это совсем неправильное решение.

Думаю лучше будет при уничтожении сессии, генерировать новый ключ session_id.

 268 16 Nov 2011 Запуск задач по расписанию (cron) + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Мысли начал оформлять тут: http://smart-core.org/wiki/Задачи_по_расписанию

Либы, которые пригодтся:

 298 11 Jan 2012 Актуализировать регистрацию. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Ошибка при регистрации:
Notice: Undefined index: groups in Z:\home\localhost\www\system\Kernel\Session\Handler.php on line 107
[Денвер: показать возможную причину ошибки]
Notice: Undefined index: groups in Z:\home\localhost\www\system\Kernel\Session\Handler.php on line 107

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\system\Kernel\Session\Handler.php:107) in Z:\home\localhost\www\system\bootstrap.php on line 143

 327 02 Feb 2012 Убрать из роутинга инфу о views и layout. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Идейно неправильно роутингу возвращать данные о макете и видах, хотя с другой стороны они задаются именно в папках и после роутинга к ним обращение уже не идёт.

 342 14 May 2012 Додумать и реализовать систему прав доступа. CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

$this→get('engine.security')→isGranted('ROLE_USER');

 343 14 May 2012 Запинать авторизацию! CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Пускай пока будет просто обёртка над FOSUserBundle.

 344 14 May 2012 Архитектура модулей CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Продумать следующие моменты:

  • Как получать данные для фронтальных элементов управления.
  • Создание ноды.
 350 23 Aug 2012 Глобальный префикс таблиц БД CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

http://stackoverflow.com/questions/7504073/how-to-setup-table-prefix-in-symfony2



Having just figured this out myself, I'd like to shed some light on exactly how to accomplish this. (also posted here)

Symfony 2 & Doctrine 2.1
Note: I use YML for config, so that's what I'll be showing.

Instructions

 1. Open up your bundle's Resources/config/services.yml
 2. Define a table prefix parameter:
    Be sure to change mybundle and myprefix_
    parameters:
        mybundle.db.table_prefix: myprefix_
 3. Add a new service:
    services:
        mybundle.tblprefix_subscriber:
            class: MyBundle\Subscriber\TablePrefixSubscriber
            arguments: [%mybundle.db.table_prefix%]
            tags:
                - { name: doctrine.event_subscriber }
 4. Create MyBundle\Subscriber\TablePrefixSubscriber.php
 
    <?php
    namespace MyBundle\Subscriber;
    use Doctrine\ORM\Event\LoadClassMetadataEventArgs;
    class TablePrefixSubscriber implements \Doctrine\Common\EventSubscriber
    {
        protected $prefix = '';
        public function __construct($prefix)
        {
            $this->prefix = (string) $prefix;
        }
        public function getSubscribedEvents()
        {
            return array('loadClassMetadata');
        }
        public function loadClassMetadata(LoadClassMetadataEventArgs $args)
        {
            $classMetadata = $args->getClassMetadata();
            $classMetadata->setTableName($this->prefix . $classMetadata->getTableName());
            foreach ($classMetadata->getAssociationMappings() as $fieldName => $mapping) {
                if ($mapping['type'] == \Doctrine\ORM\Mapping\ClassMetadataInfo::MANY_TO_MANY) {
                    $mappedTableName = $classMetadata->associationMappings[$fieldName]['joinTable']['name'];
                    $classMetadata->associationMappings[$fieldName]['joinTable']['name'] = $this->prefix . $mappedTableName;
                }
            }
        }
    }

</code>

 5. Enjoy
 359 20 Feb 2013 Редиректы при работе модулей. CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Надо перехватывать RedirectResponse возвращаемый модулем и выполрнять редирект пропуская дальнейшую сборку нод. Т.о. сохраняется цепочка "евентов".

 FS#378  В случае, если контроллер модуля вернул RedirectResponce(), то сразу же отдавать его клиенту, а сейчас эта страничка встраивается в блок, куда подключена нода.

 365 07 Apr 2013 SmartCoreHtmlBundle + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Конфигурирование: стили и другие вещи по умолчанию, например:

smartcore_html:
  service_name: html # можно сменить имя сервиса по умолчанию
  title: My Site
  doctype: html5
  lang: %locale%
  css:
    - 'css/site/screen.css'

А также инжектить сервис @html без подключения конфига:

imports:
    - { resource: @HtmlBundle/Resources/config/config.yml }

Упростить название блоков, например до: title, css, js, body_js и т.д.
Можно подсмотреть на:

 369 20 Dec 2013 Функция flash сообщений для твига. CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

сейчас вот так:

{% for flashMessage in app.session.flashbag.all() %}
    <div class="row-fluid">
        <div class="alert alert-success"><button type="button" class="close" data-dismiss="alert">&times;</button>{{ flashMessage[0] }}</div>
    </div>
{% endfor %}

а надо что-то типа

{{ engine_flashes() }}  

Также сделать разукраску под твиттер.

 370 22 Dec 2013 Рендеринг каждой ноды до рендеринга основного шаблона. CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Это нужно будет для ускорения отладки т.к. сейчас если выбрасывается ошибка в шаблоне модуля, то симфони не перехватывает её, ссылясь на то, то в твиге не должно выбрасываться исключений.

 378 21 Jan 2014 Моментальные редиректы из модулей CMSBundleCoreКритичноВ мгновение!Завершено
100%
Артём Описание задачи

В случае, если контроллер модуля вернул RedirectResponce(), то сразу же отдавать его клиенту, а сейчас эта страничка встраивается в блок, куда подключена нода.

 380 21 Jan 2014 Генерация пути к ноде CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас для редиректов нужно применять вот такую конструкцию:

return $this->redirect($this->get('cms.folder')->getUri($this->node->getFolderId()));

Надо придумать более короткий формат, например:

return $this->redirect($this->get('cms.router')->getNodeUri($this->node);
return $this->get('cms.router')->redirectToNode($node);
return $this->get('cms.router')->redirectToFolder($folder);

Притом учесть, что нода может находиться где-то в наследуемой папке и пока что нет механизмов вычислить откуда она была запущена... видимо надо будет разгребрать строку запроса, вытаскивать оттуда папки и если нода вклюена в эту цепочку папок, тогда считать, что это её настоящий путь, либо отдавать ссылку на папку в которую подключена нода.

Нужно избавиться от метода Folder::getUri() т.к. он не сериализуется... используется он сейчас всего в 2-х местах:

https://github.com/Smart-Core/CMS-Sandbox/blob/master/src/SmartCore/Bundle/CMSBundle/Controller/EngineController.php#L53

foreach ($router_data['folders'] as $folder) {
    $this->get('cms.breadcrumbs')->add($folder->getUri(), $folder->getTitle(), $folder->getDescr());
}

и в https://github.com/Smart-Core/CMS-Sandbox/blob/master/src/SmartCore/Bundle/CMSBundle/Listener/ModuleControllerModifierListener.php#L54

$basePath = substr(str_replace($request->getBaseUrl(), '', $node->getFolder()->getUri()), 1);
 385 30 Jan 2014 Создание пункта меню только со второго раза - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

В

/admin/module/Menu/1

почему-то не срабатывает с первого раза...

 388 08 Feb 2014 Не работает логаут, если поставлен крыжик "запомнить" - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Сабж :)

 391 16 Feb 2014 Валидация UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

http://symfony.com/doc/current/book/forms.html#adding-validation

 397 19 Feb 2014 Управление медиа коллекцией. Modules-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Основная особенность - надо продумать как сделать, чтобы этот модуль нельзя было подключить как ноду.

 405 27 Feb 2014 Параметры для типов свойств записей UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Например для select (choice) надо варианты выбора и т.д.

 408 02 Mar 2014 Создание и редактирование конфигураций UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Через командную строку, а также в модуле Unucat.

 416 05 Apr 2014 Переместить все ресурсы сайта в SiteBundle CMSBundle-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

В /app/ будет указываться только site.ini а всё остальное будет в SiteBundle.

Подумать как в таких условиях будет работать LiipThemeBundle.

Подумать есть ли в принципе смысл убирать всё по максимуму из /app/.

 421 11 Apr 2014 Не работает отключение фотки в слайдере - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Проверить и исправить.

 428 25 Apr 2014 Фронт-енд кнопку на управление каталогом UnicatКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Внутри категории ссылка на редактирование категории, а также всех записей в ней. А внутри записи только на редактирование записи.

 445 25 Jun 2014 Разделить конфиг сайта и конфиг движка. + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Например секция avalanche_imagine нужно настраивать для каждого сайта отдельно, но юникат использует определённые фильтры.

44701 Jul 2014Управление модулямиAdministration-КритичноВ мгновение!Новая
0%
Артём Описание задачи

Продумать как лучше будет управлять модулями. В частности можно сделать “стандартную поставку” движка, где не будет возможности удалить модули, а также пользовательские модули...

Нужно видеть список доступных для скачивания и установки модулей, а также уже установленных, а также установленных, но не включенных.

В AppKernel должны подгружаться только активные модули.

Список дефолтных модулей можно держать в CMSBundle.

http://amylabs.ru/web/images/yupe/2.png

http://amylabs.ru/web/images/yupe/3.png

 461 09 Aug 2014 Подключение конфига сайта + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Либо его может не быть, так же надо продумать, чтобы он мог перегружать (дополнять) основной конфиг.

imports:
    - { resource: '@SiteBundle/Resources/config/config.yml' }

сейчас приходится втыкать его в config_prod.yml и config_dev.yml, что есть некрасиво...

 462 25 Aug 2014 Очистка кеша ClassLoader'a + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Бывает при обновлении пакетов, меняются пути к файлам и требуется обновить кеш (обычно APCu), но он доступен только через веб, а не через консоль...

Надо придумать как его сбрасывать, не перегружая апач.

https://github.com/ornicar/ApcBundle

46523 Oct 2014Политика преобразования или валидациии частей адреса.CMSBundleCoreКритичноВ мгновение!Новая
0%
Артём Описание задачи

Например при создании/редактировании папки, можно автоматически любой текст преобразовывать в нижний регистр, заменять пробелы и транслитерировать русский текст, либо не пускать не латинские символы.

Было бы красиво, если в настройках сделать политики преобразования или валидации и пользователь сам будет выбирать как должны будут вести себя формы редактирования папки, статей, товаров в каталоге и т.д.

Можно сделать автоматическое удаление не корректных символов, например /

 472 24 Nov 2014 Конфигурирование фильтров avalanche_imagine + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Через пользовательского конфига, который может быть опциональным и не попадает в репу.

А хотя может быть лучше придумать как вынести конфиги для цмс-ки в бандл цмс-ки, а юзеру оставить в config.yml полную свободу действий.

47424 Nov 2014При загрузке картинок, удалять EXIF и пережимать их.+ Requests +-КритичноВ мгновение!Новая
40%
Артём Описание задачи

При переживании вроде как само будет обнуляться EXIF.

https://github.com/Smart-Core/CMS-Sandbox/blob/master/src/SmartCore/Bundle/MediaBundle/Provider/LocalProvider.php#L148

 475 30 Nov 2014 textarea в редакторе шаблонов Administration-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Подумать как вставлять тэг </textarea> а Ace Editor.

 481 08 Jan 2015 В выбранной группе меню отображабся пункты всех групп - Bugs -14 Jan 2015КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Это неправильно %)

 482 09 Jan 2015 Запилить LadyBug + Requests +КритичноВ мгновение!Завершено
100%
Артём Описание задачи

При обновлении до версии Symfony 2.6 падает дампер, варианта 2:

1) Сделать форк от версии 0.7 и пропатчить её.

2) Использовать новую версию, но разобраться как использовать старую тему (не modern)

Заметка от автора: https://github.com/raulfraile/LadybugBundle/issues/38

 488 20 Feb 2015 Возможность указывать шаблоны модулей для каждой ноды Administration-КритичноВ мгновение!Завершено
100%
Артём Описание задачи

Храниться будут в @Site/{module_name}/{template_name}.html.twig

 494 11 Mar 2015 При удалении ноды, удалять Router node id из папки - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

!

49820 Apr 2015Смягчить вывод ошибок медиалибы- Bugs -КритичноВ мгновение!Новая
0%
Артём Описание задачи

В случае, если картинки нету, то вот так:

An exception has been thrown during the rendering of a template (”Source image not found in app/../web/_media/portfolio/orig/2015/03/11/08_58_82ced27059.jpg”“) in “UnicatModule::items.html.twig at line 16.

50125 May 2015Указание владельца и интерпретатора для подогрева кеша+ Requests +КритичноВ мгновение!Новая
0%
Артём Описание задачи

Сейчас для линукс систем в bin/warmup_cache применяется интерпретатор sudo с указанием имени www-data. Надо сделать это всё настраиваемым, можно через parameters.yml

50430 May 2015Валидация при создании области- Bugs -КритичноВ мгновение!Новая
0%
Артём Описание задачи

Можно пропускать только латинские буквы, цифры и подчеркивание.

50530 May 2015Ошибка при отключении флажка "Allow password resetting"...- Bugs -КритичноВ мгновение!Новая
0%
Артём Описание задачи
  string(22) "Ошибка валидации формы"
  array(2)
      [allow_registration]: bool FALSE
      [allow_password_resetting]: bool TRUE
  bool FALSE
 512 28 Jun 2015 Пропадает имя файла при редактирование в ELfinder - Bugs -КритичноВ мгновение!Завершено
100%
Артём Описание задачи

http://prntscr.com/7m838z

51328 Jun 2015Возможность перегрузить файлыBundlesFelibBundleКритичноВ мгновение!Новая
0%
Артём Описание задачи

Например есть

jquery-colorbox:
    deps: jquery
    version: 1.5.10
    css: example1/colorbox.css
    js: jquery.colorbox-min.js

Но нужно использовать стиль example3/colorbox.css, тогда можно делать вызов что-то вроде:

{% set felib = felib_use('jquery-colorbox', null, {'css': 'example3/colorbox.css' }) %}
51508 Jul 2015Выставлять права на запись для *SiteBundle/EntityUnicatКритичноВ мгновение!Новая
0%
Артём Описание задачи

и подумать в какой момент :)

53014 Oct 2015Обработка POST данныхCMSBundleCoreКритичноВ мгновение!Назначенная
0%
Артём Описание задачи

Надо придумать красивый механизм маршрутизации данных для модулей.

53114 Oct 2015Починить восстановление пароля CMSBundle-КритичноВ мгновение!Новая
0%
Артём Описание задачи

Сейчас в форму не попадает _node_id т.к. она генерируется ручками.

Как временное решение - в app переопределяется шаблон и там явно прописывается node_id

Как вариант, можно таскать current_node_id в cms.context

53424 Oct 2015Авториазция и регистрация через oauth+ Requests +КритичноВ мгновение!Новая
0%
Артём Описание задачи

Изучить http://knpbundles.com/search?q=oauth

 535 28 Oct 2015 Генерация картинок медиалибы через маршрут BundlesMediaBundleКритичноВ мгновение!Завершено
100%
Артём Описание задачи

Посмотреть:

http://knpbundles.com/search?q=media

https://github.com/Tessi-Tms/TmsMediaBundle

54125 Mar 2017Ручное отслеживание уникальности таксоновUnicatКритичноВ мгновение!Новая
0%
Артём Описание задачи

В связи с тем, что mysql не учитывает NULL при уникальности, надо это проверять вручную.

 246 30 Oct 2011 show_in_list и show_in_view в опциях UnicatКритичноНемедленноЗавершено
100%
Артём Описание задачи

Как уже сделал для старого юниката.

 257 03 Nov 2011 Починить .htaccess в папке scripts InstallationSetupКритичноНемедленноЗавершено
100%
Артём Описание задачи

Почему то, вот так глючит :(

Options -Indexes
Options -FollowSymLinks

ErrorDocument 401 /index.php
ErrorDocument 403 /index.php
ErrorDocument 404 /index.php
 310 23 Jan 2012 DB переделать на Registry. + Requests +КритичноНемедленноЗавершено
100%
Артём Описание задачи

Сабж :)

54315 Oct 2017Продумать пользовательский интерфейсAdministration-КритичноНемедленноНовая
0%
Артём Описание задачи

https://nubex.ru/support/screencasts/

 25 26 Dec 2010 Captcha + Requests +КритичноСрочноЗавершено
100%
Артём Описание задачи

Продумать механизм каптчи, скорее всего это будет компонент.

 58 12 Jan 2011 Поле module_id в таблице модулей. + Requests +КритичноСрочноЗавершено
100%
Артём Описание задачи

Судя по всему ключ module_id ненужен т.к. модули мы можем идентифицировать по его имени.

 69 19 Jan 2011 doctype и ajax запросы. + Requests +КритичноСрочноЗавершено
100%
Артём Описание задачи

Весьма важное замечание: аякс должен иметь возможность отдавать данные не в html фрмате, а например json. если мы обработчик аякс запросов оформляем как модуль, то надо иметь возможность убирать html обертки т.е. докстайп, хеадер, и закрывающие теги боди и хтмл.

как вариант, можно эту команду передавать шаблонизатору через значение doctype, например так явно и указать 'ajax' :)

 217 22 Sep 2011 Максимальный размер загружаемых картинок. UnicatКритичноСрочноЗавершено
100%
Артём Описание задачи

Возможность задавать максильно допустимый размер картинок, чтобы не хранить огромные варианты например 4000х3000 рх... можно ограничивать в 1600х1200 рх.

Сейчас сделано пока форсированно в 1600х1200 рх. Надо придумать где лучше задавать этот параметр... в идеале наверно в параметрах поля.

!проверить откуда сейчас берется размер (в байтах) оригинального файла.

38229 Jan 2014Сортировка нодCMSBundle-КритичноОбычныйНовая
0%
Артём Описание задачи

Например сейчас на главной папке подключена нода Виджета с позицией 10 в блок menu, допустим в другой вложенной папке подключена нода Текстера в этот блок, но с позицией 0, но выводится текстер ниже виджета.

 396 17 Feb 2014 Сделать RepositoryManager (UnicatBaseManager) UnicatКритичноОбычныйЗавершено
100%
Артём Описание задачи

Он позволит избавиться от постоянного таскания сущности UnicatRepository в контроллерах и др. местах.

40324 Feb 2014Бозопасные имена частей URIUnicatКритичноОбычныйНовая
0%
Артём Описание задачи

Подумать может быть сделать возможность использования кириллических символов, либо жестко транслитерировать всё и удалять левые символы.

 455 15 Jul 2014 timezone CMSBundle-КритичноОбычныйЗавершено
100%
Артём Описание задачи

Сделать настройку временной зоны.

 44 26 Dec 2010 parser_strict_uri и поддержка файлов. CMSBundle-КритичноНизкийЗавершено
100%
Артём Описание задачи

Реализовать parser_strict_uri – жесткий или мягкий механизм обработки строчки запроса. А также поддержку папок в качестве файлов.

Обсуждение тут: “Ядро - Основные принципы - Редиректы”.
И тут “Ядро - Основные принципы - Папки и файлы”.

Потестил тут http://nibbler.silktide.com/en_US/reports/sandbox.smart-core.org и выдало, что надо делать редирект 301 на дубликатах, например на http://sandbox.smart-core.org/news/ и http://sandbox.smart-core.org/news

 110 24 Feb 2011 Починить getItems() С сортировкой по указанному свойств ...UnicatВысокоВ мгновение!Завершено
100%
Артём Описание задачи

@todo ВАЖНО! сейчас в результате мы получаем только те записи у которых пристутсвует
свойство по которому задана сортировка. Надо сделать более универсальную схему при
которой будут отображаться ВСЕ записи, а те у которого свойста для сортировки не
окажется, помещать в конец таблицы.

 196 08 Sep 2011 Редиректы для доменов с префиксом www. CMSBundleВысокоВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас, если домен с www. то просто редиректится на основной.
Надо сделать настройку, где админ сайта будет иметь возможность выбирать политику редиректов, либо форсированно на домен с www. либо форсированно без него.

Думаю, оставлять возможность работы по тому адресу, как набрал юзер нет смысла.

47630 Nov 2014Список поддерживаемых медиа форматов+ Requests +ВысокоВ мгновение!Новая
50%
Артём Описание задачи

Притом лучше задавать отдельно для каждого применения медиалибы, например для гелерейки нужно разрешать только джипеги.

А также максимальный размер файла и ресайзы картинок.

 19 24 Dec 2010 breadcrumb механизм для модулей + Requests +ВысокоНемедленноЗавершено
100%
Артём Описание задачи

Продумать beadcrumb механизм для модулей.!!!

 112 02 Mar 2011 Методы класса FoldersTree убрать в класс Folder + Requests +ВысокоНемедленноЗавершено
100%
Артём Описание задачи

дабы всё было в одном месте ;)

 149 29 Jun 2011 Зачем параметры в nodeAction() ? + Requests +ВысокоНемедленноЗавершено
100%
Артём Описание задачи

Надо проверить, зачем административные методы nodeAction, объявлены как nodeAction($params) может быть $params совсем не нужны?

37721 Jan 2014Автоматическое построение меню на основе папок.ModulesMenuВысокоНемедленноНовая
0%
Артём Описание задачи

Принцип работы будет следующий:

  1. Создаётся группа меню, указывается режим работы (ручное или автоматическое)
  2. Указывается папка от которой следует начинать построение меню.
  3. Указать глубину вложенности.
  4. Указать папки, которые следует исключить.

Есть более интересная идейка: сделать сами “пункты” меню с автоматическим построением т.о. можно будет комбинировать обычные пункты меню с автоматическими.

38910 Feb 2014Google AnalyticsModules-ВысокоНемедленноНовая
0%
Артём Описание задачи

Основная фишка - это привязка к домену. Подключать можно будет как ноду, а можно как функцию твига. В настройках модуля будут только ключ сайта и его домен. Это позволит на локалке не гонять сабж.

 390 10 Feb 2014 Форма редактирования мета-тэгов для папок CMSBundle-ВысокоНемедленноЗавершено
100%
Артём Описание задачи

Внезапно обнаружилось, что её нет :)

 422 11 Apr 2014 Фронт-енд кнопку на управление слайдером ModulesSliderВысокоНемедленноЗавершено
100%
Артём Описание задачи

Сделать :)

 426 24 Apr 2014 Настройку редактора для свойства категории textarea UnicatВысокоНемедленноЗавершено
100%
Артём Описание задачи

Сейчас рисуется дефолтный html, а нужно визивиг и ace.

 486 13 Feb 2015 Разные файлы для разных версий библиотек. BundlesFelibBundleВысокоНемедленноЗавершено
100%
Артём Описание задачи

Наример для bootstrap 2, по умолчанию: css/bootstrap.min.css и css/bootstrap-responsive.min.css, а для 3-го уже просто css/bootstrap.min.css и css/bootstrap-theme.min.css

Также было бы удобно еще для 3-го бутстрапа указывать путь к теме.

 15 24 Dec 2010 config.ini + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Довести до ума задумку с конфигами.

 26 26 Dec 2010 Инсталлятор + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Создать скрипт инсталлятора системы, желательно с распаковкой из .zip архива.

 56 11 Jan 2011 Раздел [debug] в config.ini + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

возможно есть смысл убрать раздел [debug] и внести эти значения в секцию [system_settings] с префиксом ключей "debug_", например:

debug_enable = off
debug_db_query_count = on
debug_runtime = on
debug_post_data =off

 65 15 Jan 2011 Выставлять timezone для каждого сайта отдельно. + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Убрать из бутстрапа и переместить в конструктор, а зону хранить в таблице engine_sites.

 78 20 Jan 2011 Описание и фотки на категорию. UnicatВысокоСрочноЗавершено
100%
Артём Описание задачи

Можно впаять жестко, а можно реализовать эту возможность через подключение какой-то записи, которая будет являтся служебной для данной категории.

 130 25 Mar 2011 Keywords и Description + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Продумать где хранить эти данные и логику работы...

пока храню в таблице sites,.. но это видимо неправильно т.к. несовместимо с мультиязычностью..

Видимо лучше всего будет хранить их в папках.

 180 28 Aug 2011 Аутентификация и Авторизация - разделить методы. + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Аутентификация - определение пользователя, кто есть кто.

Авторизация - наделение прав аутентифицирванному юзеру.

 252 02 Nov 2011 Конфигурирование настроек сайта + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Есть мысль хранить параметры не в отдельных полях БД, а в сериализованном виде в одном поле, например так:

$site = array(
	'language_id' => 'ru',
	'default_theme_id' => 1,
	'short_name' => 'Smart Core CMF',
	'full_name' => 'Smart Core CMF (PHP/MySQL CMS/Content Managment Framework)',
	'timezone' => 'Asia/Novosibirsk',
	'cookie_prefix' => 'Smart_Core_CMF_',
	'session_name' => 'SMART_CORE_SESSION2',
	'robots_txt' => 'User-Agent: *
Disallow: /cgi-bin/
Disallow: /admin/',
	'create_datetime' => '2011-00-00 00:00:00',
	'multi_language' => false,
	'dir_application' => 'application/',
	'dir_themes' => 'themes/', 
	'root_layout' => false,
	'root_view' => false,
	'layouts' => 'main
blank',
	'views' => 'content(full_content, 3columns, 2columns); ',
	);
 267 16 Nov 2011 Сервис почтовых рассылок + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Реализовать класс Maillist, мысли по самому механизму отсылки писем тут: http://smart-core.org/wiki/Почтовые_рассылки

Таблицы в БД уже сделал, но зада ча тесно связана с cron.

 270 18 Nov 2011 Убрать свойство $this->theme_id в Kernel + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

А запросы в engine_themes_layouts и engine_themes_views убрать в поля папок.

 279 05 Dec 2011 Оптимизация методов Форм UnicatВысокоСрочноЗавершено
100%
Артём Описание задачи

Например есть сложные методы getCreateItemFormData() и getEditItemFormData(), думаю надо подумать как выделить у них нечто общее, например сделать защищенный метот getBaseItemFormData(), а методы создания и редактирования будут в него только вносить свои корректировки, например метод Edit будет добавлять данные по умолчанию, также пару служебных полей и кнопку удалить...

Задача связана с тем, что сейчас слишком много кода дублируется и увеличивается вероятность возникновения ошибки при внесении изменений в одном месте и не внесении в другом.

 301 13 Jan 2012 return self::$_query_count; в РНР 5.3.9 - Bugs -ВысокоСрочноЗавершено
100%
Артём Описание задачи

Ругается :((

PHP Fatal error: Access to undeclared static property: D
B::$_query_count in /var/www/localhost/htdocs/SmartCore/system/Kernel/DB.php on line 157, referer: http://10.4 .4.4/SmartCore/catalog/

Видимо баг: https://bugs.php.net/bug.php?id=54626

 306 21 Jan 2012 Переименовать parser_node_id в router_node_id. + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

По смыслу в mvc лучше вписывается :)

 308 22 Jan 2012 Путь от корневой директории веб сервера. + Requests +ВысокоСрочноЗавершено
100%
Алексей Описание задачи

для получения пути от корня.
$baseUri - должна быть в глобальном классе конфига.
при вызове getBaseUri(true) сново просщитает путь.
так понимаю что для быстродействия $baseUri должны быть, и генерироватся 1 раз при выполнении скрипта с возможностью перегинерации.
код выдрал отсюда https://github.com/codeguy/Slim/blob/master/Slim/Http/Uri.php

function getBaseUri( $reload = false ) {
	$baseUri = '/';
	if ( $reload || is_null($baseUri) ) {
            $requestUri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['PHP_SELF']; //Full Request URI
            $scriptName = $_SERVER['SCRIPT_NAME']; //Script path from docroot
            $baseUri = strpos($requestUri, $scriptName) === 0 ? $scriptName : str_replace('\\', '/', dirname($scriptName));
            $baseUri = rtrim($baseUri, '/');
        }
        return $baseUri;
    }
 364 01 Apr 2013 Умный редирект при сохранении ноды. Administration-ВысокоСрочноЗавершено
100%
Артём Описание задачи

Сейчас редиректится в папку ноды, а надо чтобы в папку откуда была редактирована нода, но при условии, что она находится в ней по прежнему.

$node_path = str_replace($request->getBasePath(), '', $this->get('engine.folder')->getUri($node->getFolder()->getId()));
$referer_path = str_replace('http://' . $request->server->get('HTTP_HOST') . $request->getBasePath(), '', $request->server->get('HTTP_REFERER'));
 375 18 Jan 2014 Маршруты админок модулей сделать общими с системой. CMSBundleCoreВысокоСрочноЗавершено
100%
Артём Описание задачи

Сейчас сделаны отдельные сервисы роутинга для каждого модуля, но в случае с админкой похоже, что это ненужно и вполне красиво будет работать в общем стеке роутов.

Пока используется метод для твига

{{ path_admin('smart_menu_admin') }}

, а надо

{{ path('smart_menu_admin') }}

следовательно небудет метода generateModuleAdminUrl() в контроллере.

 381 27 Jan 2014 Передача в шаблон контекст ноды CMSBundle-ВысокоСрочноЗавершено
100%
Артём Описание задачи

Чтобы в контроллерах не писать аргумент:

    return $this->render('MyModule::my.html.twig', [
        'node' => $this->node,
    ]);

Придумать как можно отдавать более "магически" ;) может быть даже сделать как в http://rad.knplabs.com/#template

 386 04 Feb 2014 Система уведомлений AdministrationВысокоСрочноЗавершено
100%
Артём Описание задачи

Сделать что-то наподобии Apple Push Notification Service но в рамках админки цмс-ки. Например модуль Feedback может отсылать уведомления о новых пришедших сообщениях.

http://sciactive.com/pnotify/

40224 Feb 2014Отладка виджетовModulesWidgetВысокоСрочноНовая
0%
Артём Описание задачи

Сейчас если приходит ошибка от виджета, то модуль виджета возвращает ошибку:

return new Response($response->getStatusCode() . ' ' . Response::$statusTexts[$response->getStatusCode()]);

Нужно сделать что-то более гибкое, например во всплывающем окошке для админка или в debug режиме показывать контент ошибки.

 406 28 Feb 2014 Формы для даты и времени + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

Не выставлять для даты класс input-block-level

41106 Mar 2014Редирект на страницу записи, если был изменён item.slugUnicatВысокоСрочноНовая
0%
Артём Описание задачи

Сейчас выпадает 404 т.е. редиректится тупо по GET значению redirect_to

42928 Apr 2014Функция подключения Ace редактора из твига+ Requests +ВысокоСрочноНовая
0%
Артём Описание задачи

С возможностью навешивать на несколько полей texarea.


ссылки по теме

43319 May 2014HTTP обратный прокси (фронтенд кеш)+ Requests +ВысокоСрочноНовая
0%
Артём Описание задачи

Для гостей, с хранилищами на файлах и в мемкеше.

https://github.com/FriendsOfSymfony/FOSHttpCacheBundle

http://buytaert.net/making-drupal-8-fly

 460 23 Jul 2014 Решить проблемму с INTL (twig filter localizeddate) + Requests +ВысокоСрочноЗавершено
100%
Артём Описание задачи

На линухах вместо имён месяцев отображается их порядковый номер, а на IIS всё нормально.

Также на линухах localizeddate показывает на час больше реального времени.

49921 Apr 2015Ping Sitemap to Google ,Bing ,Yahoo Yandex & Baidu Sear...+ Requests +ВысокоСрочноНовая
0%
Артём Описание задачи

http://www.shoutingblogger.com/2013/08/Ping-Sitemap-to-Google-Bing-Yahoo-Yandex-Baidu-Search-engine.html

50630 May 2015Переход к управлению модулем из редактирования нодыAdministration-ВысокоСрочноНовая
0%
Артём Описание задачи

Наример для текстера в маршруте cms_admin_structure_node_properties опрашивать модуль текстера на предмет элементов управления, там будет к примеру “Редактировать текст”, а для меню, будет “Редактирование пунктов меню”.

50805 Jun 2015Сделать проверку на связи папки с модулями при удаленииAdministration-ВысокоСрочноНовая
0%
Артём Описание задачи

Например сейчас нельзя удалить из-за того, что ссылается модуль меню.

Как вариант, можно рассылать всем модулям событие о том, что удаляется папка, а они сам уже будут реализовывать механизм как с этим всем поступить.

 514 28 Jun 2015 Обработка изображений при малом кол-ве памяти BundlesMediaBundleВысокоСрочноЗавершено
100%
Артём Описание задачи

Например при 128Мб медиалиба отваливается с такой ошибкой

php.EMERGENCY: Fatal Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 19648 bytes) {”type”:1,”file”:”/vendor/imagine/imagine/lib/Imagine/Gd/Image.php”,”line”:602,”level”:6135,”stack”:[]} []

request.CRITICAL: Uncaught PHP Exception Symfony\Component\Debug\Exception\OutOfMemoryException: “Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 19648 bytes)” at /vendor/imagine/imagine/lib/Imagine/Gd/Image.php line 602 {”exception”:”[object] (Symfony\\Component\\Debug\\Exception\\OutOfMemoryException(code: 0): Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 19648 bytes) at /vendor/imagine/imagine/lib/Imagine/Gd/Image.php:602)”} []

Придумать как обходить это ограничение...

52215 Aug 2015Настройки атрибутов и офрмления формы из админкиModulesWebFormВысокоСрочноНовая
0%
Артём Описание задачи

Сейчас, если нужно кастомизировать форму, то приходится создавать тему модуля. Надо продумать как можно задавать атрибуты элементов, а также включать и отключать разметку по умолчанию.

 540 11 Dec 2015 Применение собственного шаблона корневой папки - Bugs -ВысокоСрочноЗавершено
100%
Артём Описание задачи

Если в корень подключен модуль с роутингом, то не подхватывается собственный шаблон главной.

 50 07 Jan 2011 Установка фокуса в элементах формы при загрузке страниц ...+ Requests +ВысокоВысокийЗавершено
100%
Артём Описание задачи

заметно повысит производительность при администрировани и т.д... например при создании папки сейчас приходится мышкой тыкать в поле "заголовок" и только потом начинать заполение, что есть неудобно.

http://htmlcssjs.ru/HTML/?27

HTML4

<input name="login" id="form-login">
<script type="text/javascript">
document.getElementById('form-login').focus();
</script>

HTML5

<input name="login" id="form-login" autofocus>
 54 11 Jan 2011 Путь к папке с файлами приложения. application_dir + Requests +ВысокоВысокийЗавершено
100%
Артём Описание задачи

Возможно нет смысла хранить это значение в конфиге, а лучше задавать в таблице engine_sites,
а возможно и вообще отказаться от кунфигурирования этого параметра и жестко принять значниене, например "_app".

 111 01 Mar 2011 Сопостовление доменов и сайтов. + Requests +ВысокоВысокийЗавершено
100%
Артём Описание задачи

Думаю более красивое решение будет, если из таблицы engine_sites убрать поле domain и создать табличку engine_sites_domains в которой указывать связи сайтов и доменов.

 356 19 Jan 2013 Права доступа при подогреве кеша + Requests +ВысокоВысокийЗавершено
100%
Артём Описание задачи

При php bin/warmup_cache на папку cache/prod ставится хозяин root (от юзера запустившего пхп из консоли), а нужно www-data (т.е. от апача)

что-то наверно типа:

system('chown -hR www-data:www-data ' . $rootDir . '/app/var/cache/prod/');

но надо как-то более универсально определять названия и группу www-data а также путь к кешу брать с $kernel.

45921 Jul 2014Мультизагрузка фотокModules-ВысокоВысокийНовая
0%
Артём Описание задачи

Найти плагинчик под jquery и сделать как в вк :)

http://www.fyneworks.com/jquery/multiple-file-upload/

http://designscrazed.net/html5-jquery-file-upload-scripts/

46805 Nov 2014Синтаксис включения областейCMSBundleВысокоВысокийНовая
0%
Артём Описание задачи

Сейчас шаблонам передаются данные в виде переменной, наример так:

  {{ content }}

Думаю лучше генерировать области через функцию, например так:

  {{ cms_region('content') }}

или короче

  {{ region('content') }}

Это метод позволит сразу же обрамлять области тэгами, а также избавит от необходимости толкать шаблонам переменные, а можно будет ответы от модулей подтягивать через другое место.

 500 14 May 2015 Конфигрурирование разрешенных типов файлов в elfinder + Requests +ВысокоВысокийЗавершено
100%
Артём Описание задачи

Сейчас жестко вбито

upload_allow: ['image/png', 'image/jpg', 'image/jpeg']
upload_deny: ['all']

Надо где-то красиво и удобно настраивать.

52110 Aug 2015Задать версии пакетам (перед релизом)+ Requests +ВысокоВысокийНовая
0%
Артём Описание задачи

Сейчас в composer.json задаются версии пакета, как “dev-master”

"smart-core/felib-bundle": "dev-master",

Надо сделать тэги и объявить подключение ВСЕХ базовых бандлов и модулей в composer.json в репозитории CMS.

 233 06 Oct 2011 Доделки Таксономии Modules-ВысокоОбычныйЗавершено
100%
Артём Описание задачи
  1. генерировать ошибку 404, если запрошенных тэгов нет,
  2. как-то придумать опцию для сортировки... можно например в свойстве ноды задавать поле и направление.
 249 01 Nov 2011 Запретить смену языка сайта + Requests +ВысокоОбычныйЗавершено
100%
Артём Описание задачи

По умолчанию будет только один выбранный язык, а дальше к сайту можно будет толкьо подключать дополнительные языки.

 293 27 Dec 2011 Парсер должен возвращать набор всех данных. CMSBundleВысокоОбычныйЗавершено
100%
Артём Описание задачи

Из-за того, что сейчас парсер ядра модифицирует ЕЕ, его результат невозможно скешировать... что есть очень плохо ;)

Есть сложности с :
- правами доступа
- обработкой служебных запросов (ajax, admin, action)

 317 29 Jan 2012 Переименовать контейнеры в блоки. + Requests +ВысокоОбычныйЗавершено
100%
Артём Описание задачи

Дело в том, что фактически понятие "блок" часто применяется в качестве блоков на страницах, например в друпале.

А вот термин "контейнер" применяется при "Сервис-ориентированной" архитектуре.

ЗЫ: Symfony2 №284

46705 Nov 2014Режим просмотра областейAdministration-ВысокоОбычныйНовая
0%
Артём Описание задачи

Как у друпала

 135 08 May 2011 Выборка записей в нескольких категориях UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Перенести в массив $options указание категорий в которых надо сделать выборку.

а именно $options['categories'], как описано в вики http://smart-core.org/wiki/Юникат#.D0.97.D0.B0.D0.BF.D0.B8.D1.81.D0.B8_2

т.е.

  // Указываются категории в которых надо сделать выборку.
  // Также можно вообще не указывать никакой категории, тогда выберутся все записи экземпляра.
  // Перечисление делается через запятую, например: "1,4,77".
  // Также возможно указание значение 'all', в это случае выберутся все записи не зависимо от категорий.
 146 03 Jun 2011 Создание локального юзера CMSBundleСреднеВ мгновение!Завершено
100%
Артём Описание задачи

В табл users_local.

Продумать, разные политики поведения, если юзер впервые заходит на сайт...

Также важно подумать как поступать, если в локальной БД возникает конфликт повторяющегося емаила в пределах одного сайта...

17520 Jul 2011Задание произвольных данных для head в макетах.+ Requests +-СреднеВ мгновение!Новая
0%
Артём Описание задачи

В частности надо иметь возможность задавать условные комментарии для ие.

 201 12 Sep 2011 Возможность не указывать папку для пункта меню. ModulesMenuСреднеВ мгновение!Завершено
100%
Артём Описание задачи

т.к. например если внешнюю ссылку, и указать например крневую папку, то они выделятся активными, когда будем находиться на главной :((

 204 14 Sep 2011 Обязать указывать группу меню для ноды ModulesMenuСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Т.к. сейчас можно не указывать группу, а пункты меню всё равно можно создавать... они создаются в ид - 0, что не есть гуд...

 210 16 Sep 2011 !!! Заголовок при просмотре записи UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас форсированно запрашивается свойство title, соответственно, если его нет, то вылетает с ошибкой...

Думаю надо сделать возможность настраивать поле, которое будет выступать в качестве заголовка.

Также ошибка при администрировании записей:

Notice: Undefined index: title in E:\localhost\SmartCore\system\Components\Unicat\EditItems.tpl on line 34

Как вариант, можно сделать выставление заголовка на основе uri_part, в случае если не задано или пустое свойство...

21420 Sep 2011Выбор по нескольким категориямUnicatСреднеВ мгновение!Исполняется
10%
Артём Описание задачи

Например вот так: http://yaca.yandex.ru/yca/geo/Russia/Siberian/Novosibirsk_Region/Novosibirsk/cat/Computers/

т.е. задаётся например с ключем ‘geo’ один путь каталога, затем с ключом ‘cat’ другой, в результате только те записи, которые есть и там и там. и соответственно оба дерева категорий.

 261 04 Nov 2011 Формат структуры данных для построения меню. AdministrationToolbarСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Как для главного меню, так и для "ярлыков".

Главное меню будет запрашиваться AJAX запросом, например по адресу http://site.ru/ajax/admin/toolbar/getmainmenu/.

А ярлычки должны быть встрены в страницу т.к. они зависят от текущего раздела на сайте.

Ссылки по теме:
http://smart-core.org/wiki/Тулбар
http://smart-core.org/wiki/Тулбар:Simple

 278 04 Dec 2011 Доделать метод getItemPrototype UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Обработку аргумента $structures.

 291 24 Dec 2011 При регистрации надо запоминать вводимые данные ModulesUsersСреднеВ мгновение!Завершено
100%
Артём Описание задачи

А сейчас, если каптча не прошла, то данные не запоминаются :(

 300 13 Jan 2012 Настройка суффиксов записей UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас хардкодно применяется суффикс .html, что не есть правильно (кстати надо переименовать "постфикс" на "суффикс), а надо сделать возможность настраивать через оппции экземпляра юниката.

Также можно суффикс использовать пустым, а отличать его от папки отсутствием завершающего слеша.

 311 24 Jan 2012 Оптимизировать сессии + Requests +СреднеВ мгновение!Завершено
100%
Артём Описание задачи

Оптимизировать сессии

Продумать логику работы с вспомогательными функциями:
- getToken()
- setToken()
- getUserGroups()
- getUserData()
- setUserData()

Вроде как красивее всего будет возможность применения разных "хендлеров", например даже нативный файловый от РНР. При этом сохранять данные в неймспейсах самой сесиии. Но по умолчанию юзать хендлер с БД, у которого есть дополниельные поля:
- token
- user_id
- user_data
- user_agent
- ip_address

Так же основательно продумать схему "Flash" сессиий.

например в Cake так:

$this->Session->setFlash('Your post has been saved.');

Уничтожение сессии

http://smart-core.org/task/index.php?do=details&task_id=264

Сейчас при вызове метода destroy() устанавливается ключик is_active = 0, в тоже время session_id остаётся и при попытке, этимже юзером поднять сессию, появляется ошибка...

Пока что подкорректировал метод write() и в случае если is_active = 0, то этаже сессия заново активируется... но скорее всего это совсем неправильное решение.

Думаю лучше будет при уничтожении сессии, генерировать новый ключ session_id.


Удаление несколько ключей в сессии

http://smart-core.org/task/index.php?do=details&task_id=215

Метод deleteKey();

Вызываться будет например так:

$this->Session->deleteKeys('key1', 'key2', 'key3');

т.е, работать будет через разбор аргументов... либо передавать ключи в массиве.


Пространства имен в сессиях

http://smart-core.org/task/index.php?do=details&task_id=144

По типу как в Zend_Session_Namespace.

 313 26 Jan 2012 Валидация имени свойства UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Должен состоять только из енг, цифр и знака подчеркивания!
знак - надо заменять на _

 314 26 Jan 2012 Разбор запроса, через класс Uri + Requests +СреднеВ мгновение!Завершено
100%
Артём Описание задачи

Там же выполнять валидацию.

 332 05 Feb 2012 Где хранить список тем? CMSBundleСреднеВ мгновение!Завершено
100%
Артём Описание задачи

Сейчас в таблице engine_themes, что как мне кажется нехорошо т.к. для большинства задач нужна всего одна тема по умолчанию.

Как вариант можно конфиругировать через настройки сайта! Тем более после задачи № 331, из настроек сайта будут убраны поля:

  • Макеты
  • Представления в макетах
  • Представление для корневой папки

Также надо избавиться от таблиц engine_themes_extras и engine_themes_extras_values !

 333 05 Feb 2012 Выделить работу с данными в класс Unicat_Model UnicatСреднеВ мгновение!Завершено
100%
Артём Описание задачи

т.е. преобразовать в полноценный MVC.

 14 24 Dec 2010 Файловый менеджер для визивигов Modules-СреднеНемедленноЗавершено
100%
Артём Описание задачи

скорее всего будет запускаться как модуль подключенный в определённую папку ядра. Притом скорее всего его надо будет адаптировать чтобы он умел работать как с tinymce, так и с fckeditor.

 158 10 Jul 2011 Подмена макета только для главной папки. CMSBundleСреднеНемедленноЗавершено
100%
Артём Описание задачи

Важно создать механизм при котором будет возможность задать отдельный макет, который будет использоваться только на главной папке, но в тоже время тамже надо будет указывать макет, который будет наследоваться с главной и использовать во вложенных папках.

Похоже, что можно просто задавать в свойствах сайта.

 216 21 Sep 2011 Доработки в "Восстановление пароля" Modules-СреднеНемедленноЗавершено
100%
Артём Описание задачи

1) Добавить каптчу на обе формы.

2) Переделать на чистый УРИ т.е. без ГЕТ запроса вида ?key=

 243 18 Oct 2011 Проверка на уникальность имени свойства записи UnicatСреднеНемедленноЗавершено
100%
Артём Описание задачи

Метод createProperty() должен проверять на уникльность вводимое имя поля.

 33 26 Dec 2010 Некорректно генерируется список ModulesMenuСреднеСрочноЗавершено
100%
Артём Описание задачи

Вложенные списки некорректно генерируют хтмл код, в случае когда после 2-х ярусной вложенности сразу идет перескок на 0-ую, например:

1.1
1.2
  1.2.1
  1.2.2
    1.2.2.1
1.3
 52 09 Jan 2011 Настройки (табл. engine_settings) - определиться какие  ...CMSBundle-СреднеСрочноЗавершено
100%
Артём Описание задачи

Настройки хранить в конфигах, а в БД записывать только значения отличных от дефолтных, хотя и их тоже можно скидывать в конфиги.

При выборке кешировать в АРС.

 66 15 Jan 2011 Активация пользователей через е-маил ModulesUsersСреднеСрочноЗавершено
100%
Артём Описание задачи

Модуль UserRegistration после регистрации будет отправлять е-маил с неким хешем и уникальной ссылкой и только после перехода по этой ссылке юзер в системе будет активирован.

 79 20 Jan 2011 Дублирующиеся группы свойств UnicatСреднеСрочноЗавершено
100%
Артём Описание задачи

Вот тут http://auto-sale.com.ua/index.php?page=sto&id=2 интересный момент: 5 одинаковых групп свойств для разных марок машин... надо продумать как заложить такую возможность.

Скорее всего лучше сделать некие "шаблоны" на базе которых можно будет создавать группы свойств или даже "подгруппы" т.е. все эти свойства будут действительно обладать разными именами (хотя заголовки у них будут одинаковые.

 167 13 Jul 2011 Сохрание пользователя AdministrationBack-endСреднеСрочноЗавершено
100%
Артём Описание задачи
  1. Сейчас если не выбрать ни одну группу, то юзер изчезает из списка.
  2. Сделать сохранение юзера, сейчас сохраняются только группы.
 186 03 Sep 2011 Возможность использования разных медиахранилищ UnicatСреднеСрочноЗавершено
100%
Артём Описание задачи

Например чтобы можно было картинки хранить в одном месте, а файлы в другом.

Можно задавать медиа коллекцию в параметрах свойства, например только для типов: img, file, textarea. Еще красивее будет, если мы будет к экземпляру подключать список доступных медиахранилищ, а при редактировании параметров свойств, просто выбирать из доступных.

 225 29 Sep 2011 Вынести метод preloader() в отдельный класс + Requests +СреднеСрочноЗавершено
100%
Артём Описание задачи

Чтобы он меньше весил, да и фактически он не является частью класса Cache.

 244 28 Oct 2011 Параметры для Reflex в формате YAML Modules-СреднеСрочноЗавершено
100%
Артём Описание задачи

Думаю будет весьма удобно управлять через админку.

 255 03 Nov 2011 Работа с удалённой базой юзеров. InstallationDeploymentСреднеСрочноЗавершено
100%
Артём Описание задачи

Притом желательно сделать умненько, например на аяксе, где введя ИД юзера, инсталлер предложит ввесли логин и пароль и только в случае успешной авторизации включить юзера как рут к новому сайту.

 274 22 Nov 2011 Автоматическое развертывание таблиц Modules-СреднеСрочноЗавершено
100%
Артём Описание задачи

Для модулей:

  • 2GisCounter
  • Comments
  • GeoMaps
  • Menu
  • Subcscribe
  • Texter
  • UserProfile
  • UserRecover
  • UserRegistration (активация)
 328 03 Feb 2012 Подготовленные выражения (prepared statements) + Requests +СреднеСрочноЗавершено
100%
Артём Описание задачи

Переписать все критические места например вот в такой формат:
http://www.yiiframework.com/doc/guide/1.1/ru/database.dao#binding-parameters

 357 21 Jan 2013 Корректировка папки /cache/ в SymfonyRequirements.php + Requests +СреднеСрочноЗавершено
100%
Артём Описание задачи

Думаю надо сделать в композере вызов скрипта, который будет производить подмену

$baseDir = basename(__DIR__);

на

$baseDir = basename(__DIR__) . '/var';

а также

is_writable(__DIR__.'/cache'),

на

is_writable(__DIR__.'/var/cache'),

и логи.

40728 Feb 2014МультиселектUnicatСреднеСрочноНовая
0%
Артём Описание задачи

Разобраться почему не заработало...

 3 24 Dec 2010 Метод block шаблонизаторе CMSBundle-СреднеВысокийЗавершено
100%
Артём Описание задачи

Доработать block() для поддержки в шаблонах обрамляющих тегов, а также скрытия контейнера, если он пуст.

Сейчас рендеринг блоков выглядит вот так:

{% block breadcrumbs block.breadcrumbs %}

Что является сокращенной формой от:

{% block content %}
{{ block.content }}
{% endblock content %}

Надо подумать, можно ли укоротить этот синтаксис до:

{{ block('breadcrumbs') }}
 16 24 Dec 2010 отладочная информация + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

1) время исполнения фрагментов кода
2) колв-во и просмотр sql запросов фрагментов кода

 37 26 Dec 2010 Префиксы таблиц + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Сейчас для префиксов таблиц применяется служебная строка «#__», но замена идёт по всему запросу, значит если встретится эта последовательность символов не в качестве префиксов таблиц, а как часть строки с данными пользователя, то также произойдет замена... Надо продумать момент оформления префиксов.

Может быть засунуть как свойство в классы DB, а в коде вызывать как:

$this->DB->prefix
 47 26 Dec 2010 Работа с meta данными в head секции html + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Учитывать media, icon, shortcut icon, decription, keywords и т.д.

 53 09 Jan 2011 Сжатие контента в истории. ModulesTexterСреднеВысокийЗавершено
100%
Артём Описание задачи

В таблище text_items_history надо хранить text в бинарном поле в сжатом виде.
Сжимать лучше средствами РНР.

8020 Jan 2011Возможность подключения произвольного кол-ва картинокUnicatСреднеВысокийНовая
0%
Артём Описание задачи

Возможность подключения произвольного кол-ва картинок, и наверно прикреплять файлы тоже, к записи.

Сделать свойство ImageCollection, а в свойствах будет храниться массив ID-шников картинок.

 85 22 Jan 2011 Поменять language_id тип с числового на буквенный? + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Может быть указывать языки буквами? например "ru", "en", "de" и т.д.

 93 23 Jan 2011 Конфигурирование стилей для тем. + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Сейчас стили для тем задаются в таблице engine_themes_layouts, но может быть указывать какие стили требуются, например в файле theme.ini в самой папке с шаблоными темы:

[general]
doctype = XHTML1_STRICT
content_language = ru
default_layout = main
 
[styles]
main = "screen.css, news.css"
 115 03 Mar 2011 Генерация вложенных категорий. UnicatСреднеВысокийЗавершено
100%
Артём Описание задачи

Сейчас учитываются только вложенные записи.

 125 19 Mar 2011 Подключение стилей в макет через ini + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

В виде

styles = "screen.css, news.css"

или

css = "screen.css, news.css"
 126 19 Mar 2011 Подключение скриптов в макет через ini + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Подключение библиотек:

js_lib = "jquery, extjs"

И подключение скриптов написанных специально для макета:

js = "main.js, news.js, asd/qwe.js"

т.е. скрипты будут запускаться из папки темы и можно применять относительные пути.

 148 12 Jun 2011 Настройки модуля новостей ModulesNewsСреднеВысокийЗавершено
100%
Артём Описание задачи

Сделать гибкие настройки в новостях:

  • Использовать категории?
  • Использовать даты начала и окончания публикации?
  • Генерировать ссылки только для записей с непустым свойством text.
15406 Jul 20112гис - счетчикModules-СреднеВысокийНовая
0%
Артём Описание задачи

Для подсчета переходов с 2гиса.

Например формировать ссылки вида http://site.ru/2gis, а модуль в свою очередь будет запоминать клик и вести статистику.

Также сделать возможность без прямой ссылки отслеживать переходы, наппример вот по таким ссылкам

http://link.2gis.ru/FD120E03/grym/20140701/novosibirsk/807d001190f3?http://site.ru

Отсюда же можно вычислять город и вести статистику.

 200 10 Sep 2011 Хранить путь куда подключена нода CMSBundleСреднеВысокийЗавершено
100%
Артём Описание задачи

Будет использоваться как кеширование, чтобы не высчитывать каждый раз.

Хранить прямо в поле таблицы нод.

Но тут есть другой нюанс: надо пересчитывать все пути в которые входят ноды, при изменении папки...

 224 29 Sep 2011 Избавиться от site_short_name и site_full_name CMSBundleСреднеВысокийЗавершено
100%
Артём Описание задачи

Эти значения не должны находиться в секции EE→template.

Движок должен самостоятельно генерировать значение тэга <title> т.е. не задействуя для этого ЕЕ.

 269 18 Nov 2011 В конструкторе оставить только подключение к БД. + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

Остальное можно убрать в метод run() или оформить в виде другого какого-то метода, например siteInit().

 289 24 Dec 2011 Применение единой таблицы записей и её свойств. UnicatСреднеВысокийЗавершено
100%
Артём Описание задачи

В случае применения в экземпляре каталога единой структруры свойств для всех записей, то можно все свойства хранить в одной таблице items! тогда не будет применяться properties_groups_structures_relation, а все группы свойств будут подключены к экземпляру.

29428 Dec 2011Кеширование нод целиком.CMSBundle-СреднеВысокийНовая
0%
Артём Описание задачи

Нужно сделать для того, чтобы нода даже не запускалась, а ядро брало значение сразу из кеша.

Параметры кеширования будет выдавать сам модуль по аналогии с NodePropertiesFormType.

 367 14 May 2013 Переписать запрос на DQL (наследование нод) CMSBundle-СреднеВысокийЗавершено
100%
Артём Описание задачи

EngineNode::buildList()

Сейчас выполяется вот так:

$sql = "SELECT n.*
    FROM {$this->db_prefix}engine_nodes AS n,
        {$this->db_prefix}engine_blocks_inherit AS bi
    WHERE n.block_id = bi.block_id 
        AND n.is_active = 1
        AND n.folder_id = '{$folder->getId()}'
        AND bi.folder_id = '{$folder->getId()}'
    ORDER BY n.position ASC
";

Вот попытки...

            // SmartCoreEngineBundle:Folder f
            $em = $this->container->get('doctrine.orm.default_entity_manager');
            $query = $em->createQuery("
                SELECT n
                FROM SmartCoreEngineBundle:Node n
                JOIN n.block b
                WHERE n.is_active = 1
                AND n.folder = :folder
                AND n.block = b
 
                ORDER BY n.position ASC
            ")->setParameters([
                'folder' => $folder,
                //'folder_id' => $folder->getId(), // AND b.block_id NOT IN (:folder_id)
                //'folder2' => $folder, // AND b.folders IN (:folder2)
            ]);
            $nodes = $query->getResult();
 
            ld($query->getSQL());
            ld($nodes);
 379 21 Jan 2014 Генерация заготовки для модуля. CMSBundle-СреднеВысокийЗавершено
100%
Артём Описание задачи

Примерно тоже самое, что app/console generate:bundle и app/console generate:controller, но для модуля.

 394 17 Feb 2014 Переход на Bootstrap 3 CMSBundle-СреднеВысокийЗавершено
100%
Артём Описание задачи

В частности вот с этими темами:

39819 Feb 2014Отслеживание процесса загрузки файловBundlesMediaBundleСреднеВысокийНовая
0%
Артём Описание задачи

http://www.php.net/manual/ru/session.upload-progress.php

http://wiki.nginx.org/HttpUploadProgressModule

http://bytes.jocarter.co.uk/post/41709800721/server-side-file-upload-progress

http://4nf.org

но, пока незнаю как проверять %)) на локальком компе бы как-нибудь ограничить скорость загрузки...

 409 03 Mar 2014 Создание текстера в момент создания папки CMSBundle-СреднеВысокийЗавершено
100%
Артём Описание задачи

Через крыжик, но лучше всего если это будут какие-то плагины настраиваемые.

 417 05 Apr 2014 Растолкать /web/assets по бандлам + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

В частности jquery, modernizr, bootstrap 2.3.2 есть в knp rad.

Хайлатеры (syntaxhighlighter и https://github.com/isagalaev/highlight.js) оформить в виде бандла.

Редакторы тоже: ace, codemirror, tinymce, ckeditor. Притом поставлять вместе с разными версиями, в частности tinymce нужен и 3 и 4-ый.

В принципе многие вещи можно затолкать в FelibBundle.

остались:

cmf - в CMSBundle
jcarousel - в Felib
nivo-slider - в Felib
tinymce - в https://github.com/Smart-Core/WysiwygBundle
41806 Apr 2014Сайт движка+ Requests +СреднеВысокийНовая
0%
Артём Описание задачи

Продумать структуру, написать тексты, разрекламировать адекватно ;)

В качестве “конкурентов” можно смотреть на:

42518 Apr 2014SitemapBindle Обработка редиректов+ Requests +СреднеВысокийНовая
0%
Артём Описание задачи

Например http://globalwellness.ru/strength/ ведет на http://globalwellness.ru/strength/medium/upperbody/ и это надо адекватно обрабатывать.

42724 Apr 2014БэкапыAdministration-СреднеВысокийНовая
0%
Артём Описание задачи

http://smart-core.org/forum/topic/36/bekapy/

http://habrahabr.ru/post/154047/ - Свое облачное хранилище на основе ownCloud

http://habrahabr.ru/post/45912/ - Настройка резервного копирования в Ubuntu

http://habrahabr.ru/post/51419/ - резервное копирование rsync-ом

http://www.ibm.com/developerworks/ru/library/au-spunix_rsync/ - Эффективное использование rsync

https://www.dropbox.com/developers/core/start/php

Для мускуля поизучать XtraBackup или MySQL Enterprise Backup.

Поизучать такой скриптик:

#
#Copyright (c) 2015 Сrutch_master (from linux.org.ru)
#License: http://www.gnu.org/licenses/gpl.html GPL version 2 or higher
#
#!/bin/bash
host=$1;
if [ $1 = "--help" ]; then
    echo "MySQL backup script."
    echo "Include mysqldump, mysql, git"
    echo "Usage: dump.sh <host> <user> <password>";
else
    mkdir $host 2> /dev/null
    cd $host
 
    echo 'show databases;' | mysql -h $1 --user=$2 --password=$3 | tail -n +2 > databases.list
    dbcnt=$(wc -l databases.list | cut -d ' ' -f 1)
    dbcur=0
 
 
    for db in $(cat databases.list);
    do
        dbcur=$(($dbcur+1))
        echo "DB# $dbcur/$dbcnt Start dump $db"
        if [ -d $db ]; then 
            newdb=0
        else
            mkdir $db 2> /dev/null
            newdb=1
        fi
        cd $db
        if [ $newdb -eq 1 ]; then 
            echo "git init"
            git init 
        fi
 
        echo "use $db;show tables;" | mysql -h $1 --user=$2 --password=$3 | tail -n +2 > tables.list
        tabcnt=$(wc -l tables.list | cut -d ' ' -f 1)
        tabcur=0
 
        #git: rm 
        for remove in $(dir -1 | grep -v -f tables.list | grep -v "routines.sql" | grep -v "tables.list");
        do
            echo "rm:$remove"
            git rm $remove
            rm $remove
        done
 
        for table in $(cat tables.list);
        do
            tabcur=$(($tabcur+1))
            echo "DB# $dbcur/$dbcnt TAB# $tabcur/$tabcnt dump $db.$table"
            #dump tables
            mysqldump --user=$2 -h $1 --password=$3 --lock-tables=false --extended-insert=false $db $table | grep -v 'SQL SECURITY DEFINER' > $table.sql 2>>error.log
            git add $table.sql
        done
        #dump routines
        echo "DB# $dbcur/$dbcnt dump $db routines"
        mysqldump --user=$2 -h $1 --password=$3 -R -t -d --extended-insert=false $db | grep -v 'SQL SECURITY DEFINER' | tr '[:upper:]' '[:lower:]' | sed 's/ definer=`root`@`[^`]*`//' > $db.routines.sql 2>>error.log
        git add $db.routines.sql
        git commit -m "$(date +%F_%R)"
        git gc
        cd ..
    done
    cd ..
fi
 463 25 Aug 2014 Хранение сущностей не в бандле UnicatСреднеВысокийЗавершено
100%
Артём Описание задачи

Изучить тему http://stackoverflow.com/questions/9999433/should-everything-really-be-a-bundle-in-symfony-2-x

Тут с 80-ого слайда описывается методика переноса места для размещения конфигов вметосто аннотаций
http://www.slideshare.net/matthiasnoback/the-naked-bundle-symfony-live-london-2014

46905 Nov 2014Ace редактор в параметрахModulesWidgetСреднеВысокийНовая
0%
Артём Описание задачи

Для Params, Open tag и Close tag

47912 Dec 2014Права chown для warmup_cache+ Requests +СреднеВысокийНовая
0%
Артём Описание задачи

Сделать через функцию getenv(), чтобы можно было устанавливать для разных ОС, а также для некоторых хостингов.

 490 22 Feb 2015 Безопасный подогрев кеша + Requests +СреднеВысокийЗавершено
100%
Артём Описание задачи

При обнулении кеша в активно используемых приложениях, велика вероятность что подогревать кеш начнут сразу несколько процессов, а следовательно очень велики коллизии.

Есть идея сделать команду bin/rebuild_cache которая будет делать следующие вещи:

  1. Установка .lock файла для prod окружения. (надо подумать где хранить этот файл)
  2. Удаление существующих кешей (сейчас bin/clear_cache)
  3. Подогрев кеша для prod окружения и выставить chown www-data (сейчас bin/warmup_cache)
  4. Удаление .lock файла для prod окружения.
  5. Подогрев кеша для dev окружения.

При этом фронт контроллер (app.php) будет настроен следующим образом: при обнаружении .lock файла, будет запускаться цикл при котором с задержкой (примерно 300мс) будет производиться повторное чтение .lock файла. Цикл будет ограничен кол-вом итераций, например в общей сложности не более 10 секунд, чтобы не возникло больших наклодных расходов ресурсов. Если за отведенное время разблокировки не произошло, то можно отдавать сообщение типа “На сайте ведутся технические работы, попробуйте перезагрузить страницу через несколько минут”.

Для оптимизации всего этого процесса, скрипт rebuild_cache может подменять файл app.php на файл с проверкой блокировки, а по окончанию подогрева возвращать оригинальный app.php

49102 Mar 2015Проверка на корректность конфигурации модуляCMSBundleCoreСреднеВысокийНовая
0%
Артём Описание задачи

Спрятать вот такой код:

if (null === $this->group_id) {
	return new Response('Module Menu not yet configured. Node: '.$this->node->getId().'<br />');
}

Например в метод checkParams в SmartCore\Bundle\CMSBundle\Module\ModuleBundle.

49506 Apr 2015Вёрстка EIP и тулбара без бутстрапа.Administration-СреднеВысокийНовая
0%
Артём Описание задачи

Может потребоваться на каких-нибудь хитрых вёрстках.

Также нужно иметь возможность отключать ЕИП с фронтенда совсем, а не отключением в каждой ноде.

Еще надо вывести вправление всеми нодами на страницу в телбар.

51012 Jun 2015При отключении Is use eip, пропадают Controls in toolba...Administration-СреднеВысокийНовая
0%
Артём Описание задачи

Надо оставлять.

52808 Oct 2015Фильтр записей в админкеUnicatСреднеВысокийНовая
0%
Артём Описание задачи

Например как в престашопе, где в табличке над некоторыми колонками расположены поля для ввода и кнопка поиск.

 7 24 Dec 2010 В дублирующей навигации заголовок окна для новости ModulesNewsСреднеОбычныйЗавершено
100%
Артём Описание задачи

В дублирующей навигации заголовок окна для новости, не всегда должен совпадать с заголовком новости!

 160 10 Jul 2011 Система сообщений о выполненной операции + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

Продумать и сделать систему на уровне ядра, при которой модуль может генерировать сообщении, например об ошибках или успешности совершения операции и при перезагрузки после обработчика POST данных, получит их :)

 183 30 Aug 2011 Локальное медиа хранилище по умолчанию InstallationDeploymentСреднеОбычныйЗавершено
100%
Артём Описание задачи

а то сейчас вообще ниодного не создаётся...

19106 Sep 2011Реестр доступных хуков в модуле.+ Requests +СреднеОбычныйНовая
0%
Артём Описание задачи

Очень удобно будет регистрировать внутри модуля все хуки, тогда админка сможет запрашивать список доступных хуков у модуля.

21319 Sep 2011Безопасная загрузка файлов (PHP, JS, HTML...)BundlesMediaBundleСреднеОбычныйНовая
0%
Артём Описание задачи

Надо по контенту файла вычислять какой файл каким является, чтобы не допустить нежелательные загрузки скриптов.

 227 29 Sep 2011 Отслеживание входных данные ($_GET). + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

Например можно сделать через класс Input. Нужно для того, чтобы мы могли отследить какой $_GET запрос является валидным, а какой нет и в случае невалидности выдать ошибку 404.

 254 03 Nov 2011 Возможность зарегистрировать пользователя при развертыв ...InstallationDeploymentСреднеОбычныйЗавершено
100%
Артём Описание задачи

Чтобы можно было на голой платформе сразу зарегаться и активироваться как рут.

 256 03 Nov 2011 Починить обработку данных при отправке формы InstallationSetupСреднеОбычныйЗавершено
100%
Артём Описание задачи

А то сейчас надо в пхп файле ручками прописывать данные подключения к БД %))

Ну и за одно обработку ошибок, на всякие подключения к БД, проверка на запись и т.д.

 260 04 Nov 2011 Разделение на закладки (tab) блоки при редактировании Administration-СреднеОбычныйЗавершено
100%
Артём Описание задачи

Например при редактировании свойств ноды, разделить на закладки "Основные свойства ноды" и "Параметры подключения модуля".

26306 Nov 2011Подсчет колва записей в категорииUnicatСреднеОбычныйНовая
0%
Артём Описание задачи

Притом надо считать как записи, которые входят только в указанную категорию, а также считать в подкатегориях.

26513 Nov 2011Назначение прав для всех групп и юзеровCMSBundleСреднеОбычныйНовая
0%
Артём Описание задачи

Например можно сделать так:

*|read:0,write:0;1|read:1,write:1;

Это будет означать, что для ВСЕХ групп юзеров будет назначены права read:0,write:0, а затем для группы №1 права read:1,write:1 таким образом даже если в системе изменятся группы юзеров, для этого объекта права будут всегда выстанавливаться по данному принципу.

сейчас видимо будет что-то типа:

*|read:0,write:0;ROLE_ADMIN|read:1,write:1;
 299 12 Jan 2012 Паттерн Registry + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

Подумать над использованием паттерна Registry, это позволит более гибко использовать объекты т.е. получая через регистри, класс по сути будет синглтоном, но в тоже время можно всегда создать отдельный объект.

 307 22 Jan 2012 Глобальная обработка ошибок. + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

Сделать глобальную обработку ошибок как у Kohana. Например перехватывать error_handler и в режиме НЕ production выводить стак трейс и 11 строк кода.

 309 22 Jan 2012 Сross Site Request Forgery CMSBundleСреднеОбычныйЗавершено
100%
Алексей Описание задачи

Защиту от Сross Site Request Forgery
есть 2 вариента парсить поле HTTP_REFERER. Но клиент может и не посылать данные эти.

дополнительно ввести скрытую форму с полем к которой будет находится секретный ключ сесии.
Куки тут не помогут. только скрытая форма.

 323 01 Feb 2012 Почтовые провайдеры + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

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

Это позволит например оповещение с форума производить с одного ящика, а рассылки на подписки с другого.

Хотя можно сильно не заморачиваться, а просто сделать базовые настройки для всего сайта, а для каждого модуля возможность выбирать, либо с дефолного ящика отсылать, либо указать свои параметры.

 326 02 Feb 2012 Маршруты для ACTION режима CMSBundleСреднеОбычныйЗавершено
100%
Артём Описание задачи

Сейчас ключевое слово ACTION ставится в папке в которой находится нода, возможно в этом нет смысла т.к. если юзер обладает правами выполнять эекшены нод, то права на папки возможно значения не имеют...

Т.е. подумать, может упростить маршрут до такого вида: /action/{\d+}/*

В крайнем случае права на папку можно будет узнать по ид ноды к которой предпринимается попытка обратиться.

 331 05 Feb 2012 Пересмотреть логику layout и views у папок. CMSBundleСреднеОбычныйЗавершено
100%
Артём Описание задачи

Сейчас при изменения вида блоков применяется поле "views" в таблице engine_folders. Это не очень красиво, надо подумать, может быть лучше поле "layout" переимновать в "view" и там указывать только имя единственного файла вида которой надо выполняить, а он уже будет включать в себя инструкцию extends, которая расширит этот макет родительским.

Тогда в прицнипе можно будет во всех макетах указывать только метод $this→block().

Но есть сложность: надо как-то вычислять какой именно блок перегружает шаблон... это можно сделать, либо анализируя код (что есть ресурсоёмко), либо ручками указывать список блоков, которые шаблон перегружает.

Прикладываю файл с возможным форматом структуры папки с видами, которая будет лежать в папке с темой (вместо нынешней tpl).

 351 27 Aug 2012 Рефакторинг автозагрузчика. CMSBundle-СреднеОбычныйЗавершено
100%
Артём Описание задачи

В симфони 2.1 сделан другой автозагрузчик, надо перевести на новый синтаксис.

 387 08 Feb 2014 Возможность подключать модули с роутингами в корневую п ...CMSBundle-СреднеОбычныйЗавершено
100%
Артём Описание задачи

Гипотетически такая возможность может понадобиться ;)

Сейчас проблемма в том, что для маршрутов необходимо чтобы _basePath был не пустой...

41206 Mar 2014Активный пункт меню, при просмотре записиUnicatСреднеОбычныйНовая
0%
Артём Описание задачи

Сейчас RequestVoter не срабатывает из-за того, что конец запроса указывает на запись, а не на категорию...

Подумать как вообще можно генерировать меню категорий с активными пунктами не совпадающие со строками запроса.

 431 08 May 2014 Поведение формы логина ModulesUsersСреднеОбычныйЗавершено
100%
Артём Описание задачи

Редиректить гостя при входе на /user/ в /user/login

Также для авторизированного юзера убрать /admin/login

 450 07 Jul 2014 Поддержка кирилицы в URI + Requests +СреднеОбычныйЗавершено
100%
Артём Описание задачи

Также как в папках, для категорий и записей.
а также в новостях.

51124 Jun 2015Версии админки для контентщика и конструктораAdministration-СреднеОбычныйНовая
0%
Артём Описание задачи

Т.к. в большинстве случаев в управлении контентом нужно значительно меньше функционала, чем при конструировании сайта.

 527 08 Oct 2015 Перегенерация сущностей через cmd UnicatСреднеОбычныйЗавершено
100%
Артём Описание задачи

Нужно будет при обновлении кода. Например вот тут был добавлен репозиторий https://github.com/Smart-Core/CMS-Sandbox/commit/1b3ff3ba96b7447e81c1e78a09e725d9c9df8c2e

 145 31 May 2011 Баг с некорректными куками - Bugs -НизкоВ мгновение!Завершено
100%
Артём Описание задачи

Notice: Undefined index: status in /home/l/public_html/system/Kernel/User.php on line 201
 
Warning: Cannot modify header information - headers already sent by (output started at /home/l/public_html/system/Kernel/User.php:201) in /home/l/public_html/system/Kernel/Cookie.php on line 112
 
Warning: Cannot modify header information - headers already sent by (output started at /home/l/public_html/system/Kernel/User.php:201) in /home/l/public_html/system/Kernel/Cookie.php on line 122
 
Warning: Cannot modify header information - headers already sent by (output started at /home/l/public_html/system/Kernel/User.php:201) in /home/l/public_html/system/common.php on line 174

54208 Sep 2017Drag-n-drop редактор шаблоновAdministrationFront-endНизкоСрочноНовая
0%
Артём Описание задачи

поизучать вот такие штуки:

для Wordpress существует куча платных и бесплатных drag-n-drop редакторов шаблонов:

к сожалению проект headwaythemes.com мертв, но есть его форк: http://bloxtheme.com

 63 14 Jan 2011 Убрать все подзапросы + Requests +НизкоВысокийЗавершено
100%
Артём Описание задачи

Сейчас применяются для вычисления наличия перевода, но во первых экономии в производительности видимо нет, а вот отладка явно сложнее.

 1 24 Dec 2010 favicon.ico + Requests +НизкоОбычныйЗавершено
100%
Артём Описание задачи

В виде настройки для папки, также предусмотреть возможность смены иконки модулем.

Скорее всего логичнее всего будет указывать фавикон в параметрах папки и наследовать её, а физически хранить в папке темы.

 2 24 Dec 2010 переименовать константу NODE_ACTION в ACTION_PREFIX? + Requests +НизкоОбычныйЗавершено
100%
Артём Описание задачи

вроде как логичнее будет ;)

 4 24 Dec 2010 библиотека путей к скриптам + Requests +НизкоОбычныйЗавершено
100%
Артём Описание задачи

Сейчас данные скриптов сохраняются в таблице engine_scripts_data, но есть идея сделать эту библиотечку на файлах, например такой структуры:

var/scripts/jquery/1.4.2/local
var/scripts/jquery/1.4.2/yandex
var/scripts/prototype/1.6.1/google

т.е. var/scripts/[name]/[version]/[source-profile], а в файле [source-profile] уже указывается ссылка на скрипты.

 5 24 Dec 2010 Приоритеты нод CMSBundle-НизкоОбычныйЗавершено
100%
Артём Описание задачи

Продумать работу с приоритетами нод, например сейчас если «гость» зайдет на http://loc/SmartCore/user/, его редиректнет в http://loc/SmartCore/user/login/, но надо сделать возможность по минимуму собирать ноды, ведь в каком-нить проекте нода авторизации может оказаться последней и пока до неё дойдет очередь, она будет жрать ресурсы, собирая другие ноды, а в итоге произойдет редирект.

Показаны задачи с 1 по 250 (из 515) Страница 1 из 31 - 2 - 3 -

Available keyboard shortcuts

Список задач

Task Details

Task Editing