public function definition()
 {
     global $CFG, $DB, $OUTPUT;
     $mform =& $this->_form;
     $company = new company($this->selectedcompany);
     $mform->addElement('header', 'header', get_string('managecoursesdepttitle', 'local_manage_company_dept_title'));
     $departmentslist = company_department::get_department_list($company->id);
     $titlelist = company_title::get_title_list($company->id);
     if (!$departmentslist) {
         // redirect(new moodle_url('/local/manage_company_dept_title/manage_dept.php'), get_string('nodepartmentfound', 'local_manage_company_dept_title'));
         echo $OUTPUT->box(get_string('nodepartmentfound', 'local_manage_company_dept_title'));
         echo $OUTPUT->footer();
         die;
     }
     if (!$titlelist) {
         //redirect(new moodle_url('/local/manage_company_dept_title/manage_dept.php'), get_string('notitlefound', 'local_manage_company_dept_title'));
         echo $OUTPUT->box(get_string('notitlefound', 'local_manage_company_dept_title'));
         echo $OUTPUT->footer();
         die;
     }
     $mform->addElement('hidden', 'course', $this->course);
     $mform->addElement('hidden', 'companyid', $this->selectedcompany);
     $mform->setType('companyid', PARAM_INT);
     $mform->setType('course', PARAM_INT);
     $mform->addElement('select', 'department', get_string('departments', 'local_manage_company_dept_title'), $departmentslist);
     $mform->addElement('select', 'title', get_string('titles', 'local_manage_company_dept_title'), $titlelist);
     $this->add_action_buttons(true, get_string('add', 'local_manage_company_dept_title'));
 }
 public function definition()
 {
     global $CFG, $DB;
     $mform =& $this->_form;
     $company = new company($this->selectedcompany);
     $mform->addElement('header', 'header', get_string('managecoursesdepttitle', 'local_manage_company_dept_title'));
     $departmentslist = company_department::get_department_list($company->id);
     $titlelist = company_title::get_title_list($company->id);
     if (!$departmentslist) {
         redirect(new moodle_url('/local/manage_company_dept_title/manage_dept.php'), get_string('nodepartmentfound', 'local_manage_company_dept_title'));
     }
     if (!$titlelist) {
         redirect(new moodle_url('/local/manage_company_dept_title/manage_dept.php'), get_string('notitlefound', 'local_manage_company_dept_title'));
     }
     $mform->addElement('select', 'department', get_string('departments', 'local_manage_company_dept_title'), $departmentslist);
     $mform->addElement('select', 'title', get_string('titles', 'local_manage_company_dept_title'), $titlelist);
     $this->add_action_buttons(false, get_string('showcourses', 'local_manage_company_dept_title'));
 }
 public function definition()
 {
     global $CFG, $DB;
     $mform =& $this->_form;
     // Then show the fields about where this block appears.
     $mform->addElement('header', 'header', get_string('companyuser', 'block_iomad_company_admin'));
     $mform->addElement('hidden', 'companyid', $this->selectedcompany);
     $mform->setType('companyid', PARAM_INT);
     // Code added by sumit
     $mform->addElement('hidden', 'returnurl', $this->returnurl);
     $mform->setType('returnurl', PARAM_LOCALURL);
     // end of code
     /* copied from /user/editlib.php */
     $strrequired = get_string('required');
     $mform->addElement('hidden', 'id', $this->userid);
     $mform->setType('id', PARAM_INT);
     // Deal with the name order sorting and required fields.
     $necessarynames = useredit_get_required_name_fields();
     foreach ($necessarynames as $necessaryname) {
         $mform->addElement('text', $necessaryname, get_string($necessaryname), 'maxlength="100" size="30"');
         $mform->addRule($necessaryname, $strrequired, 'required', null, 'client');
         $mform->setType($necessaryname, PARAM_NOTAGS);
     }
     // Do not show email field if change confirmation is pending.
     if (!empty($CFG->emailchangeconfirmation) and !empty($user->preference_newemail)) {
         $notice = get_string('auth_emailchangepending', 'auth_email', $user);
         $notice .= '<br /><a href="edit.php?cancelemailchange=1&amp;id=' . $user->id . '">' . get_string('auth_emailchangecancel', 'auth_email') . '</a>';
         $mform->addElement('static', 'emailpending', get_string('email'), $notice);
     } else {
         $mform->addElement('text', 'email', get_string('email'), 'maxlength="100" size="30"');
         $mform->addRule('email', $strrequired, 'required', null, 'client');
         $mform->setType('email', PARAM_EMAIL);
     }
     /* GWL : Add Field for Username while edit the user */
     $mform->addElement('text', 'username', get_string('phone'), 'size="20"');
     // GWL : Change get_string('username') to 'phone'
     $mform->addRule('username', $strrequired, 'required', null, 'client');
     $mform->setType('username', PARAM_RAW);
     /* GWL : Add Field for Username while edit the user  */
     /* /copied from /user/editlib.php */
     $mform->addElement('static', 'blankline', '', '');
     if (!empty($CFG->passwordpolicy)) {
         $mform->addElement('static', 'passwordpolicyinfo', '', print_password_policy());
     }
     $mform->addElement('passwordunmask', 'newpassword', get_string('newpassword'), 'size="20"');
     $mform->addHelpButton('newpassword', 'newpassword');
     $mform->setType('newpassword', PARAM_RAW);
     $mform->addElement('static', 'generatepassword', '', get_string('leavepasswordemptytogenerate', 'block_iomad_company_admin'));
     $mform->addElement('advcheckbox', 'preference_auth_forcepasswordchange', get_string('forcepasswordchange'));
     $mform->addHelpButton('preference_auth_forcepasswordchange', 'forcepasswordchange');
     // $mform->setDefault('preference_auth_forcepasswordchange', 1);
     $mform->addElement('selectyesno', 'sendnewpasswordemails', get_string('sendnewpasswordemails', 'block_iomad_company_admin'));
     $mform->setDefault('sendnewpasswordemails', 1);
     $mform->disabledIf('sendnewpasswordemails', 'newpassword', 'eq', '');
     // Deal with company optional fields.
     $mform->addElement('header', 'category_id', format_string(get_string('companyprofilefields', 'block_iomad_company_admin')));
     // Department drop down.
     // $mform->addElement('select', 'userdepartment', get_string('department', 'block_iomad_company_admin'), $this->subhierarchieslist, $this->userdepartment);
     // Add in company/department manager checkboxes.
     $departmentlist = company_department::get_department_list($this->selectedcompany);
     $titlelist = company_title::get_title_list($this->selectedcompany);
     if ($departmentlist) {
         $mform->addElement('select', 'userdepartment', get_string('department', 'block_iomad_company_admin'), $departmentlist);
     }
     if ($titlelist) {
         $mform->addElement('select', 'usertitle', get_string('title', 'local_manage_company_dept_title'), $titlelist);
     }
     $managerarray = array();
     if (iomad::has_capability('block/iomad_company_admin:assign_department_manager', context_system::instance())) {
         $managerarray['0'] = get_string('user', 'block_iomad_company_admin');
         $managerarray['2'] = get_string('regionlocationmanager', 'block_iomad_company_admin');
     }
     if (iomad::has_capability('block/iomad_company_admin:assign_company_manager', context_system::instance())) {
         if (empty($managearray)) {
             $managerarray['0'] = get_string('user', 'block_iomad_company_admin');
         }
         $managerarray['1'] = get_string('companymanager', 'block_iomad_company_admin');
         $managerarray['3'] = get_string('companyinstructor', 'block_iomad_company_admin');
         //GWL : Add Instructor
     }
     if (!empty($managerarray)) {
         $mform->addElement('select', 'managertype', get_string('managertype', 'block_iomad_company_admin'), $managerarray, 0);
         $mform->addHelpButton('managertype', 'managertype', 'block_iomad_company_admin');
     } else {
         $mform->addElement('hidden', 'managertype', 0);
     }
     // get region list
     $regionslistobj = company::get_all_regions($this->selectedcompany);
     $regionlist = array('' => get_string('regionnotselect', 'block_iomad_company_admin'));
     foreach ($regionslistobj as $region) {
         $regionlist[$region->id] = $region->name;
     }
     // Code added by sumit display region and location drop downs list
     $locationlist = array('' => get_string('choose'));
     if (!empty($this->regionid)) {
         $locationlistarr = company::get_all_locations($this->regionid);
         foreach ($locationlistarr as $location) {
             $locationlist[$location->id] = $location->name;
         }
     }
     $mform->addElement('select', 'userregion', get_string('region', 'block_iomad_company_admin'), $regionlist, array('class' => 'companyregion'));
     $mform->addElement('select', 'userlocation', get_string('location', 'block_iomad_company_admin'), $locationlist, array('id' => 'id_locationid'));
     $mform->disabledIf('userregion', 'managertype', 'eq', 1);
     $mform->disabledIf('userlocation', 'managertype', 'eq', 1);
     $mform->disabledIf('userregion', 'managertype', 'eq', 3);
     //GWL : Add Instructor
     $mform->disabledIf('userlocation', 'managertype', 'eq', 3);
     //GWL : Add Instructor
     // End of Code
     // Get global fields.
     // Get company category.
     if ($companyinfo = $DB->get_record('company', array('id' => $this->selectedcompany))) {
         // Get fields from company category.
         if ($fields = $DB->get_records('user_info_field', array('categoryid' => $companyinfo->profileid))) {
             // Display the header and the fields.
             foreach ($fields as $field) {
                 require_once $CFG->dirroot . '/user/profile/field/' . $field->datatype . '/field.class.php';
                 $newfield = 'profile_field_' . $field->datatype;
                 $formfield = new $newfield($field->id);
                 $formfield->edit_field($mform);
                 $mform->setDefault($formfield->inputname, $formfield->field->defaultdata);
             }
         }
     }
     /*
      $mform->addElement('header', 'courses', get_string('courses', 'block_iomad_company_admin'));
      $mform->addElement('html', "<div class='fitem'><div class='fitemtitle'>" .
      get_string('selectenrolmentcourse', 'block_iomad_company_admin') .
      "</div><div class='felement'>");
      $mform->addElement('html', $this->currentcourses->display(true));
      $mform->addElement('html', "</div></div>");
     */
     // add action buttons
     $buttonarray = array();
     //$buttonarray[] = &$mform->createElement('submit', 'submitbutton', get_string('createuseragain', 'block_iomad_company_admin'));
     $buttonarray[] =& $mform->createElement('submit', 'submitandback', get_string('createuserandback', 'block_iomad_company_admin'));
     $buttonarray[] =& $mform->createElement('cancel');
     $mform->addGroup($buttonarray, 'buttonar', '', array(' '), false);
     $mform->closeHeaderBefore('buttonar');
 }
예제 #4
0
function assign_department_and_title_to_user($companyid, $departmentid = 0, $titleid = 0, $userid)
{
    global $DB;
    $transaction = $DB->start_delegated_transaction();
    if ($departmentid && !company_department::check_valid_department($companyid, $departmentid)) {
        print_error('Invaliddeparment', 'block_iomad_company_admin');
    }
    if ($titleid && !company_title::check_valid_title($companyid, $titleid)) {
        print_error('Invaliddeparment', 'block_iomad_company_admin');
    }
    $userrecord = array();
    $userrecord['department'] = $departmentid;
    $userrecord['user'] = $userid;
    $userrecord['company'] = $companyid;
    $userrecord['title'] = $titleid;
    if ($currentuser = $DB->get_record('local_dept_title_user', array('user' => $userid, 'company' => $companyid))) {
        remove_user_mapping_from_department_title($currentuser->department, $currentuser->title, $companyid, $userid);
        $userrecord['id'] = $currentuser->id;
        if (!$DB->update_record('local_dept_title_user', $userrecord)) {
            print_error(get_string('cantupdatedepartmentusersdb', 'block_iomad_company_admin'));
        }
        if ($coursesobj = get_department_title_courses($companyid, $departmentid, $titleid)) {
            $courses = array();
            foreach ($coursesobj as $deptcourseobj) {
                $courses[] = $deptcourseobj->course;
            }
            assign_courses_to_user($departmentid, $titleid, $companyid, $courses, $userid);
        }
        //return true;
    } else {
        if ($DB->insert_record('local_dept_title_user', $userrecord)) {
            if ($coursesobj = get_department_title_courses($companyid, $departmentid, $titleid)) {
                $courses = array();
                foreach ($coursesobj as $deptcourseobj) {
                    $courses[] = $deptcourseobj->course;
                }
                assign_courses_to_user($departmentid, $titleid, $companyid, $courses, $userid);
            }
        }
    }
    $transaction->allow_commit();
}
예제 #5
0
 public function definition()
 {
     global $CFG;
     $mform =& $this->_form;
     $company = new company($this->selectedcompany);
     $title = company_title::get_titlebyid($this->deptid);
     // Then show the fields about where this block appears.
     if ($this->action == 0) {
         $mform->addElement('header', 'header', get_string('createtitle', 'local_manage_company_dept_title'));
     } else {
         $mform->addElement('header', 'header', get_string('edittitles', 'local_manage_company_dept_title'));
     }
     $mform->addElement('hidden', 'companyid', $this->selectedcompany);
     $mform->setType('companyid', PARAM_INT);
     $mform->addElement('hidden', 'titleid', $this->deptid);
     $mform->setType('titleid', PARAM_INT);
     $mform->addElement('hidden', 'action', $this->action);
     $mform->setType('action', PARAM_INT);
     //$mform->addElement('select', 'deptid', get_string('title', 'block_iomad_company_admin'), $titleslist);
     //$mform->disabledIf('deptid', 'action', 'eq', 1);
     $mform->addElement('text', 'fullname', get_string('fullnametitle', 'local_manage_company_dept_title'), 'maxlength = "254" size = "50"');
     $mform->addHelpButton('fullname', 'fullnametitle', 'local_manage_company_dept_title');
     $mform->addRule('fullname', get_string('missingfullnametitle', 'local_manage_company_dept_title'), 'required', null, 'client');
     $mform->setType('fullname', PARAM_MULTILANG);
     $mform->addElement('text', 'shortname', get_string('shortnametitle', 'local_manage_company_dept_title'), 'maxlength = "100" size = "20"');
     $mform->addHelpButton('shortname', 'shortnametitle', 'local_manage_company_dept_title');
     $mform->addRule('shortname', get_string('missingshortnametitle', 'local_manage_company_dept_title'), 'required', null, 'client');
     $mform->setType('shortname', PARAM_MULTILANG);
     /* if ($this->deptid) {
        echo "ggh";
        $mform->addElement('hidden', 'chosenid', $this->deptid);
        } else {
        $mform->addElement('hidden', 'chosenid', 0);
        } */
     //$mform->setType('chosenid', PARAM_INT);
     $this->add_action_buttons();
 }