getRow($sql); $value['id'] = $result['id']; $value['project_workflow_id'] = $result['project_workflow_id']; $value['description'] = $result['description']; $value['status'] = $result['status']; $value['main_status'] = $result['main_status']; $value['workflow_id'] = $result['workflow_id']; $value['workflow_task_id'] = $result['workflow_task_id']; $value['creator'] = $result['creator']; $value['date_created'] = $result['date_created']; $value['submitter'] = $result['submitter']; $value['date_submitted'] = $result['date_submitted']; $results = common_task_templates::get_details($result['workflow_task_id']); $value['name'] = $results['name']; $value['trigger'] = $results['trigger']; $value['stage'] = $results['stage']; $value['forward_to'] = $results['forward_to']; $value['allow_approval'] = $results['allow_approval']; $value['departments'] = $results['departments']; $value['groups'] = $results['groups']; return $value; } public function check_permission($context) { $my_group = $context['my_group']; $my_departments = $context['my_departments']; $tasks_departments = $context['tasks_departments']; $tasks_groups = $context['tasks_groups']; $user_alloc = $context['user_alloc']; if(in_array($my_group,$tasks_groups)){ if(count($my_departments) > 0) foreach($my_departments AS $my_department) if(in_array($my_department,$tasks_departments)) return true; }else{ if($user_alloc==$_SESSION['user']['id']) return true; } return false; } public function get_departments($context) { $task_departments = $context['task_departments']; $departments = $context['departments']; $departments_str = ""; if(count($task_departments)) { foreach($task_departments AS $dep_key => $task_department) $departments_str .= $departments[$task_department]['name'].","; $departments_str = substr($departments_str,0,strlen($departments_str) - 1); } return $departments_str; } public function get_owners($context) { global $database; $groups = $context['groups']; $departments = $context['departments']; $users = ""; if((count($departments) > 0) && (count($groups) > 0)) { $ids = ""; foreach($departments AS $department) $ids .= "'".$department."',"; $departments_sql = "AND departments_users.department_id IN (".substr($ids,0,strlen($ids) - 1).")"; $ids = ""; foreach($groups AS $group) $ids .= "'".$group."',"; $groups_sql = "AND users.group_id IN (".substr($ids,0,strlen($ids) - 1).")"; $get_users = " SELECT users.id, concat(ucase(SUBSTRING( users.first_name, 1, 1 )),'',ucase(SUBSTRING(users.last_name,1,1))) as name FROM ".DB_CLIENT_ACCOUNTS."users AS users,".DB_CLIENT."departments_users as departments_users WHERE departments_users.user_id = users.id $departments_sql $groups_sql "; $users_array = $database->getAll($get_users); if(count($users) > 0) { foreach($users_array AS $user) $users .= ''.$user['name'].''.", "; $users = substr($users,0,strlen($users) - 3); } } return $users; } public function setTaskRead($id){ global $database; $submitter = $_SESSION['user']['id']; $current_date_time = date('Y-m-d G:i:s'); $update = " UPDATE project_tasks SET read_by = '$submitter' WHERE id = '$id' "; $database->query($update); } /*2013-04-05 * check if current job has a quote which has been cancelled * */ public function job_has_closed_quote($quote_id){ global $database; $sql = "SELECT count(*) FROM project_workflow a, project_tasks b WHERE a.table = 'quotes' AND a.foreign_id = $quote_id AND a.id = b.project_workflow_id AND b.workflow_task_id IN (14,567,675,757) "; $count = $database->getOne($sql); return $count; } } ?>