Source for file report.php

Documentation is available at report.php


1 <?php
2 /**
3 * Main() for Report
4 *
5 * @uses Page
6 * @uses Worker
7 * @uses Project
8 * @uses Company
9 * @uses Date
10 * @uses Time
11 * @version $Id: report.php,v 1.4 2003/09/17 10:42:18 cybot_tm Exp $
12 * @category phpTimeSheet
13 * @package phpTimeSheet
14 */
15
16 /**
17 *
18 */
19 require_once 'config.inc.php';
20 require_once 'function.inc.php';
21 require_once 'db.inc.php';
22 require_once 'worker.class.php';
23 require_once 'project.class.php';
24 require_once 'company.class.php';
25
26 if(!isset($PHP_AUTH_USER) || !isset($PHP_AUTH_PW)) {
27 $realm = "Zeiterfassung - Administrationsbeereich " . strftime("%c",time());
28 Header( "WWW-authenticate: Basic realm=\"$realm\"");
29 Header( "HTTP/1.0 401 Unauthorized");
30 include(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_UNAUTH);;
31 exit;
32 }
33
34 $adminworker = new Worker(0);
35
36 if(!$adminworker->lookup_worker_by_name($PHP_AUTH_USER)) {
37 $realm = "Zeiterfassung - Administrationsbeereich " . strftime("%c",time());
38 Header( "WWW-authenticate: Basic realm=\"$realm\"");
39 Header( "HTTP/1.0 401 Unauthorized");
40 include(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_UNAUTH);;
41 exit;
42 }
43
44 if(isset($logout)){
45 $adminworker->logout(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_LOGOUT);
46 exit;
47 }
48
49 if(!$adminworker->authenticate($PHP_AUTH_PW)){
50 $realm = "Zeiterfassung - Administrationsbeereich " . strftime("%c",time());
51 Header( "WWW-authenticate: Basic realm=\"$realm\"");
52 Header( "HTTP/1.0 401 Unauthorized");
53 include(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_UNAUTH);;
54 exit;
55 }
56
57 if(!$adminworker->get_admin()){
58 Header( "HTTP/1.0 401 Unauthorized");
59 Header( "Location: timesheet.php");
60 exit;
61 }
62
63 if($PHP_AUTH_PW == PTS_ADMIN_PASS){
64 $message = "Achtung!!! Das Administrator-Passwort wurde noch nicht geändert!!!";
65 }
66
67 /*Generate reports */
68 if($report_worker){
69 $myworker = new Worker($worker_target);
70 switch($report_type){
71 case "job" :
72 $myworker->job_report(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_WORKER_REPORT_DETAIL, $job_id);
73 exit;
74 case "month":
75 if (!$month) $month = date("m");
76 if (!$year) $year = date("Y");
77 $myworker->month_report(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_WORKER_REPORT_MONTH, $month, $year);
78 exit;
79 default :
80 $myworker->report_form(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_WORKER_REPORT, $report_type, $job_id);
81 exit;
82 }/*switch($report_type)*/
83 }
84
85 if($report_pid){
86 $mypid = new Pid($pid_target);
87 switch ($report_type) {
88 case "detail" :
89 $mypid->detail_report(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_REPORT_JOB_DETAIL,$worker_target);
90 exit;
91 case "worker" :
92 $myworker = new Worker($worker_target);
93 $myworker->job_report(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_WORKER_REPORT_DETAIL, $pid_target);
94 exit;
95 default :
96 $mypid->report_form(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_REPORT_PROJECT, 1);
97 exit;
98 }
99 }
100
101 if($report_company){
102 $mycomp = new Company($comp_target);
103 switch($report_type){
104 default :
105 $mycomp->report_form(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_COMPANY_REPORT);
106 exit;
107 }
108 }
109
110 /*Default action display report menu*/
111 $pid_list = list_pids();
112 $worker_list = list_workers();
113 $comp_list = list_companies();
114
115 include(TEMPLATES_DIR . "/" . LANG . "/" . PTS_TMPL_REPORT);
116 ?>

Documentation generated on Fri, 26 Sep 2003 15:39:56 +0200 by phpDocumentor 1.2.2