|
1 year ago | |
---|---|---|
lang | 1 year ago | |
lib | 1 year ago | |
mobile | 1 year ago | |
nbproject | 1 year ago | |
pages | 1 year ago | |
static | 1 year ago | |
.gitignore | 2 years ago | |
.gitmodules | 2 years ago | |
LICENSE.md | 1 year ago | |
README.md | 1 year ago | |
action.php | 1 year ago | |
api.php | 1 year ago | |
app.php | 1 year ago | |
composer.json | 1 year ago | |
composer.lock | 1 year ago | |
index.php | 1 year ago | |
pages.php | 1 year ago | |
required.php | 1 year ago | |
settings.template.php | 1 year ago |
This is an empty (but fully functional) PHP application. It is designed to integrate with AccountHub, an account management web interface. AccountHub manages user credentials and account data, and is accessed by this app via a simple API.
LANGUAGE
in settings.php
.
Translate the values (but not the keys) in en_us.php
into other languages and save in appropriately named files to add languages.pages.php
and define a page with the name foo
, there should be a foo.php
in here.
The app checks before loading, so it will give a friendly 404 error if it doesn’t find your page.
Woe to you if you delete home.php
or 404.php
, as those are assumed to exist for fallback behavior.settings.php
and customize. Documented with inline comments.require_once __DIR__."/required.php"
at the top of every file.
It loads Composer dependencies, app settings, language data, and creates $database
for accessing the database.
It also has some utility functions, including dieifnotloggedin()
, is_empty($var)
, and lang('key')
.
Read through it to see what those functions do.app.php
after authenticating user.
It includes 2fa support, by the way.index.php
if the user is not logged in.
Note: to show an alert message (success, error, whatever), set the GET argument msg
to a message ID from lang/messages.php
.pages/{key}.php
, or it will 404.
Optional parameters:
'navbar' => true
will show the page as a button in the app menu bar.
'icon' => '...'
will show an icon from FontAwesome in the menu bar. Setting this to home
will show the icon fa-home
.
'styles' => ["file.css"]
will inject the listed CSS files into the page header (after all other CSS, like Bootstrap).
'scripts' => ["file.js"]
will inject the listed JavaScript files into the page footer (after jQuery and other builtin scripts)."string"
is the language string for the message, "type"
is one of success
, info
, warning
, or danger
(i.e. Bootstrap alert classes).
Changing the type changes the icon and color of the alert box.
*lang/en_us.php
Language data for US English.
*lib/login.php
Functions for logging in users and stuff like that. Most functions transparently makes requests to the AccountHub API and return the results.
*lib/userinfo.php
Functions for getting user data, like real names and managed employees.
*static/css/app.css
Custom styles for the app. See the comments inside for instructions on theming the app.