In-Portal Developers Guide

This is a wiki-based Developers Guide for In-Portal Open Source CMS. The purpose of this guide is to provide advanced users, web developers and programmers with documentation on how to expand, customize and improve the functionality and the code the In-Portal software. Please consider contributing to our documentation writing effort.

K4:Folder Structure

From In-Portal Developers Guide

Jump to: navigation, search
Line 12: Line 12:
| <code>module/admin_templates/img/itemicons</code> || The directory which contains the icons that are show next to each record in the list of records (only for In-Portal). The names of the files in this directory must start with the prefix "<code>icon16_</code>" and follow [[K4:Назначение имён|naming convention]] rules.
| <code>module/admin_templates/img/itemicons</code> || The directory which contains the icons that are show next to each record in the list of records (only for In-Portal). The names of the files in this directory must start with the prefix "<code>icon16_</code>" and follow [[K4:Назначение имён|naming convention]] rules.
|-
|-
-
| <code>module/admin_templates/img/toolbar</code> || В данной директории находятся пиктограммы для каждой кнопки на панели инструментов, которая уникальна для конкретного модуля. О том, как называть пиктограммы, используемые на панели инструментов написано [[K4:Добавление кнопки в панель инструментов#title|здесь]].
+
| <code>module/admin_templates/img/toolbar</code> || This directory contains icons for each button in the toolbar, which is unique to each module. How to name icons used in the toolbar is written [[K4:Добавление кнопки в панель инструментов#title|here]].
-
This directory contains icons for each button in the toolbar, which is unique to each module. How to name icons used in the toolbar is written [[K4:Добавление кнопки в панель инструментов#title|here]].
+
|-
|-
| <code>module/install</code> || This directory contains files used for installation of the specific module.
| <code>module/install</code> || This directory contains files used for installation of the specific module.

Revision as of 21:19, 28 March 2009

Структура приложения Структура приложения
Статьи в этой категории

Projects written using K4 have a module-based structure. Each module is a directory in the root directory of the site. All modules have the same sub-directory structure, as described below:

название описание
module/admin_templates Directory that contains module templates used for the administrative console.
module/admin_templates/img Directory that contains images used by the module.
module/admin_templates/img/icons Directory where the icons used in the left tree menu and above grids in the administrative console are located. The specifics about how the files in this directory should be named are written here.
module/admin_templates/img/itemicons The directory which contains the icons that are show next to each record in the list of records (only for In-Portal). The names of the files in this directory must start with the prefix "icon16_" and follow naming convention rules.
module/admin_templates/img/toolbar This directory contains icons for each button in the toolbar, which is unique to each module. How to name icons used in the toolbar is written here.
module/install This directory contains files used for installation of the specific module.
module/units Directory that contains PHP code.


Ниже применяются следующие сокращения:

prefix - префикс от unit config в единственном числе, напр. event (в единственном числе, из-за правил английского языка)
prefixx - префикс от unit config, только во множественном числе
helper - класс помощник (наследник от класса kHelper)

Расположение файлов

  • для каждого префикса создаётся директория prefixx (напр. themes)
  • в этой директории должен быть как минимум один файл - <directory_name>_config.php, содержащий unit config
  • все остальные файлы в директории называются согласно правилу названия файлов
  • также, в директории units от модуля, можно создать 2 независимые директории helpers и sections. В директорию helpers надо класть все независимые (т.е., те с которыми будет работать не только один prefix) helpers. В директорию sections нужно класть все классы, которые заменяют другие классы. Для обеих директорий соответственно надо создать (или скопировать из другого проекта) unit configs.
  • в корневой директории модуля (напр. custom) можно создать файл constants.php в котором можно задать все необходимые для конкретного проекта константы.

Какие файлы можно менять

Допускается изменение файлов в следующих директориях:

  • директория модуля "custom" (весь специфичный для проекта код)
    <project_name>/custom
  • директория с темой для Front-End
    <project_name>/themes/theme_<project_name>
Image:Infobox Icon.gif Файлы в остальных папках изменять и делать commit запрещено.

В отдельных случаях, напр. когда

  • требуемой функциональности не достичь без изменения файлов K4
  • требуется сделать частичный upgrade проекта (для экономии времени)

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