mirror of
https://github.com/Aviortheking/DeltaCMS.git
synced 2025-06-06 06:59:55 +00:00
Updated doc
This commit is contained in:
parent
cd861a071a
commit
3102855c98
@ -9,10 +9,10 @@ Please note we have a code of conduct, please follow it in all your interactions
|
||||
|
||||
1. Ensure any install or build dependencies are removed before the end of the layer when doing a
|
||||
build.
|
||||
2. Update the README.md with details of changes to the interface, this includes new environment
|
||||
2. Update the [README.md][readme] with details of changes to the interface, this includes new environment
|
||||
variables, exposed ports, useful file locations and container parameters.
|
||||
3. Increase the version numbers in any examples files and the README.md to the new version that this
|
||||
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
|
||||
3. Increase the version numbers in any examples files and the [README.md][readme] to the new version that this
|
||||
Pull Request would represent. The versioning scheme we use is [SemVer][semver].
|
||||
4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
|
||||
do not have permission to do that, you may request the second reviewer to merge it for you.
|
||||
|
||||
@ -73,7 +73,7 @@ further defined and clarified by project maintainers.
|
||||
### Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
|
||||
reported by contacting the project team at [contact@delta-wings.net][email]. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
@ -88,5 +88,8 @@ members of the project's leadership.
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||
available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[readme]: ./README.md
|
||||
[semver]: http://semver.org/
|
||||
[email]: mailto:contact@delta-wings.net
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
||||
|
179
README.md
179
README.md
@ -7,17 +7,12 @@
|
||||
- [Description](#description)
|
||||
- [Build](#build)
|
||||
- [Changelog](#changelog)
|
||||
- [Modules](#modules)
|
||||
- [Routes](#routes)
|
||||
- [Usage](#usage)
|
||||
- [Menus](#menus)
|
||||
- [Usage-2](#usage-2)
|
||||
- [Options](#options)
|
||||
- [Usage-3](#usage-3)
|
||||
- [Files/Folders architecture](#filesfolders-architecture)
|
||||
- [Configs files](#configs-files)
|
||||
- [site.json](#sitejson)
|
||||
- [settings.json](#settingsjson)
|
||||
- [Badges](#badges)
|
||||
- [Build status](#build-status)
|
||||
- [Coverage](#coverage)
|
||||
- [Code Quality](#code-quality)
|
||||
- [Dependencies](#dependencies)
|
||||
- [Development Dependencies](#development-dependencies)
|
||||
|
||||
## Description
|
||||
|
||||
@ -33,152 +28,40 @@ composer install --no-dev --optimize-autoload
|
||||
|
||||
see [changelog.md](./changelog.md)
|
||||
|
||||
## Modules
|
||||
## Badges
|
||||
|
||||
Modules are what that will manage the system in himself.
|
||||
We're using [shields.io](https://shields.io/) badges
|
||||
|
||||
```php
|
||||
$module = new Module();
|
||||
```
|
||||
### Build status
|
||||
|
||||
Modules will have multiple constant
|
||||
|
||||
### Routes
|
||||
|
||||
sitewide (except `/admin/*`) routes can be defined and will point to a function you will have to define
|
||||
|
||||
#### Usage
|
||||
|
||||
```php
|
||||
$function = function($settings) {
|
||||
return "html code";
|
||||
}
|
||||
$module->addRoute("/regex-to-check-for-the-page/", $function);
|
||||
```
|
||||
|
||||
### Menus
|
||||
|
||||
On the admin-side you can add menus & items
|
||||
|
||||
#### Usage-2
|
||||
|
||||
```php
|
||||
$menu = $module->addMenu("Menu Name");
|
||||
|
||||
$pageFunction = function($settings) {
|
||||
return "html code"; //not <html> nor <body>
|
||||
}
|
||||
|
||||
$menu->addItem("Item Name", $pageFunction);
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
#### Usage-3
|
||||
|
||||
```php
|
||||
$options = $module->addOptionItem("Item Name");
|
||||
|
||||
$options->addOption("Option Name", "optionName", OptionTypes::text)
|
||||
$options->addOption("optionVar", OptionTypes::Text, {
|
||||
"name": "Name",
|
||||
"placeholder": "placeholder",
|
||||
"default": "defaultValue"
|
||||
// more options will come later
|
||||
});
|
||||

|
||||
`https://img.shields.io/gitlab/pipeline/delta-wings/adminpanel.svg?style=for-the-badge`
|
||||
|
||||
|
||||
```
|
||||
### Coverage
|
||||
|
||||
```js
|
||||
/*
|
||||
possibilité de mettre des routes qui executent des functions
|
||||
ajouter des pages dans la section d'admin
|
||||
(Module) to initialize & manage the module
|
||||
(Menu, Item from Menu) classes to manage adminPanel elements
|
||||
(Variables) class to get/set used around the website vars
|
||||
(OptionsItem from Item) to have a custom page for settings
|
||||
(OptionsTab, Option)
|
||||

|
||||
`https://img.shields.io/codacy/coverage/ae3cdab2030c4b62aa42d3d0eed40f86.svg?style=for-the-badge`
|
||||
|
||||
*/
|
||||
$module = new Module();
|
||||
### Code Quality
|
||||
|
||||
$menu = $module.addMenu("menuName");
|
||||
$menu.addItem("itemName", function());
|
||||

|
||||
`https://img.shields.io/codacy/grade/ae3cdab2030c4b62aa42d3d0eed40f86.svg?style=for-the-badge`
|
||||
|
||||
options = Module.addOptionsMenu("name");
|
||||
## Dependencies
|
||||
|
||||
optionTab = options.addOptionTab("name");
|
||||
- [Composer](https://getcomposer.org/)
|
||||
- [PSR-3](https://www.php-fig.org/psr/psr-3), [PSR-6](https://www.php-fig.org/psr/psr-6)
|
||||
- [Twig](https://twig.symfony.com/)
|
||||
|
||||
optionTab.addOption("test", =enum.text);
|
||||
## Development Dependencies
|
||||
|
||||
//options added will be in the first tab named at the menu name
|
||||
//if there is only one tab or no tab we won't show tabs
|
||||
options.addOption("test", =enum.text);
|
||||
|
||||
//add options if it is equal to something
|
||||
//true/false is what it must be to be shown
|
||||
//with be in js i think
|
||||
options.addOption("option name"=String, enum.text=enumeType, "option to check", "regex to check with", must it true or false)
|
||||
|
||||
```
|
||||
|
||||
## Files/Folders architecture
|
||||
|
||||
- .htaccess (handle file redirection)
|
||||
- admin/
|
||||
- .htaccess manage redirection for admin pages (pass throught a verify login script)
|
||||
- index.php
|
||||
- admin.js
|
||||
- admin.css
|
||||
- settings/ (settings files more infos [here](#config-files))
|
||||
- site.json (adminPanel settings (see admin.json section))
|
||||
- modules/
|
||||
- moduleName/
|
||||
- settings.json
|
||||
- admin.json (used to see what to launch on the admin side)
|
||||
- options.json (options for modules & themes to be used site-wide)
|
||||
- templates.json (store the template used on the website with a link to there .php file)
|
||||
- modules/
|
||||
- default/ (a default module will be here)
|
||||
- module.php
|
||||
- moduleName/
|
||||
- module.php
|
||||
- public.php (same as theme)
|
||||
|
||||
## Configs files
|
||||
|
||||
### site.json
|
||||
|
||||
Site-wide settings (don't know if it will be accesible for modules)
|
||||
|
||||
Location: `/admin/settings/`
|
||||
|
||||
```json
|
||||
{
|
||||
"themeUsed": "themeName",
|
||||
"modulesUsed": [
|
||||
"moduleName",
|
||||
"etc"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### settings.json
|
||||
|
||||
Stock the module variables
|
||||
|
||||
Location: `/admin/settings/modules/moduleName/`
|
||||
|
||||
```json
|
||||
{
|
||||
"variable1": "value1",
|
||||
"list1": [
|
||||
"pouet1",
|
||||
"etc"
|
||||
],
|
||||
"variableSet1": {
|
||||
"subVariable1": "value2"
|
||||
}
|
||||
}
|
||||
```
|
||||
- [EditorConfig](https://editorconfig.org/)
|
||||
- [Git](https://git-scm.com/)
|
||||
- [Composer](https://getcomposer.org/)
|
||||
- [PHP Codesniffer](https://github.com/squizlabs/PHP_CodeSniffer)
|
||||
- [Symfony VarDumper](https://symfony.com/doc/current/components/var_dumper.html)
|
||||
- [PHPUnit](https://phpunit.de/)
|
||||
- [PHP Mess Detector](https://phpmd.org/)
|
||||
- [Gitlab](https://gitlab.com/)
|
||||
- [Codacy](codacy.com)
|
||||
|
Loading…
x
Reference in New Issue
Block a user