Revision: 3832
Author: seba.wagner
Date: Sun Jun 19 02:13:51 2011
Log: Enable Update/delete
http://code.google.com/p/openmeetings/source/detail?r=3832
Modified:
/trunk/plugins/moodle_plugin/lib.php
/trunk/plugins/moodle_plugin/openmeetings_gateway.php
=======================================
--- /trunk/plugins/moodle_plugin/lib.php Sun Jan 9 03:57:47 2011
+++ /trunk/plugins/moodle_plugin/lib.php Sun Jun 19 02:13:51 2011
@@ -40,7 +40,7 @@
$openmeetings_gateway = new openmeetings_gateway();
if ($openmeetings_gateway->openmeetings_loginuser()) {
- //Roomtype 0 means its and recording, we don't need to create a
recording for that
+ //Roomtype 0 means its and recording, we don't need to create a room for
that
if ($openmeetings->type != 0) {
$openmeetings->room_id =
$openmeetings_gateway->openmeetings_createRoomWithModAndType($openmeetings);
}
@@ -60,8 +60,20 @@
$openmeetings->timemodified = time();
$openmeetings->id = $openmeetings->instance;
- # May have to add extra stuff in here #
-
+ $openmeetings_gateway = new openmeetings_gateway();
+ if ($openmeetings_gateway->openmeetings_loginuser()) {
+
+ //Roomtype 0 means its and recording, we don't need to update a room for
that
+ if ($openmeetings->type != 0) {
+ $openmeetings->room_id =
$openmeetings_gateway->openmeetings_updateRoomWithModeration($openmeetings);
+ }
+
+ } else {
+ echo "Could not login User to OpenMeetings, check your OpenMeetings
Module Configuration";
+ exit();
+ }
+
+ # May have to add extra stuff in here #
return $DB->update_record("openmeetings", $openmeetings);
}
@@ -74,6 +86,20 @@
}
$result = true;
+
+ $openmeetings_gateway = new openmeetings_gateway();
+ if ($openmeetings_gateway->openmeetings_loginuser()) {
+
+ //Roomtype 0 means its and recording, we don't need to update a room for
that
+ if ($openmeetings->type != 0) {
+ $openmeetings->room_id =
$openmeetings_gateway->openmeetings_deleteRoom($openmeetings);
+ }
+
+ } else {
+ echo "Could not login User to OpenMeetings, check your OpenMeetings
Module Configuration";
+ exit();
+ }
+
# Delete any dependent records here #
=======================================
--- /trunk/plugins/moodle_plugin/openmeetings_gateway.php Sat Jan 8
07:43:22 2011
+++ /trunk/plugins/moodle_plugin/openmeetings_gateway.php Sun Jun 19
02:13:51 2011
@@ -243,7 +243,7 @@
'roomtypes_id' => $openmeetings->type,
'comment' => 'Created by SOAP-Gateway for Moodle
Platform',
'numberOfPartizipants' => $openmeetings->max_user,
- 'ispublic' => true,
+ 'ispublic' => false,
'appointment' => false,
'isDemoRoom' => false,
'demoTime' => 0,
@@ -264,6 +264,107 @@
}
return -1;
}
+
+ function openmeetings_updateRoomWithModeration($openmeetings) {
+ global $USER, $CFG;
+
+ // echo $CFG->openmeetings_red5host."<br/>";
+ // echo $CFG->openmeetings_red5port."<br/>";
+ // foreach ($CFG as $key => $value){
+ // echo "KEY: ".$key." Value: ".$value."<br/>";
+ // }
+ $course_name
= 'MOODLE_COURSE_ID_'.$openmeetings->course.'_NAME_'.$openmeetings->name;
+ //echo "CourseName: ".$course_name."<br/>";
+
+ //echo $client_userService."<br/>";
+
+ $client_roomService = new
nusoap_client("http://".$CFG->openmeetings_red5host.":".$CFG->openmeetings_red5port."/openmeetings/services/RoomService?wsdl",
true);
+
+ $err = $client_roomService->getError();
+ if ($err) {
+ echo '<h2>Constructor error</h2><pre>' . $err .
'</pre>';
+ echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->getDebug(),
ENT_QUOTES) . '</pre>';
+ exit();
+ }
+
+ $isModeratedRoom = false;
+ if ($openmeetings->is_moderated_room == 1) {
+ $isModeratedRoom = true;
+ }
+
+ $params = array(
+ 'SID' => $this->session_id,
+ 'room_id' => $openmeetings->room_id,
+ 'name' => $course_name,
+ 'roomtypes_id' => $openmeetings->type,
+ 'comment' => 'Created by SOAP-Gateway for Moodle
Platform',
+ 'numberOfPartizipants' => $openmeetings->max_user,
+ 'ispublic' => false,
+ 'appointment' => false,
+ 'isDemoRoom' => false,
+ 'demoTime' => 0,
+ 'isModeratedRoom' => $isModeratedRoom
+ );
+ $result =
$client_roomService->call('updateRoomWithModeration',$params);
+ if ($client_roomService->fault) {
+ echo '<h2>Fault (Expect - The request contains an invalid SOAP
body)</h2><pre>'; print_r($result); echo '</pre>';
+ } else {
+ $err = $client_roomService->getError();
+ if ($err) {
+ echo '<h2>Error</h2><pre>' . $err . '</pre>';
+ } else {
+ //echo '<h2>Result</h2><pre>'; print_r($result["return"]);
echo '</pre>';
+ return $result["return"];
+ }
+ }
+ return -1;
+ }
+
+
+ function openmeetings_deleteRoom($openmeetings) {
+ global $USER, $CFG;
+
+ // echo $CFG->openmeetings_red5host."<br/>";
+ // echo $CFG->openmeetings_red5port."<br/>";
+ // foreach ($CFG as $key => $value){
+ // echo "KEY: ".$key." Value: ".$value."<br/>";
+ // }
+ //echo "CourseName: ".$course_name."<br/>";
+
+ //echo $client_userService."<br/>";
+
+ $client_roomService = new
nusoap_client("http://".$CFG->openmeetings_red5host.":".$CFG->openmeetings_red5port."/openmeetings/services/RoomService?wsdl",
true);
+
+ $err = $client_roomService->getError();
+ if ($err) {
+ echo '<h2>Constructor error</h2><pre>' . $err .
'</pre>';
+ echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->getDebug(),
ENT_QUOTES) . '</pre>';
+ exit();
+ }
+
+ $isModeratedRoom = false;
+ if ($openmeetings->is_moderated_room == 1) {
+ $isModeratedRoom = true;
+ }
+
+ $params = array(
+ 'SID' => $this->session_id,
+ 'room_id' => $openmeetings->room_id
+ );
+ $result = $client_roomService->call('deleteRoom',$params);
+ if ($client_roomService->fault) {
+ echo '<h2>Fault (Expect - The request contains an invalid SOAP
body)</h2><pre>'; print_r($result); echo '</pre>';
+ } else {
+ $err = $client_roomService->getError();
+ if ($err) {
+ echo '<h2>Error</h2><pre>' . $err . '</pre>';
+ } else {
+ //echo '<h2>Result</h2><pre>'; print_r($result["return"]);
echo '</pre>';
+ return $result["return"];
+ }
+ }
+ return -1;
+ }
function openmeetings_getRecordingsByExternalRooms(){
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.