function sqlInsertEmployee(&$employee)
{
    $sql = "INSERT INTO EmployeeTable (employeeName,emailAddress,password," . "annualLeaveEntitlement,dateJoinedTheCompany," . "companyRole_companyRoleID,adminPermissions,managerPermissions) " . "VALUES ('" . $employee[EMP_NAME] . "','" . $employee[EMP_EMAIL] . "','" . $employee[EMP_PASSWORD] . "','" . $employee[EMP_LEAVE_ENTITLEMENT] . "','" . $employee[EMP_DATEJOINED] . "','" . $employee[EMP_COMPANY_ROLE] . "','" . $employee[EMP_ADMIN_PERM] . "','" . $employee[EMP_MANAGER_PERM] . "');";
    $employee[EMP_ID] = performSQLInsert($sql);
    return $employee[EMP_ID] != 0;
}
function sqlInsertMainVacationRequest(&$request)
{
    $sql = "INSERT INTO mainVacationRequestTable (employeeID," . "firstChoiceStartDate,firstChoiceEndDate," . "secondChoiceStartDate,secondChoiceEndDate) " . "VALUES ('" . $request[MAIN_VACATION_EMP_ID] . "','" . $request[MAIN_VACATION_1ST_START] . "','" . $request[MAIN_VACATION_1ST_END] . "','" . $request[MAIN_VACATION_2ND_START] . "','" . $request[MAIN_VACATION_2ND_END] . "');";
    $request[MAIN_VACATION_REQ_ID] = performSQLInsert($sql);
    return $request[MAIN_VACATION_REQ_ID] != 0;
}
function sqlInsertCompanyRole(&$role)
{
    $sql = "INSERT INTO companyroletable (roleName,minimumStaffingLevel) " . "VALUES ('" . $role[COMP_ROLE_NAME] . "'," . $role[COMP_ROLE_MIN_STAFF] . ");";
    $role[COMP_ROLE_ID] = performSQLInsert($sql);
    return $role[COMP_ROLE_ID] != 0;
}
function sqlInsertPublicHoliday(&$publicHoliday)
{
    $sql = "INSERT INTO publicHolidayTable (nameOfPublicHoliday,dateID) " . "VALUES ('" . $publicHoliday[PUB_HOL_NAME] . "','" . $publicHoliday[PUB_HOL_DATE_ID] . "');";
    $publicHoliday[PUB_HOL_ID] = performSQLInsert($sql);
    return $publicHoliday[PUB_HOL_ID] != 0;
}
function sqlInsertApprovedAbsenceBooking(&$absenceBooking)
{
    $sql = "INSERT INTO approvedAbsenceBookingTable " . "(employeeID,absenceStartDate,approvedEndDate,absenceTypeID) " . "VALUES ('" . $absenceBooking[APPR_ABS_EMPLOYEE_ID] . "','" . $absenceBooking[APPR_ABS_START_DATE] . "','" . $absenceBooking[APPR_ABS_END_DATE] . "','" . $absenceBooking[APPR_ABS_ABS_TYPE_ID] . "');";
    $absenceBooking[APPR_ABS_BOOKING_ID] = performSQLInsert($sql);
    return $absenceBooking[APPR_ABS_BOOKING_ID] != 0;
}
function sqlInsertAdHocAbsenceRequest(&$adHocAbsenceRequest)
{
    $sql = "INSERT INTO adHocAbsenceRequestTable (employeeID,startDate," . "endDate,absenceTypeID) " . "VALUES ('" . $adHocAbsenceRequest[AD_HOC_EMP_ID] . "','" . $adHocAbsenceRequest[AD_HOC_START] . "','" . $adHocAbsenceRequest[AD_HOC_END] . "','" . $adHocAbsenceRequest[AD_HOC_ABSENCE_TYPE_ID] . "');";
    $adHocAbsenceRequest[AD_HOC_REQ_ID] = performSQLInsert($sql);
    return $adHocAbsenceRequest[AD_HOC_REQ_ID] != 0;
}
function sqlInsertDate(&$date)
{
    $sql = "INSERT INTO DateTable (date,publicHolidayID) " . "VALUES ('" . $date[DATE_TABLE_DATE] . "',";
    if ($date[DATE_TABLE_PUBLIC_HOL_ID] != NULL) {
        $sql = $sql . "'" . $date[DATE_TABLE_PUBLIC_HOL_ID] . "');";
    } else {
        $sql = $sql . "NULL);";
    }
    $date[DATE_TABLE_DATE_ID] = performSQLInsert($sql);
    return $date[DATE_TABLE_DATE_ID] != 0;
}
function sqlInsertAbsenceType(&$absenceType)
{
    $absenceType[ABS_TYPE_ID] = NULL;
    $sql = "INSERT INTO absenceTypeTable (absenceTypeName,usesAnnualLeave,canBeDenied) " . "VALUES ('" . $absenceType[ABS_TYPE_NAME] . "','" . $absenceType[ABS_TYPE_USES_LEAVE] . "','" . $absenceType[ABS_TYPE_CAN_BE_DENIED] . "');";
    $absenceType[ABS_TYPE_ID] = performSQLInsert($sql);
    return $absenceType[ABS_TYPE_ID] != 0;
}
function sqlInsertApprovedAbsenceBookingDate(&$absenceBookingDate)
{
    $sql = "INSERT INTO approvedAbsenceBookingDate " . "(dateID,approvedAbsenceBookingID) " . "VALUES ('" . $absenceBookingDate[APPR_ABS_BOOK_DATE_DATE_ID] . "','" . $absenceBookingDate[APPR_ABS_BOOK_DATE_ABS_BOOK_ID] . "');";
    $absenceBookingDate[APPR_ABS_BOOK_DATE_ID] = performSQLInsert($sql);
    return $absenceBookingDate[APPR_ABS_BOOK_DATE_ID] != 0;
}