send_message_post.php 4.41 KB
Newer Older
Thomas Fradet's avatar
folder  
Thomas Fradet committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
<?php
	/**
	 * Created by PhpStorm.
	 * User: softia
	 * Date: 06/03/18
	 * Time: 10:20
	 */

// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
	
	/**
	 *
	 * @package    format_iena
	 * @category   format
	 * @copyright  2018 Softia/Université lorraine
	 * @author     vrignaud camille
	 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
	 */
	
	define('NO_OUTPUT_BUFFERING', true);
	require_once('../../../config.php');
	
	global $COURSE, $DB, $USER, $CFG;
	
	$courseID = required_param('courseid', PARAM_INT);
	$url = new moodle_url('/course/format/iena/send_message_post.php', array('courseid' => $courseID));
	
	$PAGE->set_pagelayout('course');
	$PAGE->set_url($url);
	
	if (!has_capability('course/iena:suivi', $context = context_course::instance($courseID), $USER->id)) {
		$link = $CFG->wwwroot . '/course/view.php?id=' . $courseID;
		header("Location: {$link}");
		exit;
	}
	
	$course = $DB->get_record('course', array('id' => $courseID), '*', MUST_EXIST);
	require_login($course, false, NULL);
	
	if ($_POST) {
		$messageContent = $_POST['summary']['text'];
		$usersid = explode(",", $_POST["usersid"]);
		// $messageContent .= "<br>". get_string('course', 'format_iena') . " : " . $course->fullname;
		$messageContent .= "<br>". get_string('course', 'format_iena') . " :  <a href='" . $CFG->wwwroot . "/course/view.php?id=" . $course->id . "'>" . $course->fullname . "</a>";
		$messageContent .= "<br> ". get_string('prof', 'format_iena') . " : " . $USER->firstname . " " . $USER->lastname;
		$brutMessageContent = $course->fullname . " " . $_POST['summary']['text'];
		$course_ctx = context_course::instance($courseID);
		$students = get_enrolled_users($course_ctx);
		$message = new \core\message\message();
		$message->courseid = $course->id;
		$message->component = 'moodle';
		$message->name = 'instantmessage';
		$message->userfrom = $USER;
		$message->notification = '0';
		$message->fullmessageformat = FORMAT_HTML;
		// sending a notification to each students
		foreach ($usersid as $userID) {
			foreach ($students as $student) {
				//var_dump($student);
				if ($student->id == $userID) {
					$message->userto = $student;
					$message->subject = "Rappel : " . $course->fullname;
					$message->smallmessage = $messageContent;
					$message->fullmessage = $brutMessageContent;
					$message->fullmessagehtml = $messageContent;
					$messageid = message_send($message);
					break;
				}
			}
		}
		$link = $CFG->wwwroot . '/course/view.php?id=' . $courseID;
		header("Location: {$link}");
		exit;



// $message = new \core\message\message();
// $message->component = 'moodle';
// $message->name = 'instantmessage';
// $message->userfrom = $USER;
// $message->userto = $USER;
// $message->subject = 'message subject 1';
// $message->fullmessage = 'message body';
// $message->fullmessageformat = FORMAT_MARKDOWN;
// $message->fullmessagehtml = '<p>message body</p>';
// $message->smallmessage = 'small message';
// $message->notification = '0';
// $message->contexturl = 'http://GalaxyFarFarAway.com';
// $message->contexturlname = 'Context name';
// $message->replyto = "random@example.com";
// $content = array('*' => array('header' => ' test ', 'footer' => ' test ')); // Extra content for specific processor
// $message->set_additional_content('email', $content);
// $message->courseid = $COURSE->id; // This is required in recent versions, use it from 3.2 on https://tracker.moodle.org/browse/MDL-47162
// $messageid = message_send($message);



	}
	
	$dataSection = $DB->get_record('format_iena', array('id_section' => $sectionId), '*');
	$course = $DB->get_record('course', array('id' => $courseID), '*', MUST_EXIST);
	// require_login($course, false, NULL);
	echo $OUTPUT->header();
	
	
	echo $OUTPUT->footer();