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.

Reply via email to