Skip to content

Commit

Permalink
New structure for cleaner URLs.
Browse files Browse the repository at this point in the history
  • Loading branch information
Florian committed Jun 13, 2016
1 parent 7e3c0a7 commit a6637da
Show file tree
Hide file tree
Showing 40 changed files with 94 additions and 94 deletions.
44 changes: 22 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,30 +21,30 @@ This is the documentation for [Pagekit](https://pagekit.com), a modular open sou
8. [Finder](user-interface/finder.md)

- Tutorials
1. [How to: Extension](developer-guides/extension.md)
2. [How to: Theme](developer-guides/how-to-theme.md)
3. [Themes](developer-guides/themes.md)
4. [Widgets](developer-guides/widgets.md)
5. [Dashboard Widgets](developer-guides/dashboard-widgets.md)
6. [Translate Pagekit](developer-guides/translation.md)
7. [Marketplace](developer-guides/marketplace.md)
1. [Extension](tutorials/extension.md)
2. [Theme](tutorials/theme.md)
4. [Widgets](tutorials/widgets.md)
5. [Dashboard Widgets](tutorials/dashboard-widgets.md)
6. [Translate Pagekit](tutorials/translation.md)
7. [Marketplace](tutorials/marketplace.md)

- Developer Fundamentals
1. [File Structure](developer-basics/file-structure.md)
1. [Application](developer-basics/application.md)
2. [Packages](developer-basics/packages.md)
3. [Modules](developer-basics/modules.md)
4. [Events](developer-basics/events.md)
5. [Routing](developer-basics/routing.md)
6. [Response](developer-basics/response.md)
7. [Users & Permissions](developer-basics/users-permissions.md)
8. [Views & Templating](developer-basics/views-templating.md)
9. [Vue & Webpack](developer-basics/vuejs-and-webpack.md)
10. [Database](developer-basics/database.md)
11. [ORM](developer-basics/orm.md)
12. [Translation](developer-basics/translation.md)
13. [CLI](developer-basics/cli.md)
14. [Pagekit source](developer-basics/source.md)
1. [File Structure](developer/file-structure.md)
1. [Application](developer/application.md)
2. [Packages](developer/packages.md)
3. [Modules](developer/modules.md)
4. [Events](developer/events.md)
5. [Routing](developer/routing.md)
6. [Response](developer/response.md)
7. [Users & Permissions](developer/users-permissions.md)
8. [Theme](developer/theme.md)
8. [Views & Templating](developer/views-templating.md)
9. [Vue & Webpack](developer/vuejs-and-webpack.md)
10. [Database](developer/database.md)
11. [ORM](developer/orm.md)
12. [Translation](developer/translation.md)
13. [CLI](developer/cli.md)
14. [Pagekit source](developer/source.md)

- Troubleshooting
1. [System Information](troubleshooting/system-information.md)
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
12 changes: 6 additions & 6 deletions developer-basics/modules.md → developer/modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ Nodes are similar to routes with the main difference that they can be dragged ar

When you have added a Node, it will be available in the Site Tree. Click the _Add Page_ button to see the Dropdown of all available Node types.

For more information on nodes, check out the [Routing section](../developer-basics/routing.md).
For more information on nodes, check out the [Routing section](../developer/routing.md).

```php
'nodes' => [
Expand All @@ -220,7 +220,7 @@ For more information on nodes, check out the [Routing section](../developer-basi

## Node options

If your module wants to add a configuration screen to the content editor in the Site Tree, you can use the `node` property to add default options to the node object (complete explanation for configuration screen in the [Theme guide](../developer-guides/how-to-theme.md#adding-position-options)).
If your module wants to add a configuration screen to the content editor in the Site Tree, you can use the `node` property to add default options to the node object (complete explanation for configuration screen in the [Theme guide](../tutorials/theme.md#adding-position-options)).


In the following example, a theme defines a `top_style` property which is automatically added to every node object that is rendered. By default, the property will have the value `uk-block-muted`, which is a CSS class that we want to render for the `top` position, in this example.
Expand All @@ -241,7 +241,7 @@ When rendering a page in the `template.php` of the theme, you can then access th

With the `node` property, you set the default value for every node. To allow the user to change these values, you will want to add an interface to the admin area (typically in the form of an addition _Theme_ tab when editing a page's content).

To allow the user to change the values of the default widget options that you have defined here, you can add an interface to the admin area. To achieve that, you define a JavaScript component to display the editing screen ([Example](https://github.com/pagekit/example-theme/blob/master/app/components/node-theme.vue)), register that JavaScript file on the content editor page ([Example](https://github.com/pagekit/example-theme/blob/master/index.php#L43)) and optionally update your Webpack configuration, if you are using Webpack ([Example](https://github.com/pagekit/example-theme/blob/master/webpack.config.js#L5)). A complete explanation for this can be found in the [Theme guide](../developer-guides/how-to-theme.md#adding-position-options).
To allow the user to change the values of the default widget options that you have defined here, you can add an interface to the admin area. To achieve that, you define a JavaScript component to display the editing screen ([Example](https://github.com/pagekit/example-theme/blob/master/app/components/node-theme.vue)), register that JavaScript file on the content editor page ([Example](https://github.com/pagekit/example-theme/blob/master/index.php#L43)) and optionally update your Webpack configuration, if you are using Webpack ([Example](https://github.com/pagekit/example-theme/blob/master/webpack.config.js#L5)). A complete explanation for this can be found in the [Theme guide](../tutorials/theme.md#adding-position-options).

## Add menu items to the admin panel
You can add menu items to the admin panel's main navigation. These can link to any registered route and be limited to certain access permissions. The `access` property determines if the menu item is visible or not.
Expand Down Expand Up @@ -291,7 +291,7 @@ Link to a route that renders your settings screen. Setting this property makes P
```

## Register Widgets
A Widget is also a module. With the `widgets` property you can register all widget module definition files. Each of those files is expected to return a PHP array in the form of a valid module definition. Learn more about [Widgets](../developer-guides/widgets.md).
A Widget is also a module. With the `widgets` property you can register all widget module definition files. Each of those files is expected to return a PHP array in the form of a valid module definition. Learn more about [Widgets](../tutorials/widgets.md).

```php
'widgets' => [
Expand All @@ -303,7 +303,7 @@ A Widget is also a module. With the `widgets` property you can register all widg

## Widget options

If your module wants to add a configuration screen to the Widget editor (which is often the case when developing a theme), you can use the `widget` property to add default options to the widget object (a complete example for a widget configuration screen is in the [Theme guide](../developer-guides/how-to-theme.md#adding-widget-options)).
If your module wants to add a configuration screen to the Widget editor (which is often the case when developing a theme), you can use the `widget` property to add default options to the widget object (a complete example for a widget configuration screen is in the [Theme guide](../tutorials/theme.md#adding-widget-options)).

In the following example, a theme defines a `panel` property which is automatically added to every widget object that is rendered. By default, the property will have the empty string as its value.

Expand All @@ -321,4 +321,4 @@ When rendering the widget, you can then access that property from the `$widget->
<?php echo $widget->theme['panel'] ?>
```

To allow the user, to change the values of the default widget options that you have defined here, you can add an interface to the admin area. To achieve that, you define a JavaScript component to display the editing screen ([Example](https://github.com/pagekit/example-theme/blob/master/app/components/widget-theme.vue)), register that JavaScript file on the widget editor page ([Example](https://github.com/pagekit/example-theme/blob/master/index.php#L47)) and optionally update your Webpack configuration, if you are using Webpack ([Example](https://github.com/pagekit/example-theme/blob/master/webpack.config.js#L7)). A complete explanation for this can be found in the [Theme guide](../developer-guides/how-to-theme.md#adding-widget-options).
To allow the user, to change the values of the default widget options that you have defined here, you can add an interface to the admin area. To achieve that, you define a JavaScript component to display the editing screen ([Example](https://github.com/pagekit/example-theme/blob/master/app/components/widget-theme.vue)), register that JavaScript file on the widget editor page ([Example](https://github.com/pagekit/example-theme/blob/master/index.php#L47)) and optionally update your Webpack configuration, if you are using Webpack ([Example](https://github.com/pagekit/example-theme/blob/master/webpack.config.js#L7)). A complete explanation for this can be found in the [Theme guide](../tutorials/theme.md#adding-widget-options).
File renamed without changes.
2 changes: 1 addition & 1 deletion developer-basics/packages.md → developer/packages.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ A package contains at least two files.
1. The `composer.json` contains the metadata for your package and therefore acts as the package definition.
2. The `index.php` is a so called [Module definition](modules.md) and adds actual functionality to Pagekit.

The rest of the package content depends on the package's `type`. To learn more about the actual content of a package, check out the [Theme Guide](../developer-guides/themes.md) or the [Extension Guide](../developer-guides/extension.md).
The rest of the package content depends on the package's `type`. To learn more about the actual content of a package, check out the [Theme Guide](../tutorials/theme.md) or the [Extension Guide](../tutorials/extension.md).

## Package definition
A package is defined by its `composer.json`. This file includes the package name, potential dependencies to be installed by [Composer](https://getcomposer.org) and other information that displays in the Pagekit marketplace.
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions developer-guides/themes.md → developer/theme.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
</ul>

## Package definition
A theme is a regular Pagekit [package](../developer-basics/packages.md) of the type `pagekit-theme`. Each package needs a description in order to be recognized by Pagekit. This description is located in the `composer.json` file and looks as follows. For detailed information, take a look the [Packages](../developer-basics/packages.md) chapter.
A theme is a regular Pagekit [package](../developer/packages.md) of the type `pagekit-theme`. Each package needs a description in order to be recognized by Pagekit. This description is located in the `composer.json` file and looks as follows. For detailed information, take a look the [Packages](../developer/packages.md) chapter.

```json
{
Expand All @@ -29,7 +29,7 @@ A theme is a regular Pagekit [package](../developer-basics/packages.md) of the t
```

## Module definition
A theme in itself is simply a [module](../developer-basics/modules.md). So you may want to read up on modules first. This opens up a lot of possibilities with regard to what a theme can do.
A theme in itself is simply a [module](../developer/modules.md). So you may want to read up on modules first. This opens up a lot of possibilities with regard to what a theme can do.

Define the positions and menus of your theme, load additional scripts and much more. Here is a shortened example of the `index.php` to get you started. Explanations of the theme specific properties follow below.

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
6 changes: 3 additions & 3 deletions getting-started/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ Depending on your goals with Pagekit you might want to read only pieces of the d

1. Pagekit [installation](installation.md), [requirements](requirements.md) and places to [find help](../getting-started/getting-help.md) if you are stuck.
2. Learn how to use the Pagekit [user interface](../user-interface/dashboard.md).
3. To get started as a developer, learn [how to create an extension](../developer-guides/extension.md) and [how to build a theme](../developer-guides/themes.md).
4. For a complete video guide on building an extension, watch [the screencast about an example extension](../developer-guides/extension.md).
5. For more fundamental developer topics, read up on e.g. [packages](../developer-basics/packages.md), [modules](../developer-basics/packages.md) and [packages](../developer-basics/routing.md).
3. To get started as a developer, learn [how to create an extension](../tutorials/extension.md) and [how to build a theme](../tutorials/theme.md).
4. For a complete video guide on building an extension, watch [the screencast about an example extension](../tutorials/extension.md).
5. For more fundamental developer topics, read up on e.g. [packages](../developer/packages.md), [modules](../developer/packages.md) and [packages](../developer/routing.md).
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<p class="uk-article-lead">The Dashboard is the first screen that is shown after logging in to the admin panel. It gives an overview of the website and contains multiple Dashboard Widgets. You can create your own Dashboard Widget that can display useful information or offer shortcuts to other areas of your extension.</p>


A Dashboard Widget is created as a [Vue.js](http://vuejs.org) component. The following example explains how to create the Widget using a webpack configuration in your extension. If you are not sure what Vue.js and Webpack are or how they work together, you might want to read the [Vue.js and Webpack](../developer-basics/vuejs-and-webpack.md) article first.
A Dashboard Widget is created as a [Vue.js](http://vuejs.org) component. The following example explains how to create the Widget using a webpack configuration in your extension. If you are not sure what Vue.js and Webpack are or how they work together, you might want to read the [Vue.js and Webpack](../developer/vuejs-and-webpack.md) article first.

## Create a Vue component

Expand Down
12 changes: 6 additions & 6 deletions developer-guides/extension.md → tutorials/extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Every package belongs to a specific vendor name, which becomes clear when you lo
Core packages are part of the `pagekit` namespace and located in the appropriate subdirectory inside `/packages`. Any third party packages (yours!) will have their own vendor name and therefore sit in a separate subfolder.

```
/packages
/packages
/pagekit
/blog
/theme-one
Expand Down Expand Up @@ -121,13 +121,13 @@ class TodoController
public function indexAction()
{
return "Yay.";
return "Yay.";
}
}
```

To limit the access to the admin area and mount this controller to an admin url, we use the annotation `@Access(admin=true)`. Annotations are keywords which are placed in the comment block above a class or method. Learn [more about annotations](http://pagekit.com/docs/developer-basics/routing#annotations).
To limit the access to the admin area and mount this controller to an admin url, we use the annotation `@Access(admin=true)`. Annotations are keywords which are placed in the comment block above a class or method. Learn [more about annotations](http://pagekit.com/docs/developer/routing#annotations).

To use this controller, we need to autoload our namespace and mount the controller to a route. Add the following properties to the configuration array in your `index.php`.

Expand All @@ -152,7 +152,7 @@ To use this controller, we need to autoload our namespace and mount the controll
// which controller to mount
'controller' => 'Pagekit\\Todo\\Controller\\TodoController'
]
],
],
// ...
```
Expand Down Expand Up @@ -205,8 +205,8 @@ To pass parameters to the view renderer, a controller action returns a PHP array

```
public function indexAction()
{
return [
{
return [
'$view' => [
'title' => 'TODO management',
'name' => 'todo:views/admin/index.php'
Expand Down
File renamed without changes.
Loading

0 comments on commit a6637da

Please sign in to comment.