Start creating the module, add general information

This commit is contained in:
Marc 2016-04-06 00:32:47 +01:00
parent 7a16bab7eb
commit 0302cc0bde

View File

@ -26,3 +26,40 @@ A module will contain at least four files required to function. A `module.html`
└── php
└── module.php
```
Modules are stored on the WiFi Pineapple at `/pineapple/modules/`.
##Creating a module
You can create the module files on the WiFi Pineapple with ease using the [Module Maker](https://www.wifipineapple.com/modules) module. It will create the initial files for you (with an example included), and will also allow you to package the module for distribution when you are finished.
After downloading the module, enter the correct information into the Name, Description, Version and Author fields and click "Generate". Your module will then be ready to download and edit. Open the module in your favorite text editor.
### An example module
This example will teach you how to make requests, obtain data, and return it back to the HTML.
#### module.html
The WiFi Pineapple modules make use of Bootstrap to provide a good mobile viewing experience and a clean look. Module developers are encouraged to make use of Bootstrap components, such as responsive tables and the grid system. To learn more about Bootstrap, visit the [Bootstrap Website](https://getbootstrap.com).
In this example we will make a `div` that is the width of the webpage. To do this, we will create a row, and then our `div` element which will use the `col-md-12` Bootstrap class.
Your code should look like this:
```
<div class="row">
<div class="col-md-12">
</div>
</div>
```
As the module is written with AngularJS, the HTML must be hooked up to a controller. For more information on AngularJS, visit the [AngularJS](https://angularjs.org) website.
To hook up the HTML to a controller, we will use our `div` element with the argument `ng-controller="ControllerName"`. For this example, our controller will be referred to as `ExampleController`. This div is now able to interact with your AngularJS inside of the `module.js` file.
Your code should now look like this:
```
<div class="row">
<div ng-controller="ExampleController" class="col-md-12">
</div>
</div>
```