예제 #1
0
        $end_date = $end_day->format("%e");
        $start_data_pretty[$i] = "{$start_month} {$start_date}-" . ($start_month == $end_month ? $end_date : "{$end_month} {$end_date}");
        $start_data_linkable[$i] = urlencode($start_day->getDate());
        //		$starts[$i] =  $start_day->format($df);
        $sql = "\n\t\t\tSELECT\n\t\t\t\ttask_log_creator,\n\t\t\t\tsum(task_log_hours) as hours\n\t\t\tFROM\n\t\t\t\ttask_log\n\t\t\tWHERE\n\t\t\t\ttask_log_date >= '" . $start_day->format(FMT_DATETIME_MYSQL) . "' \n\t\t\t\tAND task_log_date <= '" . $end_day->format(FMT_DATETIME_MYSQL) . "'\n\t\t\t\tAND task_log_creator in (" . implode(", ", $ids) . ")\n\t\t\tGROUP BY\n\t\t\t\ttask_log_creator\n\t\t\t";
        //print "<pre>$sql</pre>";
        $result = db_loadList($sql);
        foreach ($result as $row) {
            $people[$row['task_log_creator']][$i] = $row['hours'];
        }
        $date = $start_day->format("%Y-%m-%d") . " 12:00:00";
        $start_day->setDate($date, DATE_FORMAT_ISO);
        $start_day->addDays(-7);
    }
}
$sql = "SELECT company_id, company_name FROM companies WHERE " . getPermsWhereClause("companies", "company_id") . " ORDER BY company_name";
//print "<pre>$sql</pre>";
$companies = arrayMerge(array(0 => $AppUI->_('All Entities')), db_loadHashList($sql));
$next_day = new CDate();
$next_day->copy($start_day);
$next_day->addDays($week_count * 7 * 2);
?>
<form name="frmCompanySelect" action="" method="get">
	<input type="hidden" name="m" value="timecard">
	<input type="hidden" name="report_type" value="weekly_by_user">
	<input type="hidden" name="tab" value="<?php 
echo $tab;
?>
">
	<table cellspacing="1" cellpadding="2" border="0" width="100%">
	<tr>
예제 #2
0
&start_date=<?php 
echo urlencode($next_date->getDate());
?>
"><img src="./images/next.gif" width="16" height="16" alt="<?php 
echo $AppUI->_('next');
?>
" border="0"></a></td>
	<?php 
if ($show_other_worksheets) {
    ?>
			<td align="right">
					<select name="user_id" onChange="document.user_select.submit();">
	<?php 
    //$sql = "SELECT user_id, user_username, user_last_name
    //FROM users WHERE user_id=".$AppUI->user_id." or (".getPermsWhereClause("companies", "user_company").") ORDER BY user_last_name, user_first_name";
    $sql = "SELECT users.user_contact,users.user_id,contacts.contact_first_name,contacts.contact_last_name,contacts.contact_id\n\t\tFROM users\n\t\tinner JOIN contacts on contact_id = user_contact\n\t\tWHERE users.user_contact = " . $AppUI->user_id . " or (" . getPermsWhereClause("companies", "user_company") . ") ORDER BY contact_last_name, contact_first_name";
    $result = db_loadList($sql);
    foreach ($result as $user) {
        echo "<option value=\"" . $user["user_id"] . "\"" . ($user["user_id"] == $user_id ? "selected" : "") . ">" . $user["contact_last_name"] . " " . $user["contact_first_name"] . "</option>\n";
    }
    ?>
					</select>
			</td>
			<td align="left" nowrap="nowrap"><a href="?m=timecard&tab=0&user_id=<?php 
    echo $AppUI->user_id . '">[' . $AppUI->_('My Time Card') . "]</a></td>";
    ?>
	<?php 
}
?>
		</tr>
	<?php 
예제 #3
0
 public static function getUserList()
 {
     global $AppUI;
     $q = new DBQuery();
     $q->addQuery('users.user_contact,users.user_id,co.contact_first_name,co.contact_last_name,co.contact_id');
     $q->addTable('users');
     $q->addJoin('contacts', 'co', 'co.contact_id = users.user_contact', 'inner');
     $q->addWhere('users.user_contact = ' . $AppUI->user_id . ' or (' . getPermsWhereClause('companies', 'user_company') . ')');
     $q->addOrder('contact_first_name, contact_last_name');
     $result = $q->loadList();
     $retres = array();
     foreach ($result as $user) {
         if (self::isUserActive($user["user_id"])) {
             $retres[] = $user;
         }
     }
     return $retres;
 }
예제 #4
0
//Based largely on the page with the same funtion in the existing TimeTrack module by ajdonnison.
// check permissions
$m = $AppUI->checkFileName(dPgetParam($_GET, 'm', getReadableModule()));
$denyEdit = getDenyEdit($m);
if ($denyEdit) {
    $AppUI->redirect("m=public&a=access_denied");
}
require_once $AppUI->getSystemClass('date');
//***START MOD*** pedroa 20050609
require_once $AppUI->getModuleClass('projects');
global $AppUI;
//***END MOD
$df = $AppUI->getPref('SHDATEFORMAT');
$tid = isset($_GET['tid']) ? $_GET['tid'] : 0;
$winnow_project = getPermsWhereClause("projects", "projects.project_id");
$winnow_tasks = getPermsWhereClause("tasks", "tasks.task_id");
//pull data
// if we have a TID, then we editing an existing row
$sql = " \nSELECT task_log.*, project_name, task_name, task_project, project_company \nFROM task_log\nLEFT JOIN tasks ON task_id = task_log_task\nLEFT JOIN projects ON project_id = task_project\nWHERE  task_log_id = {$tid} \n\tAND {$winnow_project}\n\tAND {$winnow_tasks}\n";
db_loadHash($sql, $task);
$is_new_record = !$tid;
$task_found = $task['project_company'] != FALSE;
$require_task_info = $is_new_record || $task_found;
global $TIMECARD_CONFIG;
//Prevent users from editing other ppls timecards.
$can_edit_other_timesheets = $TIMECARD_CONFIG['minimum_edit_level'] >= $AppUI->user_type;
if (!$can_edit_other_timesheets) {
    if (isset($_GET['tid']) && (isset($v['task_log_creator']) && $task['task_log_creator'] != $AppUI->user_id || !isset($task['task_log_creator']))) {
        $AppUI->redirect("m=public&a=access_denied");
    }
}