Ignore:
Timestamp:
May 2, 2016, 12:09:23 PM (3 years ago)
Author:
jrpelegrina
Message:

Updated to moodle 3.0.3

Location:
moodle/trunk/fuentes/enrol/manual
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • moodle/trunk/fuentes/enrol/manual/ajax.php

    r136 r1331  
    129129        }
    130130
     131        if (empty($startdate)) {
     132            if (!$startdate = get_config('enrol_manual', 'enrolstart')) {
     133                // Default to now if there is no system setting.
     134                $startdate = 4;
     135            }
     136        }
     137
    131138        switch($startdate) {
    132139            case 2:
    133140                $timestart = $course->startdate;
     141                break;
     142            case 4:
     143                // We mimic get_enrolled_sql round(time(), -2) but always floor as we want users to always access their
     144                // courses once they are enrolled.
     145                $timestart = intval(substr(time(), 0, 8) . '00') - 1;
    134146                break;
    135147            case 3:
  • moodle/trunk/fuentes/enrol/manual/db/services.php

    r136 r1331  
    2828    // === enrol related functions ===
    2929    'moodle_enrol_manual_enrol_users' => array(
    30         'classname'   => 'enrol_manual_external',
    31         'methodname'  => 'enrol_users',
     30        'classname'   => 'moodle_enrol_manual_external',
     31        'methodname'  => 'manual_enrol_users',
    3232        'classpath'   => 'enrol/manual/externallib.php',
    3333        'description' => 'DEPRECATED: this deprecated function will be removed in a future version. This function has be renamed as enrol_manual_enrol_users()',
     
    4545    ),
    4646
     47    'enrol_manual_unenrol_users' => array(
     48        'classname'   => 'enrol_manual_external',
     49        'methodname'  => 'unenrol_users',
     50        'classpath'   => 'enrol/manual/externallib.php',
     51        'description' => 'Manual unenrol users',
     52        'capabilities'=> 'enrol/manual:unenrol',
     53        'type'        => 'write',
     54    ),
     55
    4756);
  • moodle/trunk/fuentes/enrol/manual/db/upgrade.php

    r136 r1331  
    6464    // Put any upgrade step following this.
    6565
     66    // Moodle v2.9.0 release upgrade line.
     67    // Put any upgrade step following this.
     68
     69    if ($oldversion < 2015091500) {
     70        // We keep today as default enrolment start time on upgrades.
     71        set_config('enrolstart', 3, 'enrol_manual');
     72        upgrade_plugin_savepoint(true, 2015091500, 'enrol', 'manual');
     73    }
     74
     75    // Moodle v3.0.0 release upgrade line.
     76    // Put any upgrade step following this.
     77
    6678    return true;
    6779}
  • moodle/trunk/fuentes/enrol/manual/edit.php

    r136 r1331  
    9393        $instance->expirythreshold = $data->expirythreshold;
    9494        $instance->timemodified    = time();
     95        $markdirty = ($instance->status != $data->status);
     96        $instance->status = $data->status;
    9597
    9698        $DB->update_record('enrol', $instance);
     99        \core\event\enrol_instance_updated::create_from_record($instance)->trigger();
    97100
    98         // Use standard API to update instance status.
    99         if ($instance->status != $data->status) {
    100             $instance = $DB->get_record('enrol', array('id'=>$instance->id));
    101             $plugin->update_status($instance, $data->status);
     101        if ($markdirty) {
    102102            $context->mark_dirty();
    103103        }
  • moodle/trunk/fuentes/enrol/manual/externallib.php

    r136 r1331  
    157157    }
    158158
     159    /**
     160     * Returns description of method parameters.
     161     *
     162     * @return external_function_parameters
     163     */
     164    public static function unenrol_users_parameters() {
     165        return new external_function_parameters(array(
     166            'enrolments' => new external_multiple_structure(
     167                new external_single_structure(
     168                    array(
     169                        'userid' => new external_value(PARAM_INT, 'The user that is going to be unenrolled'),
     170                        'courseid' => new external_value(PARAM_INT, 'The course to unenrol the user from'),
     171                        'roleid' => new external_value(PARAM_INT, 'The user role', VALUE_OPTIONAL),
     172                    )
     173                )
     174            )
     175        ));
     176    }
     177
     178    /**
     179     * Unenrolment of users.
     180     *
     181     * @param array $enrolments an array of course user and role ids
     182     * @throws coding_exception
     183     * @throws dml_transaction_exception
     184     * @throws invalid_parameter_exception
     185     * @throws moodle_exception
     186     * @throws required_capability_exception
     187     * @throws restricted_context_exception
     188     */
     189    public static function unenrol_users($enrolments) {
     190        global $CFG, $DB;
     191        $params = self::validate_parameters(self::unenrol_users_parameters(), array('enrolments' => $enrolments));
     192        require_once($CFG->libdir . '/enrollib.php');
     193        $transaction = $DB->start_delegated_transaction(); // Rollback all enrolment if an error occurs.
     194        $enrol = enrol_get_plugin('manual');
     195        if (empty($enrol)) {
     196            throw new moodle_exception('manualpluginnotinstalled', 'enrol_manual');
     197        }
     198
     199        foreach ($params['enrolments'] as $enrolment) {
     200            $context = context_course::instance($enrolment['courseid']);
     201            self::validate_context($context);
     202            require_capability('enrol/manual:unenrol', $context);
     203            $instance = $DB->get_record('enrol', array('courseid' => $enrolment['courseid'], 'enrol' => 'manual'));
     204            if (!$instance) {
     205                throw new moodle_exception('wsnoinstance', 'enrol_manual', $enrolment);
     206            }
     207            $user = $DB->get_record('user', array('id' => $enrolment['userid']));
     208            if (!$user) {
     209                throw new invalid_parameter_exception('User id not exist: '.$enrolment['userid']);
     210            }
     211            if (!$enrol->allow_unenrol($instance)) {
     212                throw new moodle_exception('wscannotunenrol', 'enrol_manual', '', $enrolment);
     213            }
     214            $enrol->unenrol_user($instance, $enrolment['userid']);
     215        }
     216        $transaction->allow_commit();
     217    }
     218
     219    /**
     220     * Returns description of method result value.
     221     *
     222     * @return null
     223     */
     224    public static function unenrol_users_returns() {
     225        return null;
     226    }
     227
    159228}
    160229
     
    208277    }
    209278
     279    /**
     280     * Marking the method as deprecated.
     281     *
     282     * @return bool
     283     */
     284    public static function manual_enrol_users_is_deprecated() {
     285        return true;
     286    }
    210287}
  • moodle/trunk/fuentes/enrol/manual/lang/en/enrol_manual.php

    r136 r1331  
    3030$string['browsecohorts'] = 'Browse cohorts';
    3131$string['confirmbulkdeleteenrolment'] = 'Are you sure you want to delete these users enrolments?';
     32$string['defaultstart'] = 'Default enrolment start';
    3233$string['defaultperiod'] = 'Default enrolment duration';
    3334$string['defaultperiod_desc'] = 'Default length of time that the enrolment is valid. If set to zero, the enrolment duration will be unlimited by default.';
     
    5758$string['manual:unenrolself'] = 'Unenrol self from the course';
    5859$string['messageprovider:expiry_notification'] = 'Manual enrolment expiry notifications';
     60$string['now'] = 'Now';
    5961$string['pluginname'] = 'Manual enrolments';
    6062$string['pluginname_desc'] = 'The manual enrolments plugin allows users to be enrolled manually via a link in the course administration settings, by a user with appropriate permissions such as a teacher. The plugin should normally be enabled, since certain other enrolment plugins, such as self enrolment, require it.';
     
    7274$string['wsnoinstance'] = 'Manual enrolment plugin instance doesn\'t exist or is disabled for the course (id = {$a->courseid})';
    7375$string['wsusercannotassign'] = 'You don\'t have the permission to assign this role ({$a->roleid}) to this user ({$a->userid}) in this course({$a->courseid}).';
     76$string['manualpluginnotinstalled'] = 'The "Manual" plugin has not yet been installed';
  • moodle/trunk/fuentes/enrol/manual/lib.php

    r136 r1331  
    227227
    228228        $startdate = $manager->get_course()->startdate;
     229        if (!$defaultstart = get_config('enrol_manual', 'enrolstart')) {
     230            // Default to now if there is no system setting.
     231            $defaultstart = 4;
     232        }
    229233        $startdateoptions = array();
    230         $timeformat = get_string('strftimedatefullshort');
     234        $dateformat = get_string('strftimedatefullshort');
    231235        if ($startdate > 0) {
    232             $startdateoptions[2] = get_string('coursestart') . ' (' . userdate($startdate, $timeformat) . ')';
    233         }
    234         $today = time();
    235         $today = make_timestamp(date('Y', $today), date('m', $today), date('d', $today), 0, 0, 0);
    236         $startdateoptions[3] = get_string('today') . ' (' . userdate($today, $timeformat) . ')' ;
     236            $startdateoptions[2] = get_string('coursestart') . ' (' . userdate($startdate, $dateformat) . ')';
     237        }
     238        $now = time();
     239        $today = make_timestamp(date('Y', $now), date('m', $now), date('d', $now), 0, 0, 0);
     240        $startdateoptions[3] = get_string('today') . ' (' . userdate($today, $dateformat) . ')';
     241        $startdateoptions[4] = get_string('now', 'enrol_manual') . ' (' . userdate($now, get_string('strftimedatetimeshort')) . ')';
    237242        $defaultduration = $instance->enrolperiod > 0 ? $instance->enrolperiod / 86400 : '';
    238243
     
    246251            'defaultRole'         => $instance->roleid,
    247252            'defaultDuration'     => $defaultduration,
     253            'defaultStartDate'    => (int)$defaultstart,
    248254            'disableGradeHistory' => $CFG->disablegradehistory,
    249255            'recoverGradesDefault'=> '',
     
    264270            'enrolmentoptions',
    265271            'enrolusers',
     272            'enrolxusers',
    266273            'errajaxfailedenrol',
    267274            'errajaxsearch',
     275            'foundxcohorts',
    268276            'none',
    269277            'usersearch',
  • moodle/trunk/fuentes/enrol/manual/locallib.php

    r136 r1331  
    271271                }
    272272            }
     273            // Delete cached course contacts for this course because they may be affected.
     274            cache::make('core', 'coursecontacts')->delete($manager->get_context()->instanceid);
    273275            return true;
    274276        }
  • moodle/trunk/fuentes/enrol/manual/manage.php

    r136 r1331  
    2929$roleid       = optional_param('roleid', -1, PARAM_INT);
    3030$extendperiod = optional_param('extendperiod', 0, PARAM_INT);
    31 $extendbase   = optional_param('extendbase', 3, PARAM_INT);
     31$extendbase   = optional_param('extendbase', 0, PARAM_INT);
    3232
    3333$instance = $DB->get_record('enrol', array('id'=>$enrolid, 'enrol'=>'manual'), '*', MUST_EXIST);
     
    8484    $periodmenu[$seconds] = get_string('numdays', '', $i);
    8585}
    86 // Work out the apropriate default setting.
     86// Work out the apropriate default settings.
    8787if ($extendperiod) {
    8888    $defaultperiod = $extendperiod;
     
    9090    $defaultperiod = $instance->enrolperiod;
    9191}
     92if (empty($extendbase)) {
     93    if (!$extendbase = get_config('enrol_manual', 'enrolstart')) {
     94        // Default to now if there is no system setting.
     95        $extendbase = 4;
     96    }
     97}
    9298
    9399// Build the list of options for the starting from dropdown.
    94 $timeformat = get_string('strftimedatefullshort');
    95 $today = time();
    96 $today = make_timestamp(date('Y', $today), date('m', $today), date('d', $today), 0, 0, 0);
     100$now = time();
     101$today = make_timestamp(date('Y', $now), date('m', $now), date('d', $now), 0, 0, 0);
     102$dateformat = get_string('strftimedatefullshort');
    97103
    98104// Enrolment start.
    99105$basemenu = array();
    100106if ($course->startdate > 0) {
    101     $basemenu[2] = get_string('coursestart') . ' (' . userdate($course->startdate, $timeformat) . ')';
    102 }
    103 $basemenu[3] = get_string('today') . ' (' . userdate($today, $timeformat) . ')' ;
     107    $basemenu[2] = get_string('coursestart') . ' (' . userdate($course->startdate, $dateformat) . ')';
     108}
     109$basemenu[3] = get_string('today') . ' (' . userdate($today, $dateformat) . ')';
     110$basemenu[4] = get_string('now', 'enrol_manual') . ' (' . userdate($now, get_string('strftimedatetimeshort')) . ')';
    104111
    105112// Process add and removes.
     
    111118                case 2:
    112119                    $timestart = $course->startdate;
     120                    break;
     121                case 4:
     122                    // We mimic get_enrolled_sql round(time(), -2) but always floor as we want users to always access their
     123                    // courses once they are enrolled.
     124                    $timestart = intval(substr($now, 0, 8) . '00') - 1;
    113125                    break;
    114126                case 3:
  • moodle/trunk/fuentes/enrol/manual/settings.php

    r136 r1331  
    6767    }
    6868
     69    $options = array(2 => get_string('coursestart'), 3 => get_string('today'), 4 => get_string('now', 'enrol_manual'));
     70    $settings->add(
     71        new admin_setting_configselect('enrol_manual/enrolstart', get_string('defaultstart', 'enrol_manual'), '', 4, $options)
     72    );
     73
    6974    $settings->add(new admin_setting_configduration('enrol_manual/enrolperiod',
    7075        get_string('defaultperiod', 'enrol_manual'), get_string('defaultperiod_desc', 'enrol_manual'), 0));
  • moodle/trunk/fuentes/enrol/manual/tests/externallib_test.php

    r136 r1331  
    115115        }
    116116    }
     117
     118    /**
     119     * Test for unerolling a single user.
     120     * @throws coding_exception
     121     * @throws invalid_parameter_exception
     122     * @throws moodle_exception
     123     */
     124    public function test_unenrol_user_single() {
     125        global $CFG, $DB;
     126        require_once($CFG->libdir . '/enrollib.php');
     127        $this->resetAfterTest(true);
     128        // The user who perform the action.
     129        $user = $this->getDataGenerator()->create_user();
     130        $this->setUser($user); // Log this user in.
     131        $enrol = enrol_get_plugin('manual');
     132        // Create a course.
     133        $course = self::getDataGenerator()->create_course();
     134        $coursecontext = context_course::instance($course->id);
     135        $enrolinstance = $DB->get_record('enrol', array('courseid' => $course->id, 'enrol' => 'manual'), '*', MUST_EXIST);
     136        // Set the capability for the user.
     137        $roleid = $this->assignUserCapability('enrol/manual:enrol', $coursecontext);
     138        $this->assignUserCapability('enrol/manual:unenrol', $coursecontext, $roleid);
     139        $this->assignUserCapability('moodle/course:view', $coursecontext, $roleid);
     140        $this->assignUserCapability('moodle/role:assign', $coursecontext, $roleid);
     141        // Create a student and enrol them into the course.
     142        $student = $this->getDataGenerator()->create_user();
     143        $enrol->enrol_user($enrolinstance, $student->id);
     144        $this->assertTrue(is_enrolled($coursecontext, $student));
     145        // Call the web service to unenrol.
     146        enrol_manual_external::unenrol_users(array(
     147            array('userid' => $student->id, 'courseid' => $course->id),
     148        ));
     149        $this->assertFalse(is_enrolled($coursecontext, $student));
     150    }
     151
     152    /**
     153     * Test for unenrolling multiple users.
     154     * @throws coding_exception
     155     * @throws invalid_parameter_exception
     156     * @throws moodle_exception
     157     */
     158    public function test_unenrol_user_multiple() {
     159        global $CFG, $DB;
     160        require_once($CFG->libdir . '/enrollib.php');
     161        $this->resetAfterTest(true);
     162        // The user who perform the action.
     163        $user = $this->getDataGenerator()->create_user();
     164        $this->setUser($user); // Log this user in.
     165        // Create a course.
     166        $course = self::getDataGenerator()->create_course();
     167        $coursecontext = context_course::instance($course->id);
     168        $enrolinstance = $DB->get_record('enrol', array('courseid' => $course->id, 'enrol' => 'manual'), '*', MUST_EXIST);
     169        // Set the capability for the user.
     170        $roleid = $this->assignUserCapability('enrol/manual:enrol', $coursecontext);
     171        $this->assignUserCapability('enrol/manual:unenrol', $coursecontext, $roleid);
     172        $this->assignUserCapability('moodle/course:view', $coursecontext, $roleid);
     173        $this->assignUserCapability('moodle/role:assign', $coursecontext, $roleid);
     174        $enrol = enrol_get_plugin('manual');
     175        // Create a student and enrol them into the course.
     176        $student1 = $this->getDataGenerator()->create_user();
     177        $enrol->enrol_user($enrolinstance, $student1->id);
     178        $this->assertTrue(is_enrolled($coursecontext, $student1));
     179        $student2 = $this->getDataGenerator()->create_user();
     180        $enrol->enrol_user($enrolinstance, $student2->id);
     181        $this->assertTrue(is_enrolled($coursecontext, $student2));
     182        // Call the web service to unenrol.
     183        enrol_manual_external::unenrol_users(array(
     184            array('userid' => $student1->id, 'courseid' => $course->id),
     185            array('userid' => $student2->id, 'courseid' => $course->id),
     186        ));
     187        $this->assertFalse(is_enrolled($coursecontext, $student1));
     188        $this->assertFalse(is_enrolled($coursecontext, $student2));
     189    }
     190
     191    /**
     192     * Test for unenrol capability.
     193     * @throws coding_exception
     194     * @throws invalid_parameter_exception
     195     * @throws moodle_exception
     196     */
     197    public function test_unenrol_user_error_no_capability() {
     198        global $CFG, $DB;
     199        require_once($CFG->libdir . '/enrollib.php');
     200        $this->resetAfterTest(true);
     201        // The user who perform the action.
     202        $user = $this->getDataGenerator()->create_user();
     203        $this->setUser($user); // Log this user in.
     204        // Create a course.
     205        $course = self::getDataGenerator()->create_course();
     206        $coursecontext = context_course::instance($course->id);
     207        $enrolinstance = $DB->get_record('enrol', array('courseid' => $course->id, 'enrol' => 'manual'), '*', MUST_EXIST);
     208        $enrol = enrol_get_plugin('manual');
     209        // Create a student and enrol them into the course.
     210        $student = $this->getDataGenerator()->create_user();
     211        $enrol->enrol_user($enrolinstance, $student->id);
     212        $this->assertTrue(is_enrolled($coursecontext, $student));
     213        // Call the web service to unenrol.
     214        try {
     215            enrol_manual_external::unenrol_users(array(
     216                array('userid' => $student->id, 'courseid' => $course->id),
     217            ));
     218            $this->fail('Exception expected: User cannot log in to the course');
     219        } catch (Exception $ex) {
     220            $this->assertTrue($ex instanceof require_login_exception);
     221        }
     222        // Set the capability for the course, then try again.
     223        $roleid = $this->assignUserCapability('moodle/course:view', $coursecontext);
     224        try {
     225            enrol_manual_external::unenrol_users(array(
     226                array('userid' => $student->id, 'courseid' => $course->id),
     227            ));
     228            $this->fail('Exception expected: User cannot log in to the course');
     229        } catch (Exception $ex) {
     230            $this->assertTrue($ex instanceof required_capability_exception);
     231        }
     232        // Assign unenrol capability.
     233        $this->assignUserCapability('enrol/manual:unenrol', $coursecontext, $roleid);
     234        enrol_manual_external::unenrol_users(array(
     235            array('userid' => $student->id, 'courseid' => $course->id),
     236        ));
     237        $this->assertFalse(is_enrolled($coursecontext, $student));
     238    }
     239
     240    /**
     241     * Test for unenrol if user does not exist.
     242     * @throws coding_exception
     243     */
     244    public function test_unenrol_user_error_not_exist() {
     245        global $CFG, $DB;
     246        require_once($CFG->libdir . '/enrollib.php');
     247        $this->resetAfterTest(true);
     248        // The user who perform the action.
     249        $user = $this->getDataGenerator()->create_user();
     250        $this->setUser($user); // Log this user in.
     251        $enrol = enrol_get_plugin('manual');
     252        // Create a course.
     253        $course = self::getDataGenerator()->create_course();
     254        $coursecontext = context_course::instance($course->id);
     255        $enrolinstance = $DB->get_record('enrol', array('courseid' => $course->id, 'enrol' => 'manual'), '*', MUST_EXIST);
     256        // Set the capability for the user.
     257        $roleid = $this->assignUserCapability('enrol/manual:enrol', $coursecontext);
     258        $this->assignUserCapability('enrol/manual:unenrol', $coursecontext, $roleid);
     259        $this->assignUserCapability('moodle/course:view', $coursecontext, $roleid);
     260        $this->assignUserCapability('moodle/role:assign', $coursecontext, $roleid);
     261        // Create a student and enrol them into the course.
     262        $student = $this->getDataGenerator()->create_user();
     263        $enrol->enrol_user($enrolinstance, $student->id);
     264        $this->assertTrue(is_enrolled($coursecontext, $student));
     265        try {
     266            enrol_manual_external::unenrol_users(array(
     267                array('userid' => $student->id + 1, 'courseid' => $course->id),
     268            ));
     269            $this->fail('Exception expected: invalid student id');
     270        } catch (Exception $ex) {
     271            $this->assertTrue($ex instanceof invalid_parameter_exception);
     272        }
     273        $DB->delete_records('enrol', array('id' => $enrolinstance->id));
     274        try {
     275            enrol_manual_external::unenrol_users(array(
     276                array('userid' => $student->id + 1, 'courseid' => $course->id),
     277            ));
     278            $this->fail('Exception expected: invalid student id');
     279        } catch (Exception $ex) {
     280            $this->assertTrue($ex instanceof moodle_exception);
     281        }
     282    }
    117283}
  • moodle/trunk/fuentes/enrol/manual/version.php

    r136 r1331  
    2525defined('MOODLE_INTERNAL') || die();
    2626
    27 $plugin->version   = 2014111000;        // The current plugin version (Date: YYYYMMDDXX)
    28 $plugin->requires  = 2014110400;        // Requires this Moodle version
     27$plugin->version   = 2015111600;        // The current plugin version (Date: YYYYMMDDXX)
     28$plugin->requires  = 2015111000;        // Requires this Moodle version
    2929$plugin->component = 'enrol_manual';    // Full name of the plugin (used for diagnostics)
    3030$plugin->cron      = 600;
  • moodle/trunk/fuentes/enrol/manual/yui/quickenrolment/quickenrolment.js

    r136 r1331  
    9090            if (this.get(UEP.DISABLEGRADEHISTORY) != true) {
    9191                recovergrades = create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.RECOVERGRADES+'"></div>')
    92                     .append(create('<label class="'+CSS.RECOVERGRADESTITLE+'" for="'+CSS.RECOVERGRADES+'">'+M.str.enrol.recovergrades+'</label>'))
     92                    .append(create('<label class="'+CSS.RECOVERGRADESTITLE+'" for="'+CSS.RECOVERGRADES+'">'+M.util.get_string('recovergrades', 'enrol')+'</label>'))
    9393                    .append(create('<input type="checkbox" id="'+CSS.RECOVERGRADES+'" name="'+CSS.RECOVERGRADES+'"'+ this.get(UEP.RECOVERGRADESDEFAULT) +' />'))
    9494            }
     
    9898                    .append(create('<div class="'+CSS.HEADER+' header"></div>')
    9999                        .append(create('<div class="'+CSS.CLOSE+'"></div>'))
    100                         .append(create('<h2>'+M.str.enrol.enrolusers+'</h2>')))
     100                        .append(create('<h2>'+M.util.get_string('enrolusers', 'enrol')+'</h2>')))
    101101                    .append(create('<div class="'+CSS.CONTENT+'"></div>')
    102102                        .append(create('<div class="'+CSS.SEARCHCONTROLS+'"></div>')
    103                             .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.ROLE+'"><label for="id_enrol_manual_assignable_roles">'+M.str.role.assignroles+'</label></div>')
    104                                     .append(create('<select id="id_enrol_manual_assignable_roles"><option value="">'+M.str.enrol.none+'</option></select>'))
     103                            .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.ROLE+'"><label for="id_enrol_manual_assignable_roles">'+M.util.get_string('assignroles', 'role')+'</label></div>')
     104                                    .append(create('<select id="id_enrol_manual_assignable_roles"><option value="">'+M.util.get_string('none', 'enrol')+'</option></select>'))
    105105                            )
    106106                            .append(create('<div class="'+CSS.ENTITYSELECTOR+'"></div>'))
    107107                            .append(create('<div class="'+CSS.SEARCHOPTIONS+'"></div>')
    108                                 .append(create('<div class="'+CSS.COLLAPSIBLEHEADING+'"><img alt="" />'+M.str.enrol.enrolmentoptions+'</div>'))
     108                                .append(create('<div class="'+CSS.COLLAPSIBLEHEADING+'"><img alt="" />'+M.util.get_string('enrolmentoptions', 'enrol')+'</div>'))
    109109                                .append(create('<div class="'+CSS.COLLAPSIBLEAREA+' '+CSS.HIDDEN+'"></div>')
    110110                                    .append(recovergrades)
    111                                     .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.STARTDATE+'">'+M.str.moodle.startingfrom+'</div>')
     111                                    .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.STARTDATE+'">'+M.util.get_string('startingfrom', 'moodle')+'</div>')
    112112                                        .append(create('<select></select>')))
    113                                     .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.DURATION+'">'+M.str.enrol.enrolperiod+'</div>')
    114                                         .append(create('<select><option value="0" selected="selected">'+M.str.enrol.unlimitedduration+'</option></select>')))
     113                                    .append(create('<div class="'+CSS.ENROLMENTOPTION+' '+CSS.DURATION+'">'+M.util.get_string('enrolperiod', 'enrol')+'</div>')
     114                                        .append(create('<select><option value="0" selected="selected">'+M.util.get_string('unlimitedduration', 'enrol')+'</option></select>')))
    115115                                )
    116116                            )
     
    122122                            .setStyle('opacity', 0.5)))
    123123                    .append(create('<div class="'+CSS.FOOTER+'"></div>')
    124                         .append(create('<div class="'+CSS.SEARCH+'"><label for="enrolusersearch" class="accesshide">'+M.str.enrol.usersearch+'</label></div>')
     124                        .append(create('<div class="'+CSS.SEARCH+'"><label for="enrolusersearch" class="accesshide">'+M.util.get_string('usersearch', 'enrol')+'</label></div>')
    125125                            .append(create('<input type="text" id="enrolusersearch" value="" />'))
    126                                 .append(create('<input type="button" id="searchbtn" class="'+CSS.SEARCHBTN+'" value="'+M.str.enrol.usersearch+'" />'))
     126                                .append(create('<input type="button" id="searchbtn" class="'+CSS.SEARCHBTN+'" value="'+M.util.get_string('usersearch', 'enrol')+'" />'))
    127127                        )
    128128                        .append(create('<div class="'+CSS.CLOSEBTN+'"></div>')
    129                             .append(create('<input type="button" value="'+M.str.enrol.finishenrollingusers+'" />'))
     129                            .append(create('<input type="button" value="'+M.util.get_string('finishenrollingusers', 'enrol')+'" />'))
    130130                        )
    131131                    )
     
    153153                this.get(UEP.BASE).one('.'+CSS.ENTITYSELECTOR)
    154154                    .append(create('<input type="radio" id="id_enrol_manual_entity_users" name="enrol_manual_entity" value="users" checked="checked"/>'))
    155                     .append(create('<label for="id_enrol_manual_entity_users">'+ M.str.enrol_manual.browseusers+'</label>'))
     155                    .append(create('<label for="id_enrol_manual_entity_users">'+ M.util.get_string('browseusers', 'enrol_manual')+'</label>'))
    156156                    .append(create('<input type="radio" id="id_enrol_manual_entity_cohorts" name="enrol_manual_entity" value="cohorts"/>'))
    157                     .append(create('<label for="id_enrol_manual_entity_cohorts">'+M.str.enrol_manual.browsecohorts+'</label>'));
     157                    .append(create('<label for="id_enrol_manual_entity_cohorts">'+M.util.get_string('browsecohorts', 'enrol_manual')+'</label>'));
    158158                this.get(UEP.BASE).one('#id_enrol_manual_entity_cohorts').on('change', this.search, this);
    159159                this.get(UEP.BASE).one('#id_enrol_manual_entity_users').on('change', this.search, this);
     
    216216            var index = 0, count = 0;
    217217            for (var i in options) {
    218                 count++;
    219218                var option = create('<option value="'+i+'">'+options[i]+'</option>');
    220219                if (i == defaultvalue) {
     
    222221                }
    223222                select.append(option);
     223                count++;
    224224            }
    225225            select.set('selectedIndex', index);
     
    262262        },
    263263        preSearch : function(e) {
    264             this.search(null, false);
     264            this.search(e, false);
    265265            /*
    266266            var value = this.get(UEP.SEARCH).get('value');
     
    292292            }
    293293            base.setXY([x,y]);
     294            var zindex = 0;
     295            Y.all('.moodle-has-zindex').each(function() {
     296                if (parseInt(this.getComputedStyle('zIndex'), 10) > zindex) {
     297                    zindex = parseInt(this.getComputedStyle('zIndex'), 10);
     298                }
     299            });
     300            base.setStyle('zIndex', zindex + 1);
    294301
    295302            if (this.get(UEP.USERS)===null) {
     
    381388            }
    382389            if (!result.success) {
    383                 this.setContent = M.str.enrol.errajaxsearch;
     390                this.setContent = M.util.get_string('errajaxsearch', 'enrol');
    384391            }
    385392            var users;
     
    402409                        .append(create('<div class="'+CSS.EXTRAFIELDS+'">'+user.extrafields+'</div>')))
    403410                    .append(create('<div class="'+CSS.OPTIONS+'"></div>')
    404                         .append(create('<input type="button" class="'+CSS.ENROL+'" value="'+M.str.enrol.enrol+'" />')))
     411                        .append(create('<input type="button" class="'+CSS.ENROL+'" value="'+M.util.get_string('enrol', 'enrol')+'" />')))
    405412                );
    406413            }
    407414            this.set(UEP.USERCOUNT, count);
    408415            if (!args.append) {
    409                 var usersstr = (result.response.totalusers == '1')?M.str.enrol.ajaxoneuserfound:M.util.get_string('ajaxxusersfound','enrol', result.response.totalusers);
     416                var usersstr = (result.response.totalusers == '1')?M.util.get_string('ajaxoneuserfound', 'enrol'):M.util.get_string('ajaxxusersfound','enrol', result.response.totalusers);
    410417                var content = create('<div class="'+CSS.SEARCHRESULTS+'"></div>')
    411418                    .append(create('<div class="'+CSS.TOTALUSERS+'">'+usersstr+'</div>'))
    412419                    .append(users);
    413420                if (result.response.totalusers > (this.get(UEP.PAGE)+1)*this.get(UEP.PERPAGE)) {
    414                     var fetchmore = create('<div class="'+CSS.MORERESULTS+'"><a href="#">'+M.str.enrol.ajaxnext25+'</a></div>');
     421                    var fetchmore = create('<div class="'+CSS.MORERESULTS+'"><a href="#">'+M.util.get_string('ajaxnext25', 'enrol')+'</a></div>');
    415422                    fetchmore.on('click', this.search, this, true);
    416423                    content.append(fetchmore)
     
    434441            }
    435442            if (!result.success) {
    436                 this.setContent = M.str.enrol.errajaxsearch;
     443                this.setContent = M.util.get_string('errajaxsearch', 'enrol');
    437444            }
    438445            var cohorts;
     
    452459                        .append(create('<div class="'+CSS.COHORTNAME+'">'+cohort.name+'</div>')))
    453460                    .append(create('<div class="'+CSS.OPTIONS+'"></div>')
    454                         .append(create('<input type="button" class="'+CSS.ENROL+'" value="'+'Enrol '+cohort.cnt+' users'+'" />'))) // TODO string
     461                        .append(create('<input type="button" class="' + CSS.ENROL + '" value="' + M.util.get_string('enrolxusers', 'enrol', cohort.cnt) + '" />')))
    455462                );
    456463            }
    457464            this.set(UEP.COHORTCOUNT, count);
    458465            if (!args.append) {
    459                 //var usersstr = (result.response.totalusers == '1')?M.str.enrol.ajaxoneuserfound:M.util.get_string('ajaxxusersfound','enrol', result.response.totalusers);
    460                 var cohortsstr = 'Found '+result.response.totalcohorts+' cohorts'; // TODO
     466                //var usersstr = (result.response.totalusers == '1')?M.util.get_string('ajaxoneuserfound', 'enrol'):M.util.get_string('ajaxxusersfound','enrol', result.response.totalusers);
     467                var cohortsstr = M.util.get_string('foundxcohorts', 'enrol', result.response.totalcohorts);
    461468                var content = create('<div class="'+CSS.SEARCHRESULTS+'"></div>')
    462469                    .append(create('<div class="'+CSS.TOTALCOHORTS+'">'+cohortsstr+'</div>'))
    463470                    .append(cohorts);
    464471                if (result.response.totalcohorts > (this.get(UEP.PAGE)+1)*this.get(UEP.PERPAGE)) {
    465                     var fetchmore = create('<div class="'+CSS.MORERESULTS+'"><a href="#">'+M.str.enrol.ajaxnext25+'</a></div>');
     472                    var fetchmore = create('<div class="'+CSS.MORERESULTS+'"><a href="#">'+M.util.get_string('ajaxnext25', 'enrol')+'</a></div>');
    466473                    fetchmore.on('click', this.search, this, true);
    467474                    content.append(fetchmore)
     
    609616            },
    610617            defaultStartDate : {
    611                 value : 2,
     618                value : 4,
    612619                validator : Y.Lang.isNumber
    613620            },
Note: See TracChangeset for help on using the changeset viewer.