Esempio n. 1
0
if (!isset($ora_evento)) {
    $event_time = today_timeFN();
} else {
    $event_time = $ora_evento;
}
if (!isset($data_evento)) {
    $event_date = today_dateFN();
} else {
    $event_date = $data_evento;
}
/*
$event_time = today_timeFN();
$event_date = today_dateFN();
*/
$ada_address_book = EventsAddressBook::create($userObj);
$tester_TimeZone = MultiPort::getTesterTimeZone($sess_selected_tester);
$time = time() + get_timezone_offset($tester_TimeZone, SERVER_TIMEZONE);
/*
* Last access link
*/
if (isset($_SESSION['sess_id_course_instance'])) {
    $last_access = $userObj->get_last_accessFN($_SESSION['sess_id_course_instance'], "UT", null);
    $last_access = AMA_DataHandler::ts_to_date($last_access);
} else {
    $last_access = $userObj->get_last_accessFN(null, "UT", null);
    $last_access = AMA_DataHandler::ts_to_date($last_access);
}
if ($last_access == '' || is_null($last_access)) {
    $last_access = '-';
}
$content_dataAr = array('user_name' => $user_name, 'user_type' => $user_type, 'user_level' => $user_level, 'titolo' => $titolo, 'testo' => isset($testo) ? trim($testo) : '', 'destinatari' => isset($destinatari) ? trim($destinatari) : '', 'course_title' => '<a href="../browsing/main_index.php">' . $course_title . '</a>', 'status' => $err_msg, 'timezone' => $tester_TimeZone, 'event_time' => $event_time, 'event_date' => $event_date, 'last_visit' => $last_access, 'rubrica' => $ada_address_book->getHtml(), 'status' => $err_msg);
Esempio n. 2
0
    /*
     * We are inside a tester
     */
    $tester = $sess_selected_tester;
}
/*
 * Find the appointment
 */
$msg_ha = MultiPort::getUserAppointment($userObj, $msg_id);
if (AMA_DataHandler::isError($msg_ha)) {
    $errObj = new ADA_Error($msg_ha, translateFN('Errore durante la lettura di un evento'), NULL, NULL, NULL, 'comunica/list_events.php?status=' . urlencode(translateFN('Errore durante la lettura')));
}
/**
 * Conversione Time Zone
 */
$tester_TimeZone = MultiPort::getTesterTimeZone($tester);
$offset = get_timezone_offset($tester_TimeZone, SERVER_TIMEZONE);
$date_time = $msg_ha['data_ora'];
$date_time_zone = $date_time + $offset;
$zone = translateFN("Time zone:") . " " . $tester_TimeZone;
$Data_messaggio = AMA_DataHandler::ts_to_date($date_time_zone, "%d/%m/%Y - %H:%M:%S") . " " . $zone;
//$Data_messaggio = AMA_DataHandler::ts_to_date($msg_ha['data_ora'], "%d/%m/%Y - %H:%M:%S");
/*
 * Check if the subject has an internal identifier and remove it
 */
$oggetto = ADAEventProposal::removeEventToken($msg_ha['titolo']);
$mittente = $msg_ha['mittente'];
$destinatario = str_replace(",", ", ", $msg_ha['destinatari']);
// $destinatario = $msg_ha['destinatari'];
$dest_encode = urlencode($mittente);
if (isset($message_text) && strlen($message_text) > 0) {
Esempio n. 3
0
            $message_ha['data_ora'] = "now";
            $message_ha['mittente'] = "admin";
            $message_ha['id_group'] = $id_chatroom;
            $message_ha['testo'] = "<span class=user_name>{$user_name}</span> " . translateFN("&egrave; entrato nella stanza");
            $result = $mh->send_message($message_ha);
            // GESTIONE ERRORE
        }
    }
}
if ($exit_reason != NO_EXIT_REASON) {
    $chat = new CText('');
    $offset = 0;
    if ($_SESSION['sess_selected_tester'] === NULL) {
        $tester_TimeZone = SERVER_TIMEZONE;
    } else {
        $tester_TimeZone = MultiPort::getTesterTimeZone($_SESSION['sess_selected_tester']);
        $offset = get_timezone_offset($tester_TimeZone, SERVER_TIMEZONE);
    }
    $current_time = ts2tmFN(time() + $offset);
    $close_page_message = addslashes(translateFN("You don't have a chat appointment at this time.")) . " ({$current_time})";
    $optionsAr = array('onload_func' => "close_page('{$close_page_message}');");
} else {
    //$event_token = $chatroomObj->get_event_token();
    $request_arguments = "chatroom={$id_chatroom}";
    $chat = CommunicationModuleHtmlLib::getChat($request_arguments, $userObj, $event_token);
    $optionsAr = array('onload_func' => 'startChat();');
}
$banner = (include ROOT_DIR . '/include/banner.inc.php');
/*
 * Create here the close link.
 */
Esempio n. 4
0
 /**
  * Checks if an event can be proposed in the given date and time
  *
  * @param string $date
  * @param string $time
  * @return TRUE on success, a ADA error code on failure
  */
 public static function canProposeThisDateTime(ADALoggableUser $userObj, $date, $time, $tester = NULL)
 {
     $date = DataValidator::validate_date_format($date);
     if ($date === FALSE) {
         return ADA_EVENT_PROPOSAL_ERROR_DATE_FORMAT;
     } else {
         $current_timestamp = time();
         /**
          * @var timezone management
          */
         $offset = 0;
         if ($tester === NULL) {
             $tester_TimeZone = SERVER_TIMEZONE;
         } else {
             $tester_TimeZone = MultiPort::getTesterTimeZone($tester);
             $offset = get_timezone_offset($tester_TimeZone, SERVER_TIMEZONE);
         }
         $timestamp_time_zone = sumDateTimeFN(array($date, "{$time}:00"));
         $timestamp = $timestamp_time_zone - $offset;
         if ($current_timestamp >= $timestamp) {
             return ADA_EVENT_PROPOSAL_ERROR_DATE_IN_THE_PAST;
         }
         if (MultiPort::hasThisUserAnAppointmentInThisDate($userObj, $timestamp)) {
             return ADA_EVENT_PROPOSAL_ERROR_DATE_IN_USE;
         }
     }
     return TRUE;
 }
 private static function display_messages_as_form($data_Ar = array(), $message_type = ADA_MSG_SIMPLE, $testers_dataAr = array())
 {
     $common_dh = $GLOBALS['common_dh'];
     $javascript_ok = check_javascriptFN($_SERVER['HTTP_USER_AGENT']);
     $appointments_Ar = array();
     if ($message_type == ADA_MSG_SIMPLE) {
         $list_module = 'list_messages.php';
         $read_module = 'read_message.php';
         $del_img = CDOMElement::create('img', 'src:img/delete.png, name:del_icon');
         $del_img->setAttribute('alt', translateFN('Rimuovi il messaggio'));
         $del_text = translateFN('Cancella');
     } else {
         $list_module = 'list_events.php';
         $read_module = 'read_event.php';
         $del_text = '';
     }
     $order_by_author_link = CDOMElement::create('a', "href:{$list_module}?sort_field=id_mittente");
     $order_by_author_link->addChild(new CText(translateFN('Autore')));
     $order_by_time_link = CDOMElement::create('a', "href:{$list_module}?sort_field=data_ora");
     $order_by_time_link->addChild(new CText(translateFN('Data ed ora')));
     $order_by_subject_link = CDOMElement::create('a', "href:{$list_module}?sort_field=titolo");
     $order_by_subject_link->addChild(new CText(translateFN('Oggetto')));
     $order_by_priority_link = CDOMElement::create('a', "href:{$list_module}?sort_field=priorita");
     $order_by_priority_link->addChild(new CText(translateFN('Priorit&agrave;')));
     $thead_data = array($order_by_author_link, $order_by_time_link, $order_by_subject_link, $order_by_priority_link, $del_text, translateFN('Letto'), '');
     foreach ($data_Ar as $tester => $appointment_data_Ar) {
         //$udh = UserDataHandler::instance(self::getDSN($tester));
         //$tester_info_Ar = $common_dh->get_tester_info_from_pointer($tester);
         $tester_id = $testers_dataAr[$tester];
         //      if (AMA_Common_DataHandler::isError($tester_info_Ar)) {
         //        /*
         //         * Return a ADA_Error with delayed error handling.
         //         */
         //        return new ADA_Error($tester_info_Ar,translateFN('Errore in ottenimento informazioni tester'),
         //                              NULL,NULL,NULL,NULL,TRUE);
         //      }
         $tester_TimeZone = MultiPort::getTesterTimeZone($tester);
         $offset = get_timezone_offset($tester_TimeZone, SERVER_TIMEZONE);
         foreach ($appointment_data_Ar as $appointment_id => $appointment_Ar) {
             // trasform message content into variable names
             $sender_id = $appointment_Ar[0];
             $date_time = $appointment_Ar[1];
             //$subject        = $appointment_Ar[2];
             /*
              * Check if the subject has an internal identifier and remove it.
              */
             //$subject        = preg_replace('/[0-9]+#/','',$appointment_Ar[2],1);
             $subject = ADAEventProposal::removeEventToken($appointment_Ar[2]);
             $priority = $appointment_Ar[3];
             $read_timestamp = $appointment_Ar[4];
             $date_time_zone = $date_time + $offset;
             $zone = translateFN("Time zone:") . " " . $tester_TimeZone;
             $data_msg = AMA_DataHandler::ts_to_date($date_time_zone, "%d/%m/%Y - %H:%M:%S") . " " . $zone;
             //        $data_msg        = AMA_DataHandler::ts_to_date($date_time, "%d/%m/%Y - %H:%M:%S");
             // transform sender's id into sender's name
             //        $res_ar = $udh->find_users_list(array("username"), "id_utente=$sender_id");
             //        if (AMA_DataHandler::isError($res_ar)) {
             //          $sender_username = '';
             //        }
             //        else {
             //          $sender_username = $res_ar[0][1];
             //        }
             $sender_username = $appointment_Ar[6];
             //$msg_id = $tester_info_Ar[0].'_'.$appointment_id;
             $msg_id = $tester_id . '_' . $appointment_id;
             $url = HTTP_ROOT_DIR . '/comunica/' . $read_module . '?msg_id=' . $msg_id;
             $subject_link = CDOMElement::create('a', "href:{$url}");
             $subject_link->addChild(new CText($subject));
             /*
              * If this is a list of simple messages, then deleting is allowed.
              * Otherwise it is disabled.
              */
             if ($message_type == ADA_MSG_SIMPLE) {
                 $delete = CDOMElement::create('checkbox', "name:form[del][{$msg_id}],value:{$msg_id}");
                 $action_link = CDOMElement::create('a', "href:{$list_module}?del_msg_id={$msg_id}");
                 $action_link->addChild($del_img);
             } else {
                 $delete = '';
                 $delete_link = '';
                 // PROVA, POI RIMETTERE A POSTO
                 $userObj = $_SESSION['sess_userObj'];
                 /*
                           if($userObj instanceof ADAPractitioner) {
                  $event_token = ADAEventProposal::extractEventToken($appointment_Ar[2]);
                  $href = HTTP_ROOT_DIR . '/tutor/eguidance_tutor_form.php?event_token=' . $event_token;
                  $action_link = CDOMElement::create('a', "href:$href");
                  $action_link->addChild(new CText(translateFN('View eguidance session data')));
                           }
                 *
                 */
             }
             $read = CDOMElement::create('checkbox', "name:form[read][{$msg_id}],value:{$msg_id}");
             if ($read_timestamp != 0) {
                 $read->setAttribute('checked', 'checked');
             }
             if (!isset($action_link)) {
                 $action_link = null;
             }
             $appointments_Ar[] = array($sender_username, $data_msg, $subject_link, $priority, $delete, $read, $action_link);
         }
     }
     if (count($appointments_Ar) > 0) {
         $table = BaseHtmlLib::tableElement('', $thead_data, $appointments_Ar);
         if (!isset($module)) {
             $module = null;
         }
         $form = CDOMElement::create('form', "name:form, method:post, action:{$module}");
         $form->addChild($table);
         $div = CDOMElement::create('div', 'id:buttons');
         $submit = CDOMElement::create('submit', 'name:btn_commit value:' . translateFN('Salva'));
         $reset = CDOMElement::create('reset', 'name:btn_reset value:' . translateFN('Ripristina'));
         $div->addChild($submit);
         $div->addChild($reset);
         $form->addChild($div);
         return $form;
     } else {
         if ($message_type == ADA_MSG_SIMPLE) {
             return new CText(translateFN('Non ci sono nuovi messaggi'));
         }
         return new CText(translateFN('Non ci sono nuovi appuntamenti'));
     }
 }