|
Here is the example structure of Install.php:
<?php
namespace Apps\PHPfox_Core;
use Core\App;
use Core\App\Install\Setting;
class Install extends App\App
{
protected function setId()
{
$this->id = 'PHPfox_Core';//Set ID for your app. This action is required.
}
protected function setSupportVersion()
{
$this->start_support_version = '4.4.0';//Start support version
$this->end_support_version = '4.5.0';//End support version
}
protected function setAlias()
{
//Set alias for your app
}
protected function setName()
{
$this->name = 'phpFox Core';//Set Name for your app, this name will display in manage apps (admincp)
}
protected function setVersion()
{
$this->version = '4.0.1';//Set version for your app
}
protected function setSettings()
{
//Define settings for your app
}
protected function setUserGroupSettings()
{
//Define user group settings for your app
}
protected function setComponent()
{
//Define component for your app
}
protected function setComponentBlock()
{
//Define component block for your app
}
protected function setPhrase()
{
//Add more phrase for your app. However, for mow please define in phrase.json
}
protected function setOthers()
{
//Set other information for your app
$this->_publisher = 'phpFox'; //Your company name
$this->_publisher_url = 'http://store.phpfox.com/';//Your company website
}
} |
These are all information you can define for your app:
| ID | Define | Note |
|---|---|---|
| 1 | $this->id = "your_app_id" | This is your app ID, it must be the same folder name stored your app. Space is not allowed. This ID can't change. |
| 2 | $this->alias = "your_app_alias" | This value is used for: admincp url, block name, component name, ajax name,... This value must be lower case and no space. If your app is simple, this value can be empty. |
| 3 | $this->name = "your app name" | The name of your app, it will display in manage app in admincp |
| 4 | $this->version = "your.app.version" | Version of your app. It has to follow version naming convention. |
| 5 | $this->icon = "your_app_icon" | Define Icon of your app. We support 3 ways to define your app icon:
|
| 6 | $this->admincp_route = "default admincp route" | Default page of your app in admincp |
| 7 | $this->admincp_menu = [] | Your app menu in admincp |
| 8 | $this->admincp_help | |
| 9 | $this->admincp_action_menu | |
| 10 | $this->map | |
| 11 | $this->map_search | |
| 12 | $this->menu | Add a menu for your app on main menu bar |
| 13 | $this->settings | Your app's settings |
| 14 | $this->user_group_settings | Your app's user groups settings |
| 15 | $this->notification | |
| 16 | $this->database | database table for your app |
| 17 | $this->component | |
| 18 | $this->component_block | |
| 19 | $this->routes | |
| 20 | $this->start_support_version | Older phpFox version your app can support |
| 21 | $this->end_support_version | Latest phpFox version your app can support |
| 22 | $this->phrase | advanced phrases |
| 23 | $this->_publisher | Your company name |
| 24 | $this->_publisher_url | Your company home page |
| 25 | $this->_admin_cp_menu_ajax | Set true: menu in adincp will load by ajax; false: menu will load by refresh page. Default is true |
Define in bold is required