From: Matt L. v. a. <we...@ma...> - 2007-09-25 02:26:29
|
Log Message: ----------- Added Events Modified Files: -------------- wwmoodle/wwassignment3/moodle/mod/wwassignment: config.html locallib.php mod_form.php view.php Revision Data ------------- Index: mod_form.php =================================================================== RCS file: /webwork/cvs/system/wwmoodle/wwassignment3/moodle/mod/wwassignment/mod_form.php,v retrieving revision 1.1 retrieving revision 1.2 diff -Lwwassignment3/moodle/mod/wwassignment/mod_form.php -Lwwassignment3/moodle/mod/wwassignment/mod_form.php -u -r1.1 -r1.2 --- wwassignment3/moodle/mod/wwassignment/mod_form.php +++ wwassignment3/moodle/mod/wwassignment/mod_form.php @@ -1,17 +1,18 @@ <?php require_once ('moodleform_mod.php'); -require_once ('lib.php'); +require_once ('locallib.php'); class mod_wwassignment_mod_form extends moodleform_mod { function definition() { - global $COURSE; + global $COURSE,$USER; $mform =& $this->_form; //Is this particular course mapped to a course in WeBWorK - $wwclient = new webwork_client(); + $wwclient = new wwassignment_client(); $wwcoursename = _wwassignment_mapped_course($COURSE->id,false); $wwsetname = _wwassignment_mapped_set($this->_instance); + $wwusername = $USER->username; //create the instructor if necessary $wwusername = _wwassignment_mapcreate_user($wwcoursename,$wwusername,'10'); @@ -28,6 +29,12 @@ //we are doing an update, since an id exists in moodle db $wwsetlink = _wwassignment_link_to_edit_set_auto_login($wwcoursename,$wwsetname,$wwusername,$wwkey); $mform->addElement('link','edit_set',get_string('edit_set_link_desc','wwassignment'),$wwsetlink,get_string('edit_set_link_name','wwassignment')); + $wwsetdata = $wwclient->get_assignment_data($wwcoursename,$wwsetname,false); + + $opendate = strftime("%c", $wwsetdata['open_date']); + $duedate = strftime("%c", $wwsetdata['due_date']); + $mform->addElement('static','opendate','WeBWorK Set Open Date',$opendate); + $mform->addElement('static','duedate','WeBWorK Set Due Date',$duedate); } //define the mapping Index: view.php =================================================================== RCS file: /webwork/cvs/system/wwmoodle/wwassignment3/moodle/mod/wwassignment/view.php,v retrieving revision 1.2 retrieving revision 1.3 diff -Lwwassignment3/moodle/mod/wwassignment/view.php -Lwwassignment3/moodle/mod/wwassignment/view.php -u -r1.2 -r1.3 --- wwassignment3/moodle/mod/wwassignment/view.php +++ wwassignment3/moodle/mod/wwassignment/view.php @@ -4,7 +4,7 @@ */ require_once("../../config.php"); -require_once("lib.php"); +require_once("locallib.php"); $id = optional_param('id', 0, PARAM_INT); // Course Module ID, or $a = optional_param('a', 0, PARAM_INT); // NEWMODULE ID Index: config.html =================================================================== RCS file: /webwork/cvs/system/wwmoodle/wwassignment3/moodle/mod/wwassignment/config.html,v retrieving revision 1.1 retrieving revision 1.2 diff -Lwwassignment3/moodle/mod/wwassignment/config.html -Lwwassignment3/moodle/mod/wwassignment/config.html -u -r1.1 -r1.2 --- wwassignment3/moodle/mod/wwassignment/config.html +++ wwassignment3/moodle/mod/wwassignment/config.html @@ -0,0 +1,56 @@ +<?php +// $Id$ + + if( empty($CFG->wwassignment_webworkurl) ) { + $CFG->wwassignment_webworkurl = "HOSTNAME/webwork2"; + } + if( empty($CFG->wwassignment_iframewidth) ) { + $CFG->wwassignment_iframewidth = "95%"; + } + if( empty($CFG->wwassignment_iframeheight) ) { + $CFG->wwassignment_iframeheight = "500px"; + } + if( empty($CFG->wwassignment_rpc_wsdl) ) { + $CFG->wwassignment_rpc_wsdl = "HOSTNAME/webwork2_wsdl"; + } + if( empty($CFG->wwassignment_rpc_key) ) { + $CFG->wwassignment_rpc_key = ""; + } +?> +<form method="post" action="module.php" name="form"> + <input type="hidden" name="sesskey" value="<?php echo $USER->sesskey ?>"> + <table cellpadding="9" cellspacing="0"> + <tr valign='top'> + <td align="right"><label for='wwassignment_webworkurl'><b>wwassignment_webworkurl:</b></label></td> + <td><input type='text' name='wwassignment_webworkurl' id='wwassignment_webworkurl' value="<?php p($CFG->wwassignment_webworkurl); ?>" size="30" /></td> + <td><?php print_string('webwork_url', 'wwassignment'); ?></td> + </tr> + + <tr valign='top'> + <td align='right'><label for='wwassignment_iframewidth'><b>wwassignment_iframewidth:</b></label></td> + <td><input type='text' name='wwassignment_iframewidth' id='wwassignment_iframewidth' value="<?php p($CFG->wwassignment_iframewidth); ?>" size="30" /></td> + <td><?php print_string('iframe_width', 'wwassignment'); ?></td> + </tr> + <tr valign='top'> + <td align='right'><label for='wwassignment_iframeheight'><b>wwassignment_iframeheight:</b></label></td> + <td><input type='text' name='wwassignment_iframeheight' id='wwassignment_iframeheight' value="<?php p($CFG->wwassignment_iframeheight); ?>" size="30" /></td> + + <td><?php print_string('iframe_height', 'wwassignment'); ?></td> + </tr> + <tr valign='top'> + <td align='right'><label for='wwassignment_rpc_wsdl'><b>wwassignment_rpc_wsdl:</b></label></td> + <td><input type='text' name='wwassignment_rpc_wsdl' id='wwassignment_rpc_wsdl' value="<?php p($CFG->wwassignment_rpc_wsdl); ?>" size="30" /></td> + <td><?php print_string('rpc_wsdl', 'wwassignment'); ?></td> + </tr> + <tr valign='top'> + + <td align='right'><label for='wwassignment_rpc_key'><b>wwassignment_rpc_key:</b></label></td> + <td><input type='text' name='wwassignment_rpc_key' id='wwassignment_rpc_key' value="<?php p($CFG->wwassignment_rpc_key); ?>" size="30" /></td> + <td><?php print_string('rpc_key', 'wwassignment'); ?></td> + </tr> + <tr> + <td colspan="3" align="center"><input type="submit" value="<?php print_string("savechanges") ?>" /></td> + </tr> + </table> + +</form> Index: locallib.php =================================================================== RCS file: /webwork/cvs/system/wwmoodle/wwassignment3/moodle/mod/wwassignment/locallib.php,v retrieving revision 1.2 retrieving revision 1.3 diff -Lwwassignment3/moodle/mod/wwassignment/locallib.php -Lwwassignment3/moodle/mod/wwassignment/locallib.php -u -r1.2 -r1.3 --- wwassignment3/moodle/mod/wwassignment/locallib.php +++ wwassignment3/moodle/mod/wwassignment/locallib.php @@ -2,6 +2,8 @@ require_once("$CFG->libdir/soap/nusoap.php"); +define(WWASSIGNMENT_DEBUG,1); + ////////////////////////////////////////////////////////////////// //EVENT CREATION AND DELETION ////////////////////////////////////////////////////////////////// @@ -15,14 +17,17 @@ * @return integer 0 on success. -1 on error. */ function _wwassignment_create_events($wwsetname,$wwassignmentid,$opendate,$duedate) { + global $COURSE; unset($event); $event->name = $wwsetname; - $openevent->description = ''; + $event->description = 'WeBWorK Set Event'; $event->courseid = $COURSE->id; $event->groupid = 0; $event->userid = 0; + $event->format = 1; $event->modulename = 'wwassignment'; $event->instance = $wwassignmentid; + $event->visible = 1; $openevent = $event; $dueevent = $event; @@ -37,6 +42,7 @@ $dueevent->timestart = $duedate; $dueevent->timeduration = 1; + $result = 0; if(!add_event($openevent)) { $result = -1; @@ -128,7 +134,7 @@ return $wwassignmentbridge->webwork_course; } if(!$silent) { - print_error(get_string('webwork_course_map_failure','wwassignment')); + print_error('webwork_course_map_failure','wwassignment'); } return -1; } @@ -145,7 +151,7 @@ return $wwassignment->webwork_set; } if(!$silent) { - print_error(get_string('webwork_set_map_failure','wwassignment')); + print_error('webwork_set_map_failure','wwassignment'); } return -1; } @@ -206,7 +212,8 @@ * @return URL. */ function _wwassignment_link_to_course($webworkcourse) { - return WWASSIGNMENT_WEBWORK_URL."/$webworkcourse/"; + global $CFG; + return $CFG->wwassignment_webworkurl."/$webworkcourse/"; } @@ -222,24 +229,26 @@ var $defaultparams; var $datacache; var $mappingcache; + /** * @desc Constructs a singleton webwork_client. */ function wwassignment_client() { + global $CFG; // static associative array containing the real objects, key is classname static $instances=array(); // get classname $class = get_class($this); if (!array_key_exists($class, $instances)) { // does not yet exist, save in array - $this->client = new soap_client(WWASSIGNMENT_WEBWORK_WSDL,'wsdl'); + $this->client = new soap_client($CFG->wwassignment_rpc_wsdl,'wsdl'); $err = $this->client->getError(); if ($err) { - print_error(get_string('construction_error','wwassignment')."<BR>$err"); + print_error('construction_error','wwassignment'); } $this->defaultparams = array(); - $this->defaultparams['authenKey'] = WWASSIGNMENT_WEBWORK_KEY; + $this->defaultparams['authenKey'] = $CFG->wwassignment_rpc_key; $this->datacache = array(); $this->mappingcache = array(); $instances[$class] = $this; @@ -248,7 +257,8 @@ foreach (get_class_vars($class) as $var => $value) { $this->$var =& $instances[$class]->$var; } - } + } + /** *@desc Calls a SOAP function and passes (authenkey,course) automatically in the parameter list. *@param string $functioncall The function to call @@ -263,11 +273,18 @@ if(!$override) { $params = array_merge($this->defaultparams,$params); } + if(WWASSIGNMENT_DEBUG) { + echo "Called: $functioncall <br>"; + echo "Params: "; + var_dump($params); + echo "<br>"; + } $result = $this->client->call($functioncall,$params); + //$result = call_user_func_array(array(&$this->client,$functioncall),$params); if($err = $this->client->getError()) { //print_error(get_string("rpc_fault","wwassignment') . " " . $functioncall. " ". $err); - print_error(get_string('rpc_error','wwassignment')."<BR>$err<BR><BR>Response:<BR>".$this->client->response ); + print_error('rpc_error','wwassignment'); } return $result; } @@ -289,7 +306,7 @@ return $webworkuser; } if(!$silent) { - print_error(get_string('webwork_user_map_failure',"wwassignment")); + print_error('webwork_user_map_failure',"wwassignment"); } return -1; } @@ -313,7 +330,7 @@ } if(!$silent) { - print_error(get_string('webwork_user_set_map_failure','wwassignment')); + print_error('webwork_user_set_map_failure','wwassignment'); } return -1; } @@ -336,7 +353,7 @@ return $setinfo; } if(!$silent) { - print_error(get_string('webwork_set_map_failure','wwassignment')); + print_error('webwork_set_map_failure','wwassignment'); } return -1; @@ -356,7 +373,7 @@ return $record; } if(!$silent) { - print_error(get_string('webwork_user_set_map_failure','wwassignment')); + print_error('webwork_user_set_map_failure','wwassignment'); } return -1; } @@ -374,7 +391,7 @@ return count($record); } if(!$silent) { - print_error(get_string('webwork_set_map_failure','wwassignment')); + print_error('webwork_set_map_failure','wwassignment'); } return -1; @@ -392,7 +409,7 @@ return $key; } if(!$silent) { - print_error(get_string('webwork_user_map_failure','wwassignment')); + print_error('webwork_user_map_failure','wwassignment'); } return -1; } @@ -414,7 +431,7 @@ return $setoptions; } if(!$silent) { - print_error(get_string('webwork_course_map_failure','wwassignment')); + print_error('webwork_course_map_failure','wwassignment'); } return -1; } @@ -435,7 +452,7 @@ return $courseoptions; } if(!$silent) { - print_error(get_string('webwork_course_list_map_failure','wwassignment')); + print_error('webwork_course_list_map_failure','wwassignment'); } return -1; |