function askJobs() { try { eF_checkParameter($_POST['preffix'], 'text') ? $preffix = $_POST['preffix'] : ($preffix = '%'); $jobs = array(); $job_descriptions_without_skills = eF_getTableData("module_hcd_job_description LEFT OUTER JOIN module_hcd_employee_has_job_description ON module_hcd_employee_has_job_description.job_description_ID = module_hcd_job_description.job_description_ID LEFT OUTER JOIN module_hcd_branch ON module_hcd_branch.branch_ID = module_hcd_job_description.branch_ID", "module_hcd_job_description.job_description_ID, description, module_hcd_job_description.branch_ID, module_hcd_branch.name, count(users_login) as Employees, employees_needed", "", "module_hcd_job_description.description", "module_hcd_job_description.job_description_ID"); $job_descriptions_with_skills = eF_getTableData("module_hcd_job_description LEFT OUTER JOIN module_hcd_job_description_requires_skill ON module_hcd_job_description.job_description_ID = module_hcd_job_description_requires_skill.job_description_ID", "count(skill_ID) as skill_req", "", "module_hcd_job_description.description", "module_hcd_job_description.job_description_ID"); $size = sizeof($job_descriptions_without_skills); for ($k = 0; $k < $size; $k++) { $job_descriptions[$k] = array_merge($job_descriptions_without_skills[$k], $job_descriptions_with_skills[$k]); } foreach ($job_descriptions as $key => $job_description) { $diff = $job_description["employees_needed"] - $job_description["Employees"]; $job_descriptions[$key]['more_needed'] = $diff > 0 ? $diff : 0; } for ($i = 0; $i < sizeof($job_descriptions); $i++) { if ($preffix == '%' || stripos($job_descriptions[$i]['description'], $preffix) !== false) { $hiname = highlightSearch($job_descriptions[$i]['description'], $preffix); $jobs[$i] = array('id' => $job_descriptions[$i]['job_description_ID'], 'description' => $job_descriptions[$i]['description'] . ' (' . $job_descriptions[$i]['name'] . ')'); } } $jobs = array_values(eF_multisort($jobs, 'description', 'asc')); $str = '<ul>'; for ($k = 0; $k < sizeof($jobs); $k++) { $str = $str . '<li id="' . $jobs[$k]['id'] . '">' . $jobs[$k]['description'] . '</li>'; } $str .= '</ul>'; echo $str; } catch (Exception $e) { handleAjaxExceptions($e); } }
function askSkills() { try { eF_checkParameter($_POST['preffix'], 'text') ? $preffix = $_POST['preffix'] : ($preffix = '%'); $skills = array(); $result = EfrontSkill::getAllSkills(); for ($i = 0; $i < sizeof($result); $i++) { if ($preffix == '%' || stripos($result[$i]['description'], $preffix) !== false) { $hiname = highlightSearch($result[$i]['description'], $preffix); $skills[$i] = array('id' => $result[$i]['skill_ID'], 'description' => $result[$i]['description'], 'path_string' => $result[$i]['category_description'] . ' → ' . $hiname); } } $skills = array_values(eF_multisort($skills, 'path_string', 'asc')); //Sort results based on path string $str = '<ul>'; for ($k = 0; $k < sizeof($skills); $k++) { $str = $str . '<li id=' . $skills[$k]['id'] . '>' . $skills[$k]['path_string'] . '</li>'; } $str .= '</ul>'; echo $str; } catch (Exception $e) { handleAjaxExceptions($e); } }