function _get_services_to_subscribe($orderBy = 'service', $minLevel = 1, $maxLevel = 5)
{
    // used by browsing/user and info
    // so  we have to distinguish...
    $common_dh = $GLOBALS['common_dh'];
    $callerModule = $GLOBALS['self'];
    $sess_id_user = $_SESSION['sess_id_user'];
    $userObj = $_SESSION['sess_userObj'];
    // services
    // filtering on levels
    $level_ha = Multiport::get_service_max_level($sess_id_user);
    // version using COMMON
    if (isset($minLevel) and $minLevel < 5) {
        $livelloMin = $minLevel;
    } else {
        $livelloMin = 1;
    }
    if (isset($maxLevel) and $maxLevel > 1) {
        $livelloMax = $maxLevel;
    } else {
        $livelloMax = 5;
    }
    $clause = "s.livello <= {$livelloMax} AND s.livello >= {$livelloMin} ";
    // 	ordering
    if ($orderBy == 'service') {
        $service_infoAr = $common_dh->get_services(array('s.nome', 't.nazione', 's.livello'), $clause);
    } elseif ($orderBy == 'country') {
        $service_infoAr = $common_dh->get_services(array('t.nazione', 't.provincia', 't.nome'), $clause);
    }
    $s = 0;
    foreach ($service_infoAr as $course_dataHa) {
        $provider_name = $course_dataHa[5];
        $provider_id = $course_dataHa[4];
        $provider_dataHa = $common_dh->get_tester_info_from_id($provider_id);
        $provider_pointer = $provider_dataHa[10];
        $provider_dsn = Multiport::getDSN($provider_pointer);
        if ($provider_dsn != null) {
            $provider_dataHa = $common_dh->get_tester_info_from_pointer($provider);
            $provider_dh = AMA_DataHandler::instance($provider_dsn);
            $id_course_instanceAr = $provider_dh->get_course_instance_for_this_student_and_course_model($sess_id_user, $service_implementation_id);
        } else {
            $id_course_instanceAr = NULL;
        }
        // already subscribed?
        if (AMA_DataHandler::isError($id_course_instanceAr)) {
            // never subscribed
            $id_course_instance = 0;
        } else {
            $id_course_instance = $id_course_instanceAr['istanza_id'];
        }
        $service_infoAr[$s][8] = $id_course_instance;
        $s++;
    }
    $optionsAr = array('callerModule' => $callerModule, 'orderBy' => $orderBy);
    return GuestHtmlLib::displayServiceData($userObj, $service_infoAr, $optionsAr);
}