/** * Returns an instance of ChatDataHandler. * * @param string $dsn - optional, a valid data source name * @return an instance of ChatDataHandler */ static function instance($dsn = null) { if (self::$instance === NULL) { self::$instance = new ChatDataHandler($dsn); } else { self::$instance->setDSN($dsn); } //return null; return self::$instance; }
/** * Obtains a ChatDataHandler instance. * * @return ChatDataHandler instance */ private static function obtainChatDataHandlerInstance() { if (!self::isInStaticContext()) { $cdh = ChatDataHandler::instance($this->tester_dsn); } else { $tester_dsn = $_SESSION['sess_selected_tester_dsn']; $cdh = ChatDataHandler::instance($tester_dsn); } return $cdh; }
public static function hasThisUserAChatAppointment(ADALoggableUser $userObj) { $id_course_instance = DataValidator::is_uinteger($_SESSION['sess_id_course_instance']); if ($id_course_instance === FALSE) { return FALSE; } $fields_list_Ar = array('id_mittente', 'data_ora', 'titolo', 'priorita', 'read_timestamp'); $clause = '(flags & ' . ADA_CHAT_EVENT . ') AND (flags & ' . ADA_EVENT_CONFIRMED . ')'; $sort_field = 'data_ora desc'; $mh = MessageHandler::instance(self::getDSN($_SESSION['sess_selected_tester'])); $msgs_ha = $mh->find_messages($userObj->getId(), ADA_MSG_AGENDA, $fields_list_Ar, $clause, $sort_field); if (!AMA_DataHandler::isError($msgs_ha)) { $today_time = today_timeFN(); $today_date = today_dateFN(); $today_time_date = date(ADA_DATE_FORMAT); foreach ($msgs_ha as $one_date) { $time_2_add = 30 * 60; // 30 minuti di arrotondamento. $unix_date_app_rounded = $one_date[1] + $time_2_add; $udate_now = time(); if ($udate_now >= $one_date[1] and $udate_now <= $unix_date_app_rounded) { //$matches = array(); //preg_match('/([0-9]+#)/',$one_date[2], $matches); //$message_internal_identifier = $matches[1]; $event_token = ADAEventProposal::extractEventToken($one_date[2]); $cdh = ChatDataHandler::instance(MultiPort::getDSN($_SESSION['sess_selected_tester'])); $id_chatroom = $cdh->get_chatroom_with_title_prefixFN($event_token); if (AMA_DataHandler::isError($id_chatroom)) { return FALSE; } return $id_chatroom; //return TRUE; } } } return FALSE; }