function nf_chkLookupListsbeforeDelete($listid, $id) { global $_TABLES, $NF_LISTS, $NF_MYAPP; $retval = ''; // Depending on the list, you will need to customize this logic to test if it is used // Example: Check if role name (list field 1) in this list is used in any workflows if ($listid = $NF_MYAPP['lookuplists']['expense_request_roles']) { // Check and see if this role 'process variable name' is used in a workflows $variableName = nexlistValue($listid, $id, 0); if (DB_count($_TABLES['nf_templatevariables'], 'variableName', $variableName)) { $retval = 'Nexflow is using this list item to assign workflow tasks'; } } return $retval; }
if ($key != 'task_number') { switch ($key) { case 'project_number': $output = nexlistValue($CONF_NEXTIME['nexlist_nextime_projects'], $XX['project_id'], 0); $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $output); break; case 'nextime_activity_id': $output = nexlistValue($CONF_NEXTIME['nexlist_nextime_activities'], $XX['nextime_activity_id'], 0); $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $output); break; case 'project_id': $output = nexlistValue($CONF_NEXTIME['nexlist_nextime_projects'], $XX['project_id'], 1); $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $output); break; case 'task_id': $output = nexlistValue($CONF_NEXTIME['nexlist_timesheet_tasks'], $XX['task_id'], 1); $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $output); break; case 'total_reg_hours': $output = $ts->getTotalHRSFromID($XX['id']); $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $output == 0 ? '' : $output); break; default: $objPHPExcel->getActiveSheet()->setCellValue($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter, $XX[$key] == 0 ? '' : $XX[$key]); break; } $objPHPExcel->getActiveSheet()->getStyle($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); if ($key == 'total_reg_hours') { $objPHPExcel->getActiveSheet()->getStyle($CONF_NEXTIME['report_columns'][$colnum] . $rowCounter)->getFont()->setBold(true); } if ($colnum >= 7 || $colnum <= 20) {
function selectByProjectHoursByUser($uid, $startStamp, $endStamp) { global $CONF_NEXTIME; $sql = "SELECT project_id,sum(regular_time+time_1_5+time_2_0+evening_hours+stat_time+vacation_time_used+floater+sick_time+bereavement+jury_duty+unpaid_hrs+other+adjustment) as tot "; $sql .= " FROM {$this->fulltablename} WHERE uid={$uid} AND datestamp>='{$startStamp}' AND datestamp<='{$endStamp}' "; $sql .= "GROUP BY project_id "; $res = DB_query($sql, 1); $retarray = array(); while ($A = DB_fetchArray($res)) { $projnumber = nexlistValue($CONF_NEXTIME['nexlist_nextime_projects'], $A['project_id'], 0); if ($projnumber == '') { $projnumber = 'Misc. '; } //if we have an identical key.. don't overwrite it! tally it up if (array_key_exists($projnumber, $retarray)) { $retarray["{$projnumber}"] += $A['tot']; } else { $retarray["{$projnumber}"] = $A['tot']; } //com_errorlog("$projnumber {$A['tot']}"); } return $retarray; }
function getSupervisorUID($employeeUID) { global $CONF_NEXTIME, $_USER; $list = nexlistOptionList('alist', '', $CONF_NEXTIME['nexlist_employee_to_supervisor'], 1, '', '0:' . $employeeUID); foreach ($list as $x => $val) { $thisuid = nexlistValue($CONF_NEXTIME['nexlist_employee_to_supervisor'], $x, 1); return $thisuid; } }
function prj_viewproject_details($id) { global $_PRJCONF, $_TABLES, $_CONF, $_USER, $pluginLangLabels, $progress, $priority, $status; $sql = "SELECT p.*, s.description 'statusdesc' FROM {$_TABLES['prj_projects']} p "; $sql .= "LEFT JOIN {$_TABLES['prj_statuslog']} s ON p.pid=s.pid WHERE p.pid='{$id}' order by s.slid desc"; $result = DB_query($sql); $projectrec = DB_fetchArray($result); $p = new Template($_CONF['path_layout'] . 'nexproject'); $p->set_file(array('project' => 'viewproject.thtml', 'tasklog' => 'tasklog_record.thtml')); $p->set_var($pluginLangLabels); $p->set_var('show_resources', 'none'); prj_setTemplateVars($p, $projectrec); $project_owner = COM_getDisplayName(DB_getItem($_TABLES['prj_users'], 'uid', "pid = {$id} AND role='o'")); $p->set_var('VALUE_project_owner', $project_owner); $p->set_var('VALUE_progress_color', $progress[$projectrec['progress_id']]); $p->set_var('VALUE_status', $status[$projectrec['status_id']]); $p->set_var('VALUE_priority', $priority[$projectrec['priority_id']]); $p->set_var('VALUE_objective', nexlistValue($_PRJCONF['nexlist_objective'], $projectrec['objective_id'], 0)); $query = DB_query("SELECT location_id FROM {$_TABLES['prj_location']} WHERE pid='{$id}'"); while (list($location_id) = DB_fetchArray($query)) { $location = nexlistValue($_PRJCONF['nexlist_locations'], $location_id, 0); if ($VALUE_location == '') { $VALUE_location = $location; } else { $VALUE_location .= ", {$location}"; } } $p->set_var('VALUE_location', $VALUE_location); $query = DB_query("SELECT department_id FROM {$_TABLES['prj_department']} WHERE pid='{$id}'"); while (list($department_id) = DB_fetchArray($query)) { $department = nexlistValue($_PRJCONF['nexlist_departments'], $department_id, 0); if ($VALUE_department == '') { $VALUE_department = $department; } else { $VALUE_department .= ", {$department}"; } } $p->set_var('VALUE_department', $VALUE_department); $query = DB_query("SELECT category_id FROM {$_TABLES['prj_category']} WHERE pid='{$id}'"); while (list($category_id) = DB_fetchArray($query)) { //$category = DB_getItem($_TABLES['prj_site_category'], 'description', "category_id=$category_id"); $category = nexlistValue($_PRJCONF['nexlist_category'], $category_id, 0); if ($VALUE_category == '') { $VALUE_category = $category; } else { $VALUE_category .= ", {$category}"; } } $p->set_var('VALUE_category', $VALUE_category); $sql = "SELECT {$_TABLES['users']}.uid FROM {$_TABLES['users']},{$_TABLES['prj_users']} WHERE "; $sql .= "{$_TABLES['prj_users']}.pid={$id} AND {$_TABLES['prj_users']}.uid={$_TABLES['users']}.uid "; $query = DB_query($sql); while (list($resource) = DB_fetchArray($query)) { $resource_name = COM_getDisplayName($resource); if ($VALUE_resources == '') { $VALUE_resources = $resource_name; } else { $VALUE_resources .= ", {$resource_name}"; } } $p->set_var('VALUE_resources', $VALUE_resources); $VALUE_resources = ''; $sql = "SELECT {$_TABLES['users']}.fullname FROM {$_TABLES['users']},{$_TABLES['prj_projPerms']} WHERE "; $sql .= "{$_TABLES['prj_projPerms']}.pid={$id} AND {$_TABLES['prj_projPerms']}.taskid='0' AND {$_TABLES['prj_projPerms']}.uid={$_TABLES['users']}.uid "; $query = DB_query($sql); while (list($resource) = DB_fetchArray($query)) { if ($VALUE_resources == '') { $VALUE_resources = $resource; } else { $VALUE_resources .= ",<BR> {$resource}"; } } $p->set_var('project_resources', $VALUE_resources); $sql = "SELECT uid, description, updated FROM {$_TABLES['prj_statuslog']} WHERE pid={$id} and tid=0 ORDER BY updated ASC"; $query = DB_query($sql); if (DB_numRows($query) > 0) { while (list($user, $comment, $date) = DB_fetchArray($query)) { $p->set_var('member_name', DB_getItem($_TABLES['users'], 'fullname', "uid={$user}") . ': '); $p->set_var('log_date', strftime("%Y/%m/%d %H:%M", $date)); if ($comment == '') { $p->set_var('log_entry', '<br>Edit Task completed, no comment entered'); } else { $p->set_var('log_entry', '<br>' . $comment); } $p->parse('task_log_entries', 'tasklog', true); } } else { $p->set_var('log_entry', $strings['noresults']); $p->parse('task_log_entries', 'tasklog'); } $p->parse('output', 'project'); return $p->finish($p->get_var('output')); }