Exemple #1
0
 function definition()
 {
     global $COURSE, $USER, $OUTPUT;
     $mform =& $this->_form;
     //Is this particular course mapped to a course in WeBWorK
     $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');
     //login the instructor
     $wwkey = _wwassignment_login_user($wwcoursename, $wwusername);
     $wwinstructorlink = _wwassignment_link_to_instructor_auto_login($wwcoursename, $wwusername, $wwkey);
     $mform->addElement('link', 'instructor_page_link', get_string('instructor_page_link_desc', 'wwassignment'), $wwinstructorlink, get_string('instructor_page_link_name', 'wwassignment'));
     if ($wwsetname != -1) {
         //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
     $mform->addElement('header', 'set_initialization', get_string('set_initialization', 'wwassignment'));
     //name
     $mform->addElement('text', 'name', get_string('wwassignmentname', 'wwassignment'), array('size' => '64'));
     $mform->setType('name', PARAM_TEXT);
     $mform->addRule('name', null, 'required', null, 'client');
     //set select
     $options = $wwclient->options_set($wwcoursename, false);
     $mform->addElement('select', 'webwork_set', get_string('webwork_set', 'wwassignment'), $options);
     //	$OUTPUT->help_icon('enablenotification','assignment');
     $mform->addHelpButton('webwork_set', 'webwork_set', 'wwassignment');
     //description
     $mform->addElement('htmleditor', 'description', get_string('description', 'assignment'));
     $mform->setType('description', PARAM_RAW);
     $mform->addHelpButton('description', 'writing', 'wwassignment');
     $features = new stdClass();
     $features->gradecat = true;
     $features->groups = false;
     $this->standard_coursemodule_elements($features);
     $this->add_action_buttons();
     //$this->standard_hidden_coursemodule_elements();
     return;
 }
Exemple #2
0
/**
* @desc Creates an auto_login link to the URL for editing the problem set associated with $wwassignmentid.
* @param string $wwassignmentid The assignment id.
* @return URL The URL.
*/
function wwassignment_edit_set_link($wwassignmentid)
{
    global $COURSE, $USER;
    $webworkclient = new webwork_client();
    //IS THE COURSE MAPPED?
    $webworkcourse = _wwassignment_mapped_course($COURSE->id, false);
    //IS THE SET MAPPED?
    $webworkset = _wwassignment_mapped_set($wwassignmentid, false);
    //IS THE USER MAPPED?
    $webworkuser = $webworkclient->mapped_user($webworkcourse, $USER->username);
    if ($webworkuser == -1) {
        //USER WAS NOT FOUND, wasnt mapped
        //try and create a teacher
        $tempuser = $USER;
        $newuser = $webworkclient->create_user($webworkcourse, $tempuser, '10');
    }
    $key = $webworkclient->login_user($webworkcourse, $webworkuser, false);
    return _wwassignment_link_to_edit_set_auto_login($webworkcourse, $webworkset, $webworkuser, $key);
}
Exemple #3
0
/**
* @desc Creates an auto_login link to the URL for editing the problem set associated with $wwassignmentid.
* @param string $wwassignmentid The assignment id.
* @return URL The URL.
*/
function wwassignment_edit_set_link($wwassignmentid)
{
    global $COURSE, $USER;
    $webworkclient = webwork_client::get_instance();
    //IS THE COURSE MAPPED?
    $webworkcourse = _wwassignment_mapped_course($COURSE->id, false);
    //IS THE SET MAPPED?
    $webworkset = _wwassignment_mapped_set($wwassignmentid, false);
    //IS THE USER MAPPED?
    $webworkuser = $webworkclient->mapped_user($webworkcourse, $USER->username);
    if ($webworkuser == -1) {
        //USER WAS NOT FOUND, wasnt mapped
        error_log(get_string("user_not_mapped", "wwassignment"));
        //try and create a teacher
        $newuser = $webworkclient->create_user($webworkcourse, $USER, "10");
        //AGAIN FOR GOOD MEASURE
        $webworkuser = $webworkclient->mapped_user($webworkcourse, $USER->username, false);
    }
    $key = $webworkclient->login_user($webworkcourse, $webworkuser, false);
    return _wwassignment_link_to_edit_set_auto_login($webworkcourse, $webworkset, $webworkuser, $key);
}