PHP Classes

OnTime Core Backend: Manage a NoSQL database for users and features

Recommend this page to a friend!
  Info   View files Example   Screenshots Screenshots   View files View files (16)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog (1)    
Ratings Unique User Downloads Download Rankings
Not enough user ratingsTotal: 71 This week: 2All time: 10,229 This week: 96Up
Version License PHP version Categories
ontimecore 1.0.4Proprietary Licen...5PHP 5, Databases, Files and Folders, U..., T...
Description 

Author

This package can manage a NoSQL database for users and other application features.

It provides classes and traits with functions that can be used to manage the records of users other features using JSON files to store the records. Currently it can:

- Add new users
- Verify if a given user password is valid
- Update user account information
- Etc..

Picture of Mario Carrocera
  Performance   Level  
Name: Mario Carrocera is available for providing paid consulting. Contact Mario Carrocera .
Classes: 18 packages by
Country: Mexico Mexico
Age: 58
All time rank: 310236 in Mexico Mexico
Week rank: 106 Up3 in Mexico Mexico Up
Innovation award
Innovation award
Nominee: 2x

Winner: 1x

Example

<?php

ini_set
('display_errors', true);
error_reporting(E_ERROR | E_PARSE | E_NOTICE | E_WARNING);

$base='ontime/';
$AdminPassword='OT2021Free';
include_once(
$base."OnTime.php");

echo
"********** <br> Create Class <br> ********** <br> <br>";
$demo=new OnTime();
$demo->ot_error('basic content exist').'<br>';


echo
"**********+++++++++++ <br> Where not conected <br> **********+++++++++++ <br> <br>";
echo
"Id when not conected: ";echo $demo->id; echo "<br>";
echo
"Conecion statust: ";
if (
$demo->conected) {
    echo
"True";} else {
    echo
"False";}; echo "<br>";
echo
"********** <br> Show Errors<br> ********** <br> <br>";
$demo->ot_show($demo->errtext);
echo
"********** <br> Show features<br> ********** <br> <br>";
$demo->ot_show($demo->features);
echo
"********** <br> Show content<br> ********** <br> <br>";
$demo->ot_show($demo->content);
echo
"********** <br> Show Level<br> ********** <br> <br>";
$demo->ot_show($demo->level);
echo
"********** <br> Show Status<br> ********** <br> <br>";
$demo->ot_show($demo->status);

echo
"**********+++++++++++ <br> Conecting like admin <br> **********+++++++++++ <br> <br>";
echo
"Connect('admin','OT2021Free') ";
$demo->Connect('admin','OT2021Fre');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"Connect('Admin','OT2021Free') ";
$demo->Connect('Admin',$AdminPassword);
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"Connect('admin','OT2021Free') ";
$demo->Connect('admin',$AdminPassword);
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";

echo
"**********+++++++++++ <br> Loaded on conection <br> **********+++++++++++ <br> <br>";

if (
$demo->conected) {
    echo
"Id when conected: ";echo $demo->id; echo "<br>";
    echo
"Showing Public Information of the user <br>";$demo->ot_show($demo->user);echo "<br>";
    echo
"Showing Private Information of the user <br>";$demo->ot_show($demo->userp);echo "<br>";
    echo
"Showing Safety of the user <br>";$demo->ot_show($demo->safety);echo "<br>";
}

echo
"**********+++++++++++ <br> Try conect where conected <br> **********+++++++++++ <br> <br>";
echo
"Connect('admin','OT2021Free') ";
$demo->Connect('admin',$AdminPassword);
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";

echo
"**********+++++++++++ <br> User <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Adding <br> **********+ <br> <br>";
echo
"CrtUsr('admin','xxx','active','name','active')";
$demo->CrtUsr('admin','xxx','active','name','active');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"CrtUsr('demo','12345','active','Demostration User','demo')";
$demo->CrtUsr('demo','12345','active','Demostration User','demo');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"CrtUsr('xdemo','23456','active','Another User','demo')";
$demo->CrtUsr('xdemo','23456','active','Another User','demo');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"CrtUsr('Demo','34567','active','Case Sensitive User','demo')";
$demo->CrtUsr('Demo','34567','active','Case Sensitive User','demo');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"CrtUsr('last','45678','active','Last User','demo')";
$demo->CrtUsr('last','45678','active','Last User','demo');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show All <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwAll());
echo
"********** <br> Deleting <br> **********+ <br> <br>";
echo
"UsrDlt('xadmin')";
$demo->UsrDlt('xadmin');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"UsrDlt('admin')";
$demo->UsrDlt('admin');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"UsrDlt('demo')";
$demo->UsrDlt('demo');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"********** <br> Show All <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwAll());
echo
"**********+++++++++++ <br> Change User<br> **********+++++++++++ <br> <br>";
echo
"DiscConnect()";
$demo->DiscConnect();
echo
"<br>";$demo->ot_error("Disconected!!!");echo "<br>";
echo
"Connect('xdemo','23456') ";
$demo->Connect('xdemo','23456');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> User <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Deleting <br> **********+ <br> <br>";
echo
"UsrDlt('Demo')";
$demo->UsrDlt('Demo');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> Change User<br> **********+++++++++++ <br> <br>";
echo
"DiscConnect()";
$demo->DiscConnect();
echo
"<br>";$demo->ot_error("Disconected!!!");echo "<br>";
echo
"Connect('admin','OT2021Free') ";
$demo->Connect('admin',$AdminPassword);
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> User <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Change <br> **********+ <br> <br>";
echo
"UsrChgInf('zdemo','His new name', 'None')";
$demo->UsrChgInf('zdemo','His new name', 'None');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"UsrChgInf('xdemo','His new name', 'None')";
$demo->UsrChgInf('xdemo','His new name', 'None');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"MyChgInf('Still the admin', 'Mario')";
$demo->MyChgInf('Still the admin', 'Mario');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"********** <br> Show All <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwAll());
echo
"**********+++++++++++ <br> Password Check Options <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Check <br> **********+ <br> <br>";
echo
"PssChk('none','His new name')";
$demo->PssChk('none','His new name');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"PssChk('admin','fgkkjhkj')";
$demo->PssChk('admin','fgkkjhkj');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"PssChk('admin','OT2021Free')";
$demo->PssChk('admin','OT2021Free');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"PssChk('last','45678')";
$demo->PssChk('last','45678');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"**********+++++++++++ <br> Status Options <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Check status <br> **********+ <br> <br>";
echo
"UserChkStt('admin')";
echo
': '.$demo->UserChkStt('admin');echo "<br>";
echo
"********** <br> Change status <br> **********+ <br> <br>";
echo
"UserChgStt('laxt','force')";
$demo->UserChgStt('laxt','force');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"UserChgStt('last','forc')";
$demo->UserChgStt('last','forc');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"UserChgStt('last','force')";
$demo->UserChgStt('last','force');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"**********+++++++++++ <br> Change User<br> **********+++++++++++ <br> <br>";
echo
"DiscConnect()";
$demo->DiscConnect();
echo
"<br>";$demo->ot_error("Disconected!!!");echo "<br>";
echo
"Connect('last','45678') ";
$demo->Connect('last','45678');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> Force Change Password <br> **********+++++++++++ <br> <br>";
echo
"FrcPssChg('laxt','OT2021Free','87654')";
$demo->FrcPssChg('admin',$AdminPassword,'87654');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"FrcPssChg('laxt','force')";
$demo->FrcPssChg('laxt','45678','87654');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"FrcPssChg('last','5678','87654')";
$demo->FrcPssChg('last','5678','87654');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"FrcPssChg('last','45678','87654')";
$demo->FrcPssChg('last','45678','87654');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"**********+++++++++++ <br> Change User<br> **********+++++++++++ <br> <br>";
echo
"DiscConnect()";
$demo->DiscConnect();
echo
"<br>";$demo->ot_error("Disconected!!!");echo "<br>";
echo
"Connect('last','87654') ";
$demo->Connect('last','87654');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> Change my Password <br> **********+++++++++++ <br> <br>";
echo
"MyPssChg('admin','87654')";
$demo->MyPssChg('admin','87654');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"MyPssChg('87654','none')";
$demo->MyPssChg('87654','none');
echo
"<br>";$demo->ot_error("Correct!!!");echo "<br>";
echo
"**********+++++++++++ <br> Change User<br> **********+++++++++++ <br> <br>";
echo
"DiscConnect()";
$demo->DiscConnect();
echo
"<br>";$demo->ot_error("Disconected!!!");echo "<br>";
echo
"Connect('admin','OT2021Free') ";
$demo->Connect('admin','OT2021Free');
echo
"<br>";$demo->ot_error("Conected!!!");echo "<br>";
echo
"**********+++++++++++ <br> Main Feature<br> **********+++++++++++ <br> <br>";
echo
"********** <br> Show User <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwMn());
echo
"********** <br> Add User <br> **********+ <br> <br>";
echo
"UsrAddMn('admin','none') ";
$demo->UsrAddMn('admin','none');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddMn('admin','remove') ";
$demo->UsrAddMn('admin','remove');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddMn('last','remove') ";
$demo->UsrAddMn('last','remove');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddMn('Demo','remove') ";
$demo->UsrAddMn('Demo','remove');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show User <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwMn());
echo
"********** <br> Change User Level<br> **********+ <br> <br>";
echo
"UsrChgMn('admin','remove') ";
$demo->UsrChgMn('admin','remove');
echo
"<br>";$demo->ot_error("changed!!!");echo "<br>";
echo
"UsrChgMn('xdemo','remove') ";
$demo->UsrChgMn('xdemo','remove');
echo
"<br>";$demo->ot_error("changed!!!");echo "<br>";
echo
"UsrChgMn('none','remove') ";
$demo->UsrChgMn('none','remove');
echo
"<br>";$demo->ot_error("changed!!!");echo "<br>";
echo
"UsrChgMn('last','none') ";
$demo->UsrChgMn('last','none');
echo
"<br>";$demo->ot_error("changed!!!");echo "<br>";
echo
"UsrChgMn('last','owner') ";
$demo->UsrChgMn('last','owner');
echo
"<br>";$demo->ot_error("changed!!!");echo "<br>";
echo
"********** <br> Show User <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwMn());
echo
"********** <br> Delete User Level<br> **********+ <br> <br>";
echo
"UsrDltMn('admin') ";
$demo->UsrDltMn('admin');
echo
"<br>";$demo->ot_error("delete!!!");echo "<br>";
echo
"UsrDltMn('none') ";
$demo->UsrDltMn('none');
echo
"<br>";$demo->ot_error("delete!!!");echo "<br>";
echo
"UsrDltMn('last') ";
$demo->UsrDltMn('last');
echo
"<br>";$demo->ot_error("delete!!!");echo "<br>";
echo
"********** <br> Show User <br> **********+ <br> <br>";
$demo->ot_show($demo->UsrShwMn());
echo
"**********+++++++++++ <br> Other Feature<br> **********+++++++++++ <br> <br>";
echo
"********** <br> Show All <br> **********+ <br> <br>";
echo
"FrtShwAll() ";echo "<br>";
$demo->ot_show($demo->FrtShwAll());
echo
"********** <br> Show User Feature <br> **********+ <br> <br>";
echo
"UsrShwFtr('admin') ";echo "<br>";
$demo->ot_show($demo->UsrShwFtr('admin'));
echo
"********** <br> Show Feature User <br> **********+ <br> <br>";
echo
"FtrShwUsr('usr') ";echo "<br>";
$demo->ot_show($demo->FtrShwUsr('usr'));
echo
"********** <br> Add User <br> **********+ <br> <br>";
echo
"UsrAddFtr('usrx','xlast','xcreate') ";
$demo->UsrAddFtr('usrx','xlast','xcreate');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddFtr('usr','xlast','xcreate') ";
$demo->UsrAddFtr('usr','xlast','xcreate');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddFtr('usr','last','xcreate') ";
$demo->UsrAddFtr('usr','last','xcreate');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"UsrAddFtr('usr','last','create') ";
$demo->UsrAddFtr('usr','last','create');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Change User <br> **********+ <br> <br>";
echo
"UsrChgFtr('usrx','xlast','xcreate') ";
$demo->UsrChgFtr('usrx','xlast','xcreate');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"UsrChgFtr('usr','xlast','xcreate') ";
$demo->UsrChgFtr('usr','xlast','xcreate');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"UsrChgFtr('usr','last','xcreate') ";
$demo->UsrChgFtr('usr','last','xcreate');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"UsrChgFtr('usr','last','xcreate') ";
$demo->UsrChgFtr('usr','admim','create');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"UsrChgFtr('usr','last','remove') ";
$demo->UsrChgFtr('usr','last','remove');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"********** <br> Delete User <br> **********+ <br> <br>";
echo
"UsrDltFtr('usr','admim') ";
$demo->UsrDltFtr('usr','admim');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"UsrDltFtr('usrx','xlast') ";
$demo->UsrDltFtr('usrx','xlast');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"UsrDltFtr('usr','xlast') ";
$demo->UsrDltFtr('usr','xlast');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"UsrDltFtr('usr','last') ";
$demo->UsrDltFtr('usr','last');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"**********+++++++++++ <br> Errors <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Adding <br> **********+ <br> <br>";
echo
"ErrAdd('C0010M012','Description') ";
$demo->ErrAdd('C0010M012','Description');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"ErrAdd('C0010M012','Description') ";
$demo->ErrAdd('sample','sample error');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show Errors<br> ********** <br> <br>";
$demo->ot_show($demo->errtext);
echo
"********** <br> Change <br> **********+ <br> <br>";
echo
"ErrChg('none','Description') ";
$demo->ErrChg('none','Description');
echo
"<br>";$demo->ot_error("change!!!");echo "<br>";
echo
"ErrChg('sample','Description') ";
$demo->ErrChg('sample','New description');
echo
"<br>";$demo->ot_error("change!!!");echo "<br>";
echo
"********** <br> Show Errors<br> ********** <br> <br>";
$demo->ot_show($demo->errtext);
echo
"ErrDlt('none','Description') ";
$demo->ErrDlt('none','Description');
echo
"<br>";$demo->ot_error("change!!!");echo "<br>";
echo
"ErrDlt('sample','Description') ";
$demo->ErrDlt('sample','New description');
echo
"<br>";$demo->ot_error("change!!!");echo "<br>";
echo
"********** <br> Show Errors<br> ********** <br> <br>";
$demo->ot_show($demo->errtext);
echo
"**********+++++++++++ <br> Public & Private Info <br> **********+++++++++++ <br> <br>";
echo
"********** <br> Public in user add <br> **********+ <br> <br>";
echo
"MyAddPbl('wife','Beatriz')";
$demo->MyAddPbl('wife','Beatriz');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPbl('mascot','dog')";
$demo->MyAddPbl('mascot','dog');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPbl('name','Boby')";
$demo->MyAddPbl('name','Boby');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPbl('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line ')";
$demo->MyAddPbl('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line ');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show Public information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->user);
echo
"********** <br> Public in user change <br> **********+ <br> <br>";
echo
"MyChgPbl('son','Axel')";
$demo->MyChgPbl('son','Axel');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"MyChgPbl('name','Robert')";
$demo->MyChgPbl('name','Robert');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"********** <br> Show Public information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->user);
echo
"********** <br> Public in user delete <br> **********+ <br> <br>";
echo
"MyDltPbl('son')";
$demo->MyDltPbl('son');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"MyDltPbl('bio')";
$demo->MyDltPbl('bio');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"********** <br> Show Private information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->user);
echo
"********** <br> Private in user add <br> **********+ <br> <br>";
echo
"MyAddPrv('son','Axel')";
$demo->MyAddPrv('son','Axel');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPrv('phone','i don't have)";
$demo->MyAddPrv('phone','i dont have');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPrv('Color','Red')";
$demo->MyAddPrv('Color','Red');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPrv('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private ')";
$demo->MyAddPrv('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private ');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show Private information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->userp);
echo
"********** <br> Private in user change <br> **********+ <br> <br>";
echo
"MyChgPrv('Daugther','Axel')";
$demo->MyChgPrv('Daugther','Axel');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyAddPbl('Color','Blue')";
$demo->MyAddPbl('Color','Blue');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show Private information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->userp);
echo
"********** <br> Private in user delete <br> **********+ <br> <br>";
echo
"MyDltPrv('Daugther')";
$demo->MyDltPrv('Daugther');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"MyDltPrv('son')";
$demo->MyDltPrv('son');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show Private information of currente user<br> ********** <br> <br>";
$demo->ot_show($demo->userp);
echo
"********** <br> Show public information of especific user<br> ********** <br> <br>";
echo
"UserShwPbl('admin')";
$demo->ot_show($demo->UserShwPbl('admin'));
echo
"********** <br> Private in Feature add <br> **********+ <br> <br>";
echo
"FtrAddPrv('usr','Contact','Can find me in ext 1234')";
$demo->FtrAddPrv('usr','Contact','Can find me in ext 1234');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"FtrAddPrv('usr','help','Call eze at any time')";
$demo->FtrAddPrv('usr','help','Call eze at any time');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"FtrAddPrv('usr','sample','I will delete this line')";
$demo->FtrAddPrv('usr','sample','I will delete this line');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show private information of especific user<br> ********** <br> <br>";
echo
"FtrShwPrv('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPrv('usr'));echo "<br>";
echo
"********** <br> Private in Feature change <br> **********+ <br> <br>";
echo
"FtrChgPrv('usr','Contact','Dont worry not change')";
$demo->FtrChgPrv('ur','Contact','Dont worry not change');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"FtrChgPrv('usr','help','Call Eze at any time, must be capital')";
$demo->FtrChgPrv('usr','help','Call Eze at any time, must be capital');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show private information of especific user<br> ********** <br> <br>";
echo
"FtrShwPrv('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPrv('usr'));echo "<br>";
echo
"********** <br> Private in Deleted delete <br> **********+ <br> <br>";
echo
"FtrDltPrv('usr','Contact')";
$demo->FtrDltPrv('ur','Contact');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"FtrDltPrv('usr','sample')";
$demo->FtrDltPrv('usr','sample');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"********** <br> Show private information of especific user<br> ********** <br> <br>";
echo
"FtrShwPrv('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPrv('usr'));echo "<br>";
echo
"********** <br> Public in Feature add <br> **********+ <br> <br>";
echo
"FtrAddPbl('usr','Contact','To get access to users send me a mail')";
$demo->FtrAddPbl('usr','Contact','To get access to users send me a mail');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"FtrAddPbl('usr','tall','a litle more than the average')";
$demo->FtrAddPbl('usr','tall','a litle more than the average');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"FtrAddPbl('usr','sample','I will delete this line, yes this one too')";
$demo->FtrAddPbl('usr','sample','I will delete this line, yes this one too');
echo
"<br>";$demo->ot_error("Added!!!");echo "<br>";
echo
"********** <br> Show public information of especific user<br> ********** <br> <br>";
echo
"FtrShwPbl('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPbl('usr'));echo "<br>";
echo
"********** <br> Public in Feature change <br> **********+ <br> <br>";
echo
"FtrChgPbl('usr','tall','change mu mind, this is selected')";
$demo->FtrChgPbl('usr','tall','change mu mind, this is selected');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"FtrChgPbl('usr','samplx','I will delete this line, yes this one too')";
$demo->FtrChgPbl('usr','samplx','I will delete this line, yes this one too');
echo
"<br>";$demo->ot_error("Changed!!!");echo "<br>";
echo
"********** <br> Show public information of especific user<br> ********** <br> <br>";
echo
"FtrShwPbl('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPbl('usr'));echo "<br>";
echo
"********** <br> Public in Feature delete <br> **********+ <br> <br>";
echo
"FtrDltPbl('usr','tal','change mu mind, this is selected')";
$demo->FtrDltPbl('usr','tal','change mu mind, this is selected');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"FtrDltPbl('usr','sample','I will delete this line, yes this one too')";
$demo->FtrDltPbl('usr','sample','I will delete this line, yes this one too');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"********** <br> Show public information of especific user<br> ********** <br> <br>";
echo
"FtrShwPbl('usr')";echo "<br>";
$demo->ot_show($demo->FtrShwPbl('usr'));echo "<br>";
echo
"**********+++++++++++ <br> User on line<br> **********+++++++++++ <br> <br>";
echo
"********** <br> Show All <br> **********+ <br> <br>";
echo
"UsrShwNln() ";echo "<br>";
$demo->ot_show($demo->UsrShwNln());
echo
"********** <br> Deleting demo user <br> **********+ <br> <br>";
$demo->UsrDlt('Demo');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
$demo->UsrDlt('last');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
$demo->UsrDlt('xdemo');
echo
"<br>";$demo->ot_error("Deleted!!!");echo "<br>";
echo
"**********+++++++++++ <br> Demo Finish<br> **********+++++++++++ <br> <br>";
?>


Details

The main class (Core)

The OnTime framework is designed to be modular, scalable and comprehensive, so that each new feature integrates without difficulty and maintains a unique class definition (OnTime) and all "additional classes" are "trait" that enrich it, in such a way that an integrated system is obtained, not separate programs which do not necessarily have to behave correctly together.

Installation in test environment:

1.- Create an empty directory within the web container location (only for example purposes it is considered to be called ?demo?).

2.- Copy all the files in the directory (make sure to assign user permissions)

3.- With the browser of your preference, locate the directory you created and enter it

4.- Execute the OntimeInstaller.php file

5.- When executing the file, an "OnTime" directory was created, the files were moved and the required environment was created

Recommendations:

If you know how to create a subdomain that points to the "demo" directory, it is more comfortable and realistic.

After install

When installing, the necessary environment is defined to define access security, I create a User called "Admin" and that his password is "OT2021Free", this environment left the class prepared for the control of Users, Errors and Features

Relative to the System

The concept of access level is considered, have defined 8 level to can manege containers and content .

The concept of connected / disconnected is considered

?Main? is considered a special feature

The user characteristic "usr" is created

Relative to Users

Creation of users

Name Change and Nick

User deletion

Change my password

Force password change

Status management in the user

Management of public information

Management of private information

Relative to features

Management of public information

Management of private information

User assignment and their level

Relating to Errors

Creating Errors

Modification of the descriptive text

Error Elimination

Additional supports

In the directory you created there is a file two files in pdf format, the reference in English and Spanish, also the file "DemoCore.php"

mario.carrocera@hotmail.com

DemoCore Results

Create Class

basic content exist Run Instaler

+++++++++++ Where not conected +++++++++++

Id when not conected: Anonimus Conecion statust: False Show Errors

C0010M001=>Failing read content C0010M002=>Failing create content C0010M003=>Failing save content C0010M004=>Missing container C0010M005=>Mising system content,file system corrupted C0010M006=>Access error C0010M007=>Record exist C0010M008=>Record don't exist C0010M009=>Record not avaible C0010M010=>Record not visible C0010M011=>Not conected C0010M012=>Not autorized C0010M013=>Can't change id C0010M014=>Unkwow cointeiner C0010M015=>Featured just for pay vertion C0010M016=>Wrong data suply C0010M017=>Container exist C0010M018=>Not valid value C0010M019=>Feature not installed C0010M020=>Feature installed C0010M021=>Already connected C0010M022=>Record not active C0010M023=>Record not autorized C0010M024=>Unkown status C0010M025=>Not a valid status C0010M026=>Not a valid data C0010M035=>Can't delete user admin C0010M036=>Can't modify user admin Show features

usr=>usr Show content

error.json=>file features.json=>file container.json=>file level.json=>file status.json=>file users.json=>file Show Level

owner=>0 remove=>1 create=>2 change=>3 access=>4 admin=>10 delete=>11 insert=>12 update=>13 umine=>14 view=>15 vmine=>16 Show Status

active=>0 force=>1 +++++++++++ Conecting like admin +++++++++++

Connect('admin','OT2021Free') C0010M012.-Not autorized

Connect('Admin','OT2021Free') C0010M008.-Record don't exist

Connect('admin','OT2021Free') Conected!!!

+++++++++++ Loaded on conection +++++++++++

Id when conected: admin Showing Public Information of the user hobies=>play & program dog=>Boby wife=>Beatriz mascot=>dog name=>Robert phone=>i dont have Color=>Red

Showing Private Information of the user phone=>Sorry private Wife=>Bety Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private

Showing Safety of the user usr=>owner main=>owner

+++++++++++ Try conect where conected +++++++++++

Connect('admin','OT2021Free') C0010M021.-Already connected

+++++++++++ User +++++++++++

Adding +

CrtUsr('admin','xxx','active','name','active') C0010M007.-Record exist

CrtUsr('demo','12345','active','Demostration User','demo') Added!!!

CrtUsr('xdemo','23456','active','Another User','demo') Added!!!

CrtUsr('Demo','34567','active','Case Sensitive User','demo') Added!!!

CrtUsr('last','45678','active','Last User','demo') Added!!!

Show All +

Demo=>Case Sensitive User(demo) admin=>System Administrator(Administrator) demo=>Demostration User(demo) last=>Last User(demo) xdemo=>Another User(demo) Deleting +

UsrDlt('xadmin') C0010M008.-Record don't exist

UsrDlt('admin') C0010M035.-Can't delete user admin

UsrDlt('demo') Deleted!!!

Show All +

Demo=>Case Sensitive User(demo) admin=>System Administrator(Administrator) last=>Last User(demo) xdemo=>Another User(demo) +++++++++++ Change User +++++++++++

DiscConnect() Disconected!!!

Connect('xdemo','23456') Conected!!!

+++++++++++ User +++++++++++

Deleting +

UsrDlt('Demo') C0010M012.-Not autorized

+++++++++++ Change User +++++++++++

DiscConnect() Disconected!!!

Connect('admin','OT2021Free') Conected!!!

+++++++++++ User +++++++++++

Change +

UsrChgInf('zdemo','His new name', 'None') C0010M008.-Record don't exist

UsrChgInf('xdemo','His new name', 'None') Changed!!!

MyChgInf('Still the admin', 'Mario') Changed!!!

Show All +

Demo=>Case Sensitive User(demo) admin=>Still the admin(Mario) last=>Last User(demo) xdemo=>His new name(None) +++++++++++ Password Check Options +++++++++++

Check +

PssChk('none','His new name') C0010M008.-Record don't exist

PssChk('admin','fgkkjhkj') C0010M012.-Not autorized

PssChk('admin','OT2021Free') Correct!!!

PssChk('last','45678') Correct!!!

+++++++++++ Status Options +++++++++++

Check status +

UserChkStt('admin'): active Change status +

UserChgStt('laxt','force') C0010M008.-Record don't exist

UserChgStt('last','forc') C0010M008.-Record don't exist

UserChgStt('last','force') Correct!!!

+++++++++++ Change User +++++++++++

DiscConnect() Disconected!!!

Connect('last','45678') C0010M022.-Record not active

+++++++++++ Force Change Password +++++++++++

FrcPssChg('laxt','OT2021Free','87654') C0010M025.-Not a valid status

FrcPssChg('laxt','force') C0010M008.-Record don't exist

FrcPssChg('last','5678','87654') C0010M012.-Not autorized

FrcPssChg('last','45678','87654') Correct!!!

+++++++++++ Change User +++++++++++

DiscConnect() C0010M011.-Not conected

Connect('last','87654') Conected!!!

+++++++++++ Change my Password +++++++++++

MyPssChg('admin','87654') C0010M012.-Not autorized

MyPssChg('87654','none') Correct!!!

+++++++++++ Change User +++++++++++

DiscConnect() Disconected!!!

Connect('admin','OT2021Free') Conected!!!

+++++++++++ Main Feature +++++++++++

Show User +

admin=>owner Add User +

UsrAddMn('admin','none') C0010M008.-Record don't exist

UsrAddMn('admin','remove') C0010M007.-Record exist

UsrAddMn('last','remove') Added!!!

UsrAddMn('Demo','remove') Added!!!

Show User +

admin=>owner last=>remove Demo=>remove Change User Level +

UsrChgMn('admin','remove') C0010M036.-Can't modify user admin

UsrChgMn('xdemo','remove') C0010M008.-Record don't exist

UsrChgMn('none','remove') C0010M008.-Record don't exist

UsrChgMn('last','none') C0010M008.-Record don't exist

UsrChgMn('last','owner') changed!!!

Show User +

admin=>owner last=>remove Demo=>remove Delete User Level +

UsrDltMn('admin') C0010M036.-Can't modify user admin

UsrDltMn('none') C0010M008.-Record don't exist

UsrDltMn('last') delete!!!

Show User +

admin=>owner Demo=>remove +++++++++++ Other Feature +++++++++++

Show All +

FrtShwAll() usr=>Users Feature(Users) Show User Feature +

UsrShwFtr('admin') usr=>owner main=>owner Show Feature User +

FtrShwUsr('usr') Demo1=>1 admin=>owner Add User +

UsrAddFtr('usrx','xlast','xcreate') C0010M012.-Not autorized

UsrAddFtr('usr','xlast','xcreate') C0010M008.-Record don't exist

UsrAddFtr('usr','last','xcreate') C0010M008.-Record don't exist

UsrAddFtr('usr','last','create') Added!!!

Change User +

UsrChgFtr('usrx','xlast','xcreate') C0010M012.-Not autorized

UsrChgFtr('usr','xlast','xcreate') C0010M008.-Record don't exist

UsrChgFtr('usr','last','xcreate') C0010M008.-Record don't exist

UsrChgFtr('usr','last','xcreate') C0010M008.-Record don't exist

UsrChgFtr('usr','last','remove') Changed!!!

Delete User +

UsrDltFtr('usr','admim') C0010M008.-Record don't exist

UsrDltFtr('usrx','xlast') C0010M012.-Not autorized

UsrDltFtr('usr','xlast') C0010M008.-Record don't exist

UsrDltFtr('usr','last') Deleted!!!

+++++++++++ Errors +++++++++++

Adding +

ErrAdd('C0010M012','Description') C0010M007.-Record exist

ErrAdd('C0010M012','Description') Added!!!

Show Errors

C0010M001=>Failing read content C0010M002=>Failing create content C0010M003=>Failing save content C0010M004=>Missing container C0010M005=>Mising system content,file system corrupted C0010M006=>Access error C0010M007=>Record exist C0010M008=>Record don't exist C0010M009=>Record not avaible C0010M010=>Record not visible C0010M011=>Not conected C0010M012=>Not autorized C0010M013=>Can't change id C0010M014=>Unkwow cointeiner C0010M015=>Featured just for pay vertion C0010M016=>Wrong data suply C0010M017=>Container exist C0010M018=>Not valid value C0010M019=>Feature not installed C0010M020=>Feature installed C0010M021=>Already connected C0010M022=>Record not active C0010M023=>Record not autorized C0010M024=>Unkown status C0010M025=>Not a valid status C0010M026=>Not a valid data C0010M035=>Can't delete user admin C0010M036=>Can't modify user admin sample=>sample error Change +

ErrChg('none','Description') C0010M008.-Record don't exist

ErrChg('sample','Description') change!!!

Show Errors

C0010M001=>Failing read content C0010M002=>Failing create content C0010M003=>Failing save content C0010M004=>Missing container C0010M005=>Mising system content,file system corrupted C0010M006=>Access error C0010M007=>Record exist C0010M008=>Record don't exist C0010M009=>Record not avaible C0010M010=>Record not visible C0010M011=>Not conected C0010M012=>Not autorized C0010M013=>Can't change id C0010M014=>Unkwow cointeiner C0010M015=>Featured just for pay vertion C0010M016=>Wrong data suply C0010M017=>Container exist C0010M018=>Not valid value C0010M019=>Feature not installed C0010M020=>Feature installed C0010M021=>Already connected C0010M022=>Record not active C0010M023=>Record not autorized C0010M024=>Unkown status C0010M025=>Not a valid status C0010M026=>Not a valid data C0010M035=>Can't delete user admin C0010M036=>Can't modify user admin sample=>New description ErrDlt('none','Description') C0010M008.-Record don't exist

ErrDlt('sample','Description') change!!!

Show Errors

C0010M001=>Failing read content C0010M002=>Failing create content C0010M003=>Failing save content C0010M004=>Missing container C0010M005=>Mising system content,file system corrupted C0010M006=>Access error C0010M007=>Record exist C0010M008=>Record don't exist C0010M009=>Record not avaible C0010M010=>Record not visible C0010M011=>Not conected C0010M012=>Not autorized C0010M013=>Can't change id C0010M014=>Unkwow cointeiner C0010M015=>Featured just for pay vertion C0010M016=>Wrong data suply C0010M017=>Container exist C0010M018=>Not valid value C0010M019=>Feature not installed C0010M020=>Feature installed C0010M021=>Already connected C0010M022=>Record not active C0010M023=>Record not autorized C0010M024=>Unkown status C0010M025=>Not a valid status C0010M026=>Not a valid data C0010M035=>Can't delete user admin C0010M036=>Can't modify user admin +++++++++++ Public & Private Info +++++++++++

Public in user add +

MyAddPbl('wife','Beatriz') C0010M007.-Record exist

MyAddPbl('mascot','dog') C0010M007.-Record exist

MyAddPbl('name','Boby') C0010M007.-Record exist

MyAddPbl('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line ') Added!!!

Show Public information of currente user

hobies=>play & program dog=>Boby wife=>Beatriz mascot=>dog name=>Robert phone=>i dont have Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line Public in user change +

MyChgPbl('son','Axel') C0010M008.-Record don't exist

MyChgPbl('name','Robert') Changed!!!

Show Public information of currente user

hobies=>play & program dog=>Boby wife=>Beatriz mascot=>dog name=>Robert phone=>i dont have Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line Public in user delete +

MyDltPbl('son') C0010M008.-Record don't exist

MyDltPbl('bio') Changed!!!

Show Private information of currente user

hobies=>play & program dog=>Boby wife=>Beatriz mascot=>dog name=>Robert phone=>i dont have Color=>Red Private in user add +

MyAddPrv('son','Axel') Added!!!

MyAddPrv('phone','i don't have) C0010M007.-Record exist

MyAddPrv('Color','Red') C0010M007.-Record exist

MyAddPrv('bio','in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private ') C0010M007.-Record exist

Show Private information of currente user

phone=>Sorry private Wife=>Bety Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private son=>Axel Private in user change +

MyChgPrv('Daugther','Axel') C0010M008.-Record don't exist

MyAddPbl('Color','Blue') C0010M007.-Record exist

Show Private information of currente user

phone=>Sorry private Wife=>Bety Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private son=>Axel Private in user delete +

MyDltPrv('Daugther') C0010M008.-Record don't exist

MyDltPrv('son') Added!!!

Show Private information of currente user

phone=>Sorry private Wife=>Bety Color=>Red bio=>in the example y usually write short related information, but is just that a little example, could be so long as you need, feel free to do ur own test, look that i just write all this text to have more than one line, in private Show public information of especific user

UserShwPbl('admin')hobies=>play & program dog=>Boby wife=>Beatriz mascot=>dog name=>Still the admin phone=>i dont have Color=>Red nick=>Mario Private in Feature add +

FtrAddPrv('usr','Contact','Can find me in ext 1234') C0010M007.-Record exist

FtrAddPrv('usr','help','Call eze at any time') C0010M007.-Record exist

FtrAddPrv('usr','sample','I will delete this line') Added!!!

Show private information of especific user

FtrShwPrv('usr') when=>today Contact=>Can find me in ext 1234 help=>Call Eze at any time, must be capital sample=>I will delete this line

Private in Feature change +

FtrChgPrv('usr','Contact','Dont worry not change') C0010M008.-Record don't exist

FtrChgPrv('usr','help','Call Eze at any time, must be capital') Added!!!

Show private information of especific user

FtrShwPrv('usr') when=>today Contact=>Can find me in ext 1234 help=>Call Eze at any time, must be capital sample=>I will delete this line

Private in Deleted delete +

FtrDltPrv('usr','Contact') C0010M008.-Record don't exist

FtrDltPrv('usr','sample') Deleted!!!

Show private information of especific user

FtrShwPrv('usr') when=>today Contact=>Can find me in ext 1234 help=>Call Eze at any time, must be capital

Public in Feature add +

FtrAddPbl('usr','Contact','To get access to users send me a mail') C0010M007.-Record exist

FtrAddPbl('usr','tall','a litle more than the average') C0010M007.-Record exist

FtrAddPbl('usr','sample','I will delete this line, yes this one too') Added!!!

Show public information of especific user

FtrShwPbl('usr') when=>yesterday Contact=>To get access to users send me a mail tall=>change mu mind, this is selected sample=>I will delete this line, yes this one too

Public in Feature change +

FtrChgPbl('usr','tall','change mu mind, this is selected') Changed!!!

FtrChgPbl('usr','samplx','I will delete this line, yes this one too') C0010M008.-Record don't exist

Show public information of especific user

FtrShwPbl('usr') when=>yesterday Contact=>To get access to users send me a mail tall=>change mu mind, this is selected sample=>I will delete this line, yes this one too

Public in Feature delete +

FtrDltPbl('usr','tal','change mu mind, this is selected') C0010M008.-Record don't exist

FtrDltPbl('usr','sample','I will delete this line, yes this one too') Deleted!!!

Show public information of especific user

FtrShwPbl('usr') when=>yesterday Contact=>To get access to users send me a mail tall=>change mu mind, this is selected

+++++++++++ User on line +++++++++++

Show All +

UsrShwNln() admin=>Still the admin(Mario) Deleting demo user +

Deleted!!!

Deleted!!!

Deleted!!!

+++++++++++ Demo Finish +++++++++++


Screenshots  
  • bestpractice.jpg
  Files folder image Files  
File Role Description
Accessible without login Plain text file DemoCore.php Example Example script
Accessible without login Plain text file licencia Data Auxiliary data
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file license Lic. License text
Plain text file OnTime.php Class Class source
Plain text file OnTimeAllways.php Class Class source
Plain text file OnTimeContent.php Class Class source
Plain text file OnTimeCoreA.php Class Class source
Plain text file OnTimeCoreB.php Class Class source
Plain text file OnTimeCripto.php Class Class source
Plain text file OnTimeDebug.php Class Class source
Plain text file OnTimeFunctions.php Class Class source
Accessible without login Plain text file OntimeInstaller.php Example Example script
Plain text file OnTimetmp.php Class Class source
Plain text file OTicore.php Class Class source
Accessible without login Plain text file README.md Doc. Documentation

Downloadontimecore-2021-05-01.zip 218KB
Downloadontimecore-2021-05-01.tar.gz 215KB
Install with ComposerInstall with Composer
Needed packages  
Class DownloadWhy it is needed Dependency
OnTime Group Backend Download .zip .tar.gz Add Group Manager Optional
HTML Nav bar using PHP on Time Download .zip .tar.gz Implements a Nav Bar Optional
HTML LayOut using PHP on Time Download .zip .tar.gz Implement Layout Optional
HTML CSS Styles using PHP on Time Download .zip .tar.gz Implements Css Html Optional
HTML Google Fonts using PHP on Time Download .zip .tar.gz Implement Google Font on HTML Optional
HTML Metatags using PHP on Time Download .zip .tar.gz Html Meta Tag pacakage Optional
OnTime PHP Multi Language trait Download .zip .tar.gz Add Multilenguage to the database Optional
Easy PHP SOAP Server Web Service Download .zip .tar.gz Add soap webservice server Optional
OnTime Table Trait Download .zip .tar.gz Add table feature with myltiple fields validatied Optional
On Time Data Dictionary and Record Trait Download .zip .tar.gz Add Data Dictuionary and record information Optional
OnTime Timezones and Formats Trait Download .zip .tar.gz Add Date, time & timezones managemt Optional
OnTime Debugger Backend Trait Download .zip .tar.gz Add the ability to debug the class Optional
OnTime Basic Content Trait Backend Download .zip .tar.gz Add Sumple 2 field tables Optional
HTML Include Images and Text using PHP on Time Download .zip .tar.gz Implement image & text Optional
 Version Control Reuses Unique User Downloads Download Rankings  
 94%8
Total:71
This week:2
All time:10,229
This week:96Up