Author: sebawagner
Date: Fri Jan 27 14:57:36 2012
New Revision: 1236702

URL: http://svn.apache.org/viewvc?rev=1236702&view=rev
Log:
OPENMEETINGS-3 Preparing Moodle Plugin as first Apache OpenMeetings Incubator 
release Update some of the REST services in the Moodle Gateway to OpenMeetings

Modified:
    incubator/openmeetings/trunk/plugins/moodle_plugin/openmeetings_gateway.php
    incubator/openmeetings/trunk/plugins/moodle_plugin/view.php

Modified: 
incubator/openmeetings/trunk/plugins/moodle_plugin/openmeetings_gateway.php
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/plugins/moodle_plugin/openmeetings_gateway.php?rev=1236702&r1=1236701&r2=1236702&view=diff
==============================================================================
--- incubator/openmeetings/trunk/plugins/moodle_plugin/openmeetings_gateway.php 
(original)
+++ incubator/openmeetings/trunk/plugins/moodle_plugin/openmeetings_gateway.php 
Fri Jan 27 14:57:36 2012
@@ -127,7 +127,6 @@ class openmeetings_gateway {
                                                        
"&allowUserQuestions=true" .
                                                        "&isAudioOnly=false");
 
-               //$result = 
$client_roomService->call('addRoomWithModeration',$params);
                if ($restService->fault) {
                        echo '<h2>Fault (Expect - The request contains an 
invalid SOAP body)</h2><pre>'; print_r($result); echo '</pre>';
                } else {
@@ -142,48 +141,103 @@ class openmeetings_gateway {
                return -1;
        }
 
-       function openmeetings_createRoomWithModAndType($openmeetings) {
-               global $USER, $CFG;
+       function openmeetings_updateRoomWithModeration($openmeetings) {
 
-               $course_name = 
'MOODLE_COURSE_ID_'.$openmeetings->course.'_NAME_'.$openmeetings->name;
-                       
-               $client_roomService = new 
nusoap_client($this->getUrl()."/services/RoomService?wsdl", true);
-               $client_roomService->soap_defencoding = 'utf-8';
-                       
-               $err = $client_roomService->getError();
+               global $CFG;
+
+               $restService = new openmeetings_rest_service();
+               //echo $restService."<br/>";
+               $err = $restService->getError();
                if ($err) {
                        echo '<h2>Constructor error</h2><pre>' . $err . 
'</pre>';
                        echo '<h2>Debug</h2><pre>' . 
htmlspecialchars($client->getDebug(), ENT_QUOTES) . '</pre>';
                        exit();
                }
-
+               $course_name = 
'MOODLE_COURSE_ID_'.$openmeetings->course.'_NAME_'.$openmeetings->name;
+                       
                $isModeratedRoom = false;
                if ($openmeetings->is_moderated_room == 1) {
                        $isModeratedRoom = true;
                }
-               
-               $result = 
$restService->call($this->getUrl()."/services/RoomService/addRoomWithModerationAndExternalType?"
 .
-                                                                       
"SID=".$this->session_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.
-                                                                       
"&externalRoomType=moodle");
 
-               if ($client_roomService->fault) {
+               $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' => 0,
+                               'appointment' => 0,
+                               'isDemoRoom' => 0,
+                               'demoTime' => 0,
+                               'isModeratedRoom' => $isModeratedRoom
+               );
+                       
+               $result = 
$restService->call($this->getUrl()."/services/RoomService/updateRoomWithModeration?"
 .
+                                                       
"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".$openmeetings->demoTime.
+                                                       
"&isModeratedRoom=".$isModeratedRoom);
+
+               if ($restService->fault) {
                        echo '<h2>Fault (Expect - The request contains an 
invalid SOAP body)</h2><pre>'; print_r($result); echo '</pre>';
                } else {
-                       $err = $client_roomService->getError();
+                       $err = $restService->getError();
                        if ($err) {
                                echo '<h2>Error</h2><pre>' . $err . '</pre>';
                        } else {
                                //echo '<h2>Result</h2><pre>'; 
print_r($result["return"]); echo '</pre>';
-                               return $result->children('ns', true)->return[0];
+                               return $result->children('ns', 
true)->return[0]; //$result["return"];
+                       }
+               }
+               return -1;
+       }
+
+
+       function 
openmeetings_setUserObjectAndGenerateRoomHashByURLAndRecFlag($username, 
$firstname, $lastname,
+       $profilePictureUrl, $email, $userId, $systemType, $room_id, 
$becomeModerator, $allowRecording) {
+               global $CFG;
+
+               $restService = new openmeetings_rest_service();
+               //echo $restService."<br/>";
+               $err = $restService->getError();
+               if ($err) {
+                       echo '<h2>Constructor error</h2><pre>' . $err . 
'</pre>';
+                       echo '<h2>Debug</h2><pre>' . 
htmlspecialchars($client->getDebug(), ENT_QUOTES) . '</pre>';
+                       exit();
+               }
+
+               $result = 
$restService->call($this->getUrl()."/services/UserService/setUserObjectAndGenerateRoomHashByURLAndRecFlag?"
 .
+                                                       
"SID=".$this->session_id.
+                                                       "&username=".$username.
+                                                       
"&firstname=".$firstname.
+                                                       "&lastname=".$lastname.
+                                                       
"&profilePictureUrl=".$profilePictureUrl.
+                                                       "&email=".$email.
+                                                       
"&externalUserId=".$userId.
+                                                       
"&externalUserType=".$systemType.
+                                                       "&room_id=".$room_id.
+                                                       
"&becomeModeratorAsInt=".$becomeModerator.
+                                                       
"&showAudioVideoTestAsInt=1".
+                                                       
"&allowRecording=".$allowRecording);
+
+               if ($restService->fault) {
+                       echo '<h2>Fault (Expect - The request contains an 
invalid SOAP body)</h2><pre>'; print_r($result); echo '</pre>';
+               } else {
+                       $err = $restService->getError();
+                       if ($err) {
+                               echo '<h2>Error</h2><pre>' . $err . '</pre>';
+                       } else {
+                               //echo '<h2>Result</h2><pre>'; 
print_r($result["return"]); echo '</pre>';
+                               return $result->children('ns', 
true)->return[0]; //$result["return"];
                        }
                }
                return -1;

Modified: incubator/openmeetings/trunk/plugins/moodle_plugin/view.php
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/plugins/moodle_plugin/view.php?rev=1236702&r1=1236701&r2=1236702&view=diff
==============================================================================
--- incubator/openmeetings/trunk/plugins/moodle_plugin/view.php (original)
+++ incubator/openmeetings/trunk/plugins/moodle_plugin/view.php Fri Jan 27 
14:57:36 2012
@@ -1,6 +1,6 @@
-<?php  
+<?php
 /*
-* Licensed to the Apache Software Foundation (ASF) under one
+ * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
@@ -19,197 +19,129 @@
 */
 
 
-    require_once("../../config.php");
-    require_once("lib.php");
-    require_once("openmeetings_gateway.php");
-
-
-    $id = optional_param('id', 0, PARAM_INT); // Course Module ID, or
-    $g  = optional_param('g', 0, PARAM_INT);
-    
-    if (!empty($id)) {
-           if (! $cm = get_coursemodule_from_id('openmeetings', $id)) {
-               print_error('invalidcoursemodule');
-           }
-           if (! $course = $DB->get_record("course", 
array("id"=>$cm->course))) {
-               print_error('coursemisconf');
-           }
-           if (! $openmeetings = $DB->get_record("openmeetings", 
array("id"=>$cm->instance))) {
-               print_error('invalidid', 'openmeetings');
-           }
-       
-       } else if (!empty($g)) {
-           if (! $openmeetings = $DB->get_record("openmeetings", 
array("id"=>$g))) {
-               print_error('invalidid', 'openmeetings');
-           }
-           if (! $course = $DB->get_record("course", 
array("id"=>$openmeetings->course))) {
-               print_error('invalidcourseid');
-           }
-           if (!$cm = get_coursemodule_from_instance("openmeetings", 
$openmeetings->id, $course->id)) {
-               print_error('invalidcoursemodule');
-           }
-           $id = $cm->id;
-       } else {
-           print_error('invalidid', 'openmeetings');
+require_once("../../config.php");
+require_once("lib.php");
+require_once("openmeetings_gateway.php");
+
+
+$id = optional_param('id', 0, PARAM_INT); // Course Module ID, or
+$g  = optional_param('g', 0, PARAM_INT);
+
+if (!empty($id)) {
+       if (! $cm = get_coursemodule_from_id('openmeetings', $id)) {
+               print_error('invalidcoursemodule');
+       }
+       if (! $course = $DB->get_record("course", array("id"=>$cm->course))) {
+               print_error('coursemisconf');
+       }
+       if (! $openmeetings = $DB->get_record("openmeetings", 
array("id"=>$cm->instance))) {
+               print_error('invalidid', 'openmeetings');
+       }
+
+} else if (!empty($g)) {
+       if (! $openmeetings = $DB->get_record("openmeetings", array("id"=>$g))) 
{
+               print_error('invalidid', 'openmeetings');
+       }
+       if (! $course = $DB->get_record("course", 
array("id"=>$openmeetings->course))) {
+               print_error('invalidcourseid');
        }
+       if (!$cm = get_coursemodule_from_instance("openmeetings", 
$openmeetings->id, $course->id)) {
+               print_error('invalidcoursemodule');
+       }
+       $id = $cm->id;
+} else {
+       print_error('invalidid', 'openmeetings');
+}
 
 
-    require_login($course->id);
+require_login($course->id);
 
-    add_to_log($course->id, "openmeetings", "view", "view.php?id=$cm->id", 
"$openmeetings->id");
+add_to_log($course->id, "openmeetings", "view", "view.php?id=$cm->id", 
"$openmeetings->id");
 
 /// Print the page header
 
-    if ($course->category) {
-        $navigation = "<a 
href=\"../../course/view.php?id=$course->id\">$course->shortname</a> ->";
-    } else {
-        $navigation = '';
-    }
+if ($course->category) {
+       $navigation = "<a 
href=\"../../course/view.php?id=$course->id\">$course->shortname</a> ->";
+} else {
+       $navigation = '';
+}
 
-    $stropenmeetingss = get_string("modulenameplural", "openmeetings");
-    $stropenmeetings  = get_string("modulename", "openmeetings");
+$stropenmeetingss = get_string("modulenameplural", "openmeetings");
+$stropenmeetings  = get_string("modulename", "openmeetings");
 
-    print_header("$course->shortname: $openmeetings->name", 
"$course->fullname",
+print_header("$course->shortname: $openmeetings->name", "$course->fullname",
                  "$navigation <a 
href=index.php?id=$course->id>$stropenmeetingss</a> -> $openmeetings->name", 
                   "", "", true, update_module_button($cm->id, $course->id, 
$stropenmeetings), 
-                  navmenu($course, $cm));
+navmenu($course, $cm));
 
 /// Print the main part of the page
 
-    //print_simple_box_start('center', '100%', '#ffffff', 10); 
-    
-    $colors = Array ("FFFF00", "CCCC00", "FFCC00", "CC9933", "996600", 
"FF9900", "CC9966", "CC6600", "996633", "663300", "FF6600", "CC6633", "993300", 
"660000", "FF6633", "CC3300", "FF3300", "FF0000", "CC0000", "990000", "FF3333", 
"FF0033", "CC0033", "CC6666", "CC3333", "993333", "990033", "330000", "FF3366", 
"FF0066", "CC3366", "996666", "663333", "9966CC", "9966FF", "6600CC", "6633CC", 
"663399", "330033", "3333FF", "3300FF", "3300CC", "3333CC", "000099", "000066", 
"99CCCC", "66CCCC", "339999", "669999", "006666", "336666", "66CC66", "669966", 
"336633", "003300", "006600", "CCCC66", "CCCC33", "999966", "999933", "999900", 
"666600");
-    
-    $colorid = rand (0, 61);
-    
-    $sitelink = str_replace("http://";, "", $CFG->wwwroot);
-    
-//    $moduleid = $DB->get_record ("modules", "name", "openmeetings");
-//    
-//    $coursedata = $DB->get_record ("course_modules", "course", $cm->course, 
"module", $moduleid->id, "instance", $cm->instance);
-//    
-//    if ($coursedata->groupmode != 0 && empty($g)) {
-//        //print_r (groups_get_groups($cm->course));
-//        //$usergroups = groups_get_groups_for_user($USER->id, $cm->course);
-//        $usergroups = groups_get_user_groups($cm->course,$page->userid);
-//        if (count($usergroups) > 1) {
-//            $table->head  = array ("Your Groups");
-//            $table->align = array ("center");
-//            
-//            $groupstitles = "";
-//            
-//            foreach ($usergroups as $usergroup) {
-//                $groupdata = get_record ("groups", "id", $usergroup);
-//                $groupstitles .= '<a 
href="view.php?id='.$id.'&g='.$usergroup.'">'.$groupdata->name.'</a><br />';
-//            }
-//            $table->data[] = array ($groupstitles);
-//            
-//            print_table($table);
-//            
-//            $show = "false";
-//        }
-//        else
-//        {
-//            $thelink = 
$sitelink."/".$course->id."/".$cm->instance."/".$usergroups[0];
-//        }
-//    }
-//    else
-//    {
-//        if (empty($g)) {
-//            $thelink = $sitelink."/".$course->id."/".$cm->instance;
-//        }
-//        else
-//        {
-//            $thelink = $sitelink."/".$course->id."/".$cm->instance."/".$g;
-//        }
-//    }
-    
-//    if ($show != "false") {
-
-//     echo $USER->id."<br/>";
-//     echo $USER->username."<br/>";
-//     echo $USER->firstname."<br/>";
-//     echo $USER->lastname."<br/>";
-//     echo $USER->email."<br/>";
-//     echo $USER->picture."<br/>";
-//     echo $CFG->wwwroot."<br/>";
-       
-       $context = get_context_instance(CONTEXT_MODULE, $cm->id);
-       
-       $becomemoderator = 0;
-       if (has_capability('mod/openmeetings:becomemoderator', $context)) {
-               $becomemoderator = 1;
-               //echo "BECOME MODERATOR IS TRUE<br/>";
-       }       
+//print_simple_box_start('center', '100%', '#ffffff', 10);
+
+$colors = Array ("FFFF00", "CCCC00", "FFCC00", "CC9933", "996600", "FF9900", 
"CC9966", "CC6600", "996633", "663300", "FF6600", "CC6633", "993300", "660000", 
"FF6633", "CC3300", "FF3300", "FF0000", "CC0000", "990000", "FF3333", "FF0033", 
"CC0033", "CC6666", "CC3333", "993333", "990033", "330000", "FF3366", "FF0066", 
"CC3366", "996666", "663333", "9966CC", "9966FF", "6600CC", "6633CC", "663399", 
"330033", "3333FF", "3300FF", "3300CC", "3333CC", "000099", "000066", "99CCCC", 
"66CCCC", "339999", "669999", "006666", "336666", "66CC66", "669966", "336633", 
"003300", "006600", "CCCC66", "CCCC33", "999966", "999933", "999900", "666600");
+
+$colorid = rand (0, 61);
+
+$sitelink = str_replace("http://";, "", $CFG->wwwroot);
+
+$context = get_context_instance(CONTEXT_MODULE, $cm->id);
+ 
+$becomemoderator = 0;
+if (has_capability('mod/openmeetings:becomemoderator', $context)) {
+       $becomemoderator = 1;
+       //echo "BECOME MODERATOR IS TRUE<br/>";
+}
+
+
+$openmeetings_gateway = new openmeetings_gateway();
+if ($openmeetings_gateway->openmeetings_loginuser()) {
                
+       $allowRecording = 1;
+       if ($openmeetings->allow_recording == 2) {
+               $allowRecording = 0;
+       }
+       if ($openmeetings->is_moderated_room == 3) {
+               $becomemoderator = 1;
+       }
+               
+       // Simulate the User automatically
+       //echo "openmeetings_setUserObjectWithExternalUser<br/>";
+       if ($openmeetings->type != 0){
+               $returnVal = 
$openmeetings_gateway->openmeetings_setUserObjectAndGenerateRoomHashByURLAndRecFlag($USER->username,$USER->firstname,
+               
$USER->lastname,$USER->picture,$USER->email,$USER->id,$CFG->openmeetings_openmeetingsModuleKey,$openmeetings->room_id,$becomemoderator,$allowRecording);
+       } else {
+               $returnVal = 
$openmeetings_gateway->openmeetings_setUserObjectAndGenerateRecordingHashByURL($USER->username,$USER->firstname,
+               
$USER->lastname,$USER->id,$CFG->openmeetings_openmeetingsModuleKey,$openmeetings->room_recording_id);
+       }
+               
+       if ($returnVal != "") {
+
+               $scope_room_id = $openmeetings->room_id;
+
+               if ($scope_room_id == 0 || $openmeetings->type == 0) {
+                       $scope_room_id = "hibernate";
+               }
 
-               $openmeetings_gateway = new openmeetings_gateway();
-               if ($openmeetings_gateway->openmeetings_loginuser()) {
-                       
-                       $allowRecording = 1;
-                       if ($openmeetings->allow_recording == 2) {
-                               $allowRecording = 0;
-                       }
-                       if ($openmeetings->is_moderated_room == 3) {
-                               $becomemoderator = 1;
-                       }
-                       
-                       //set User-Object to Session ... is deprecated
-                       //$returnVal = 
$openmeetings_gateway->openmeetings_setUserObject($USER->username,$USER->firstname,
-                       //                              
$USER->lastname,$USER->picture,$USER->email);
-                       
-                       // Simulate the User automatically
-                       //echo 
"openmeetings_setUserObjectWithExternalUser<br/>";
-                       if ($openmeetings->type != 0){
-                               $returnVal = 
$openmeetings_gateway->openmeetings_setUserObjectAndGenerateRoomHashByURLAndRecFlag($USER->username,$USER->firstname,
-                                                               
$USER->lastname,$USER->picture,$USER->email,$USER->id,$CFG->openmeetings_openmeetingsModuleKey,$openmeetings->room_id,$becomemoderator,$allowRecording);
-                       } else {
-                               $returnVal = 
$openmeetings_gateway->openmeetings_setUserObjectAndGenerateRecordingHashByURL($USER->username,$USER->firstname,
-                                                               
$USER->lastname,$USER->id,$CFG->openmeetings_openmeetingsModuleKey,$openmeetings->room_recording_id);
-                       }               
-                                       
-                       if ($returnVal != "") {
-                               
-//                             $iframe_d = 
"http://".$CFG->openmeetings_red5host . ":" . $CFG->openmeetings_red5port .
-//                                                             "/" . 
"openmeetings/?" .
-//                                                             "secureHash=" . 
$returnVal . 
-//                                                             "&scopeRoomId=" 
. $openmeetings->room_id .
-//                                                             
//"&swf=maindebug.swf8.swf" .
-//                                                             "&language=" . 
$openmeetings->language . 
-//                                                             "&picture=" . 
$USER->picture . 
-//                                                             "&user_id=". 
$USER->id . 
-//                                                             "&moodleRoom=1" 
. 
-//                                "&wwwroot=". $CFG->wwwroot;     
-
-                               $scope_room_id = $openmeetings->room_id;
-
-                               if ($scope_room_id == 0 || $openmeetings->type 
== 0) {
-                                       $scope_room_id = "hibernate";
-                               }
-                               
-                               $iframe_d = 
"http://".$CFG->openmeetings_red5host . ":" . $CFG->openmeetings_red5port .
+               $iframe_d = "http://".$CFG->openmeetings_red5host . ":" . 
$CFG->openmeetings_red5port .
                                                                
"/".$CFG->openmeetings_webappname."/?" .
                                                                "secureHash=" . 
$returnVal . 
                                                                "&scopeRoomId=" 
. $scope_room_id .
-                                                               
//"&swf=maindebug.swf8.swf" .
+               //"&swf=maindebug.swf8.swf" .
                                                                "&language=" . 
$openmeetings->language . 
                                                                "&picture=" . 
$USER->picture . 
                                                                "&user_id=". 
$USER->id . 
                                                                "&moodleRoom=1" 
.   
                                                                "&wwwroot=". 
$CFG->wwwroot;                                                                  
                              
 
-                               printf("<iframe src='%s' width='%s' height='%s' 
/>",$iframe_d,"100%",640);                                      
-                               
-                       }
-               } else {
-                       echo "Could not login User to OpenMeetings, check your 
OpenMeetings Module Configuration";
-                       exit();
-               }
-//    }
+               printf("<iframe src='%s' width='%s' height='%s' 
/>",$iframe_d,"100%",640);
 
+       }
+} else {
+       echo "Could not login User to OpenMeetings, check your OpenMeetings 
Module Configuration";
+       exit();
+}
 
-    //print_simple_box_end();
 
 /// Finish the page
-    print_footer($course);
+print_footer($course);
 ?>
\ No newline at end of file


Reply via email to