Esempio n. 1
0
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);
    }
}
Esempio n. 2
0
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'] . '&nbsp;&rarr;&nbsp;' . $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);
    }
}