diff options
Diffstat (limited to 'demos/time-tracker')
-rw-r--r-- | demos/time-tracker/index_php.php | 33 | ||||
-rw-r--r-- | demos/time-tracker/protected/application.php | 49 | ||||
-rw-r--r-- | demos/time-tracker/protected/pages/TimeTracker/config.php | 30 |
3 files changed, 112 insertions, 0 deletions
diff --git a/demos/time-tracker/index_php.php b/demos/time-tracker/index_php.php new file mode 100644 index 00000000..b74690e4 --- /dev/null +++ b/demos/time-tracker/index_php.php @@ -0,0 +1,33 @@ +<?php + +$basePath=dirname(__FILE__); +//$frameworkPath='../../framework/pradolite.php'; +$frameworkPath='../../framework/prado.php'; +$assetsPath=$basePath."/assets"; +$runtimePath=$basePath."/protected/runtime"; + +$sqlite_dir = $basePath."/protected/App_Data/SQLite"; +$sqlite_db = $sqlite_dir.'/time-tracker.db'; + +if(!is_file($frameworkPath)) + die("Unable to find prado framework path $frameworkPath."); +if(!is_writable($assetsPath)) + die("Please make sure that the directory $assetsPath is writable by Web server process."); +if(!is_writable($runtimePath)) + die("Please make sure that the directory $runtimePath is writable by Web server process."); +if(!is_writable($sqlite_dir)) + die("Please make sure that the directory $sqlite_dir is writable by Web server process."); +if(!is_writable($sqlite_db)) + die("Please make sure that the sqlite database file $sqlite_dir is writable by Web server process."); + +require_once($frameworkPath); + +function h($text) +{ + $app = Prado::getApplication()->getGlobalization(); + $charset = $app ? $app->getCharset() : 'UTF-8'; + return htmlentities($text, ENT_QUOTES, $charset); +} + +$application=new TApplication; +$application->run('protected',false,TApplication::CONFIG_TYPE_PHP);
\ No newline at end of file diff --git a/demos/time-tracker/protected/application.php b/demos/time-tracker/protected/application.php new file mode 100644 index 00000000..4fd65d04 --- /dev/null +++ b/demos/time-tracker/protected/application.php @@ -0,0 +1,49 @@ +<?php +return array( + 'application' => array( + 'id'=>'Time-Tracker', + 'Mode'=>'Debug' + ), + 'paths' => array( + 'aliases' => array( + 'Quickstart' => '../../quickstart', + ), + 'using' => array( + 'System.Data.*', + 'System.Security.*', + 'Application.App_Code.*', + 'Application.App_Code.Dao.*', + 'Application.App_Data.*', + ), + ), + 'modules' => array( + 'daos' => array( + 'class' => 'DaoManager', + 'properties' => array( + 'EnableCache' => 'true', + 'configFile' => 'Application.App_Data.sqlite-sqlmap', + ), + 'daos' => array( + 'UserDao' => 'Application.App_Code.Dao.UserDao', + 'ProjectDao' => 'Application.App_Code.Dao.ProjectDao', + 'TimeEntryDao' => 'Application.App_Code.Dao.TimeEntryDao', + 'CategoryDao' => 'Application.App_Code.Dao.CategoryDao', + 'ReportDao' => 'Application.App_Code.Dao.ReportDao', + ) + ), + 'globalization' => array( + 'class' => 'System.I18N.TGlobalization', + 'properties' => array( + 'CharSet' => 'UTF-8', + ), + ), + ), + 'services' => array( + 'page' => array( + 'class' => 'TPageService', + 'properties' => array( + 'DefaultPage' => 'TimeTracker.LogTimeEntry', + ), + ), + ), +);
\ No newline at end of file diff --git a/demos/time-tracker/protected/pages/TimeTracker/config.php b/demos/time-tracker/protected/pages/TimeTracker/config.php new file mode 100644 index 00000000..8668ca15 --- /dev/null +++ b/demos/time-tracker/protected/pages/TimeTracker/config.php @@ -0,0 +1,30 @@ +<?php +return array( + 'modules' => array( + 'users' => array( + 'class' => 'Application.App_Code.UserManager', + ), + 'auth' => array( + 'class' => 'Application.App_Code.TrackerAuthManager', + 'properties' => array( + 'UserManager' => 'users', + 'LoginPage' => 'TimeTracker.Login' + ), + ), + ), + 'authorization' => array( + array('action'=>'allow','pages'=>'ProjectList, ProjectDetails, ReportResource, ReportProject','roles'=>'manager'), + array('action'=>'allow','pages'=>'LogTimeEntry','roles'=>'consultant'), + array('action'=>'allow','pages'=>'UserCrate,Logout,Login','users'=>'*'), + array('action'=>'deny','users'=>'*'), + ), + 'pages' => array( + 'properties' => array( + 'MasterClass' => 'Application.pages.TimeTracker.MainLayout', + 'Theme' => 'TimeTracker', + ), + ), + 'parameters' => array( + 'NewUserRoles' => 'admin,manager,consultant', + ), +);
\ No newline at end of file |