diff --git a/main/inc/lib/group_portal_manager.lib.php b/main/inc/lib/group_portal_manager.lib.php index 1d0cfa79aa..a5feb06c81 100755 --- a/main/inc/lib/group_portal_manager.lib.php +++ b/main/inc/lib/group_portal_manager.lib.php @@ -144,7 +144,7 @@ class GroupPortalManager { $sql = "SELECT id, name, description, picture_uri, url, visibility FROM $table WHERE id = $group_id "; $res = Database::query($sql); $item = array(); - if (Database::num_rows($res)>0) { + if (Database::num_rows($res)>0) { $item = Database::fetch_array($res,'ASSOC'); } return $item; @@ -960,7 +960,7 @@ class GroupPortalManager { //echo '
'.cut($group_info['name'], GROUP_TITLE_LENGTH, true).'
'; //echo Display::div(get_lang('Actions') ,array('class' => 'social_menu_option')); echo ''; } diff --git a/main/inc/lib/message.lib.php b/main/inc/lib/message.lib.php index 85c6b093cc..d1f3fbedf0 100755 --- a/main/inc/lib/message.lib.php +++ b/main/inc/lib/message.lib.php @@ -159,7 +159,7 @@ class MessageManager } else { $message[0] = ($result[0]); } - $result[2] = Security::remove_XSS($result[2]); + $result[2] = Security::remove_XSS($result[2], STUDENT, true); $result[2] = cut($result[2], 80,true); if ($request===true) { @@ -708,7 +708,7 @@ class MessageManager public static function show_message_box($message_id, $source = 'inbox') { $table_message = Database::get_main_table(TABLE_MESSAGE); $tbl_message_attach = Database::get_main_table(TABLE_MESSAGE_ATTACHMENT); - $message_id = intval($message_id); + $message_id = intval($message_id); if ($source == 'outbox') { if (isset($message_id) && is_numeric($message_id)) { @@ -726,8 +726,8 @@ class MessageManager } $path='inbox.php'; } - - $row = Database::fetch_array($result); + $row = Database::fetch_array($result, 'ASSOC'); + $user_sender_id = $row['user_sender_id']; // get file attachments by message id $files_attachments = self::get_links_message_attachment_files($message_id,$source); @@ -736,14 +736,15 @@ class MessageManager $band=0; $reply=''; for ($i=0;$i$name)); $message_content = ' @@ -753,7 +754,7 @@ class MessageManager
'; if (api_get_setting('allow_social_tool') == 'true') { $message_content .=''; @@ -762,20 +763,20 @@ class MessageManager $message_content .=''; if (api_get_setting('allow_social_tool') == 'true') { if ($source == 'outbox') { - $message_content .=''; + $message_content .=''; } else { - $message_content .=''; + $message_content .=''; } } else { if ($source == 'outbox') { - $message_content .=''; + $message_content .=''; } else { - $message_content .=''; + $message_content .=''; } } $message_content .=' - +
-

'.str_replace("\\","",$row[5]).'

+

'.str_replace("\\","",$title).'

'.$user_image.'
'.get_lang('From').' '.$name.' '.api_strtolower(get_lang('To')).' '.GetFullUserName($row[2]).' '.get_lang('From').': '.$name.' '.api_strtolower(get_lang('To')).' '.GetFullUserName($row[2]).' '.get_lang('From').' '.$name.' '.api_strtolower(get_lang('To')).' '.get_lang('Me').' '.get_lang('From').' '.$name.' '.api_strtolower(get_lang('To')).' '.get_lang('Me').' '.get_lang('From').' '.$name.' '.api_strtolower(get_lang('To')).' '.GetFullUserName($row[2]).' '.get_lang('From').': '.$name.' '.api_strtolower(get_lang('To')).' '.GetFullUserName($row['user_receiver_id']).' '.get_lang('From').' '.$name.' '.api_strtolower(get_lang('To')).' '.get_lang('Me').' '.get_lang('From').': '.$name.' '.api_strtolower(get_lang('To')).' '.get_lang('Me').'
'.get_lang('Date').'  '.$row[4].''.get_lang('Date').': '.api_get_local_time($row['send_date']).'
@@ -783,7 +784,7 @@ class MessageManager
- +
'.str_replace("\\","",$row['content']).''.str_replace("\\","",$content).'
'.(!empty($files_attachments)?implode('
',$files_attachments):'').'
@@ -956,7 +957,7 @@ class MessageManager if (empty($topic['title'])) { $topic['title'] = get_lang('Untitled'); } - $title = Display::url('

'.Security::remove_XSS($topic['title']).'

', 'group_topics.php?id='.$group_id.'&topic_id='.$topic['id']); + $title = Display::url('

'.Security::remove_XSS($topic['title'], STUDENT, true).'

', 'group_topics.php?id='.$group_id.'&topic_id='.$topic['id']); $date = ''; $link = ''; @@ -974,7 +975,7 @@ class MessageManager $user_info .= '
'.$name.'
'; $user_info .= '
'.$user.'
'; //$date. - $html .= Display::div($title.cut($topic['content'], 150).$user_info, array('class'=>'group_discussions_info')).''; + $html .= Display::div($title.Security::remove_XSS(cut($topic['content'], 150), STUDENT, true).$user_info, array('class'=>'group_discussions_info')).''; $html .= ''; //rounded_div @@ -994,11 +995,10 @@ class MessageManager public static function display_message_for_group($group_id, $message_id, $is_member) { global $my_group_role; - $main_message = self::get_message_by_id($message_id); - - $group_info = GroupPortalManager::get_group_data($group_id); - $rows = self::get_messages_by_group_by_message($group_id, $message_id); - $rows = self::calculate_children($rows, $message_id); + $main_message = self::get_message_by_id($message_id); + $group_info = GroupPortalManager::get_group_data($group_id); + $rows = self::get_messages_by_group_by_message($group_id, $message_id); + $rows = self::calculate_children($rows, $message_id); $current_user_id = api_get_user_id(); @@ -1019,7 +1019,7 @@ class MessageManager //$items_page_nr = intval($_GET['items_'.$topic['id'].'_page_nr']); $items_page_nr = null; - echo Display::tag('h2', $main_message['title']); + echo Display::tag('h2', Security::remove_XSS($main_message['title'], STUDENT, true)); $user_sender_info = UserManager::get_user_info_by_id($main_message['user_sender_id']); $files_attachments = self::get_links_message_attachment_files($main_message['id']); $name = api_get_person_name($user_sender_info['firstname'], $user_sender_info['lastname']); @@ -1048,7 +1048,8 @@ class MessageManager $date = '
'.get_lang('Created').' '.date_to_str_ago($main_message['send_date']).'
'; } $attachment = '
'.(!empty($files_attachments)?implode('
',$files_attachments):'').'
'; - $main_content.= '
'.$links.$user_link.' '.$date.$main_message['content'].$attachment.'
'; + $main_content.= '
'.$links.$user_link.' '.$date.$main_message['content'].$attachment.'
'; + $main_content = Security::remove_XSS($main_content, STUDENT, true); $html = ''; @@ -1094,7 +1095,7 @@ class MessageManager $date = '
'.get_lang('Created').' '.date_to_str_ago($topic['send_date']).'
'; } $attachment = '
'.(!empty($files_attachments)?implode('
',$files_attachments):'').'
'; - $html_items.= '
'.$links.$user_link.' '.$date.$topic['content'].$attachment.'
'; + $html_items.= '
'.$links.$user_link.' '.$date.Security::remove_XSS($topic['content'], STUDENT, true).$attachment.'
'; $base_padding = 20; diff --git a/main/inc/lib/notification.lib.php b/main/inc/lib/notification.lib.php index 6a64cee2cb..489bdede01 100644 --- a/main/inc/lib/notification.lib.php +++ b/main/inc/lib/notification.lib.php @@ -66,7 +66,7 @@ class Notification extends Model { foreach($notifications as $item_to_send) { //Sending email - api_mail_html($item_to_send['dest_mail'], $item_to_send['dest_mail'], $item_to_send['title'], $item_to_send['content'], $this->admin_name, $this->admin_email); + api_mail_html($item_to_send['dest_mail'], $item_to_send['dest_mail'], Security::filter_terms($item_to_send['title']), Security::filter_terms($item_to_send['content']), $this->admin_name, $this->admin_email); if ($this->debug) { error_log('Sending message to: '.$item_to_send['dest_mail']); } //Updating @@ -128,7 +128,7 @@ class Notification extends Model { case NOTIFY_GROUP_AT_ONCE: if (!empty($user_info['mail'])) { $name = api_get_person_name($user_info['firstname'], $user_info['lastname']); - api_mail_html($name, $user_info['mail'], $title, $content, $this->admin_name, $this->admin_email); + api_mail_html($name, $user_info['mail'], Security::filter_terms($title), Security::filter_terms($content), $this->admin_name, $this->admin_email); } $params['sent_at'] = api_get_utc_datetime(); //Saving the notification to be sent some day diff --git a/main/inc/lib/security.lib.php b/main/inc/lib/security.lib.php index a98f95a17b..adddabfc94 100755 --- a/main/inc/lib/security.lib.php +++ b/main/inc/lib/security.lib.php @@ -343,7 +343,7 @@ class Security { $replace = '***'; if (!empty($bad_terms)) { //Fast way - $new_text = str_replace($bad_terms, $replace, $text, $count); + $new_text = str_ireplace($bad_terms, $replace, $text, $count); //We need statistics /* diff --git a/main/inc/lib/social.lib.php b/main/inc/lib/social.lib.php index 54ec5154f1..280aca3e78 100755 --- a/main/inc/lib/social.lib.php +++ b/main/inc/lib/social.lib.php @@ -634,10 +634,7 @@ class SocialManager extends UserManager { echo ''.get_lang('Optoi').''; echo '';*/ - echo '