| [ Index ] |
PHP Cross Reference of Moodle 1.9.3 [Build 15-Oct-2008] |
[Summary view] [Print] [Text view]
1 <?php 2 3 /* 4 * Created on 12/12/2006 5 * 6 * MNET enrol allowed courses and categories form 7 */ 8 9 require_once dirname(dirname(dirname(__FILE__))) . '/config.php'; 10 require_once $CFG->libdir . '/adminlib.php'; 11 include_once $CFG->dirroot . '/mnet/lib.php'; 12 13 14 admin_externalpage_setup('ssoaccesscontrol'); 15 admin_externalpage_print_header(); 16 17 $addcategory = optional_param('addcategory', 0, PARAM_BOOL); 18 $removecategory = optional_param('removecategory', 0, PARAM_BOOL); 19 $addcourse = optional_param('addcourse', 0, PARAM_BOOL); 20 $removecourse = optional_param('removecourse', 0, PARAM_BOOL); 21 22 $sitecontext = get_context_instance(CONTEXT_SYSTEM); 23 $sesskey = sesskey(); 24 $formerror = array(); 25 26 require_capability('moodle/user:delete', $sitecontext); 27 28 // process returned form data 29 if ($form = data_submitted() and confirm_sesskey()) { 30 31 // add and remove categories as needed 32 if (!empty($CFG->enrol_mnet_allowed_categories)) { 33 $allowedcategories = explode(',', $CFG->enrol_mnet_allowed_categories); 34 } 35 if ($addcategory and !empty($form->addcategories)) { 36 foreach ($form->addcategories as $category) { 37 if (!$category = clean_param($category, PARAM_INT)) { 38 continue; 39 } 40 $allowedcategories[] = $category; 41 } 42 } 43 if ($removecategory and !empty($form->removecategories)) { 44 foreach ($form->removecategories as $category) { 45 if ($category = clean_param($category, PARAM_INT)) { 46 $removedcategories[] = $category; 47 } 48 } 49 $allowedcategories = array_diff($allowedcategories, $removedcategories); 50 } 51 52 // add and remove courses as needed 53 if (!empty($CFG->enrol_mnet_allowed_courses)) { 54 $allowedcourses = explode(',', $CFG->enrol_mnet_allowed_courses); 55 } 56 if ($addcourse and !empty($form->addcourses)) { 57 foreach ($form->addcourses as $course) { 58 if ($course = clean_param($course, PARAM_INT)) { 59 $allowedcourses[] = $course; 60 } 61 } 62 } 63 if ($removecourse and !empty($form->removecourses)) { 64 foreach ($form->removecourses as $course) { 65 if (!$course = clean_param($course, PARAM_INT)) { 66 continue; 67 } 68 $removedcourses[] = $course; 69 } 70 $allowedcourses = array_diff($allowedcourses, $removedcourses); 71 } 72 73 // save config 74 $cfg = empty($allowedcategories) ? '' : implode(',', $allowedcategories); 75 set_config('enrol_mnet_allowed_categories', $cfg); 76 $cfg = empty($allowedcourses) ? '' : implode(',', $allowedcourses); 77 set_config('enrol_mnet_allowed_courses', $cfg); 78 79 // redirect('allowed_courses.php', get_string('changessaved')); 80 } 81 82 83 84 // setup arrays for allowed categories and courses 85 $categories = array(); 86 if ($categories = get_records('course_categories', '', '', 'name', 'id, name')) { 87 $allowedcategories = array(); 88 if (empty($CFG->enrol_mnet_allowed_categories)) { 89 $potentialcategories = $categories; 90 } else { 91 $potentialcategories = array(); 92 $explode_categories = explode(',', $CFG->enrol_mnet_allowed_categories); 93 foreach($categories as $category) { 94 if (in_array($category->id, $explode_categories)) { 95 $allowedcategories[] = $category; 96 } else { 97 $potentialcategories[] = $category; 98 } 99 } 100 } 101 } 102 $courses = array(); 103 if ($courses = get_records('course', '', '', 'shortname', 'id, shortname')) { 104 unset($courses[SITEID]); // never list or offer the siteid 105 $allowedcourses = array(); 106 if (empty($CFG->enrol_mnet_allowed_courses)) { 107 $potentialcourses = $courses; 108 } else { 109 $potentialcourses = array(); 110 $explode_courses = explode(',', $CFG->enrol_mnet_allowed_courses); 111 foreach($courses as $course) { 112 if (in_array($course->id, $explode_courses)) { 113 $allowedcourses[] = $course; 114 } else { 115 $potentialcourses[] = $course; 116 } 117 } 118 } 119 } 120 121 122 123 // output the form 124 print_simple_box_start('center','90%','','20'); 125 126 ?> 127 <div class="allowedcoursesdiv"> 128 <form id="allowedcoursesform" method="post"> 129 <input type="hidden" name="sesskey" value="<?php echo $sesskey; ?>" /> 130 <?php 131 132 // display course category selector 133 if (count($categories) < 1) { 134 echo get_string('nocategoriesdefined', 'enrol_mnet', "$CFG->wwwroot/course/index.php?categoryedit=on"); 135 } else { 136 137 ?> 138 <table align="center" border="0" cellpadding="5" cellspacing="0"> 139 <tr> 140 <td valign="top"> 141 <?php print_string('allowedcategories', 'enrol_mnet', count($allowedcategories)); ?> 142 </td> 143 <td></td> 144 <td valign="top"> 145 <?php print_string('allcategories', 'enrol_mnet', count($potentialcategories)); ?> 146 </td> 147 </tr> 148 149 <tr> 150 <td valign="top"> 151 <select name="removecategories[]" size="20" id="removecategories" multiple="multiple" 152 onfocus="getElementById('allowedcoursesform').addcategory.disabled=true; 153 getElementById('allowedcoursesform').removecategory.disabled=false; 154 getElementById('allowedcoursesform').addcategories.selectedIndex=-1;" > 155 <?php 156 foreach ($allowedcategories as $category) { 157 echo "<option value=\"$category->id\"> " . format_string($category->name) . " </option>\n"; 158 } 159 ?> 160 </select> 161 </td> 162 163 <td valign="top"> 164 <br /> 165 <input name="addcategory" type="submit" id="add" value="←" /> 166 <br /> 167 <input name="removecategory" type="submit" id="remove" value="→" /> 168 <br /> 169 </td> 170 171 <td valign="top"> 172 <select name="addcategories[]" size="20" id="addcategories" multiple="multiple" 173 onFocus="getElementById('allowedcoursesform').addcategory.disabled=false; 174 getElementById('allowedcoursesform').removecategory.disabled=true; 175 getElementById('allowedcoursesform').removecategories.selectedIndex=-1;"> 176 <?php 177 foreach ($potentialcategories as $category) { 178 echo "<option value=\"$category->id\"> " . format_string($category->name) . " </option>\n"; 179 } 180 ?> 181 </select> 182 </td> 183 </tr> 184 </table> 185 <?php 186 187 } 188 189 // display course selector 190 if (count($courses) < 1) { 191 echo get_string('nocoursesdefined', 'enrol_mnet', "TODO: $course_admin_url"); // TODO 192 } else { 193 194 ?> 195 <table align="center" border="0" cellpadding="5" cellspacing="0"> 196 <tr> 197 <td valign="top"> 198 <?php print_string('allowedcourses', 'enrol_mnet', count($allowedcourses)); ?> 199 </td> 200 <td></td> 201 <td valign="top"> 202 <?php print_string('allcourses', 'enrol_mnet', count($potentialcourses)); ?> 203 </td> 204 </tr> 205 206 <tr> 207 <td valign="top"> 208 <select name="removecourses[]" size="20" id="removecourses" multiple="multiple" 209 onFocus="getElementById('allowedcoursesform').addcourse.disabled=true; 210 getElementById('allowedcoursesform').removecourse.disabled=false; 211 getElementById('allowedcoursesform').addcourses.selectedIndex=-1;"> 212 <?php 213 foreach ($allowedcourses as $course) { 214 echo "<option value=\"$course->id\"> " . format_string($course->shortname) . " </option>\n"; 215 } 216 ?> 217 </select> 218 </td> 219 220 <td valign="top"> 221 <br /> 222 <input name="addcourse" type="submit" id="add" value="←" /> 223 <br /> 224 <input name="removecourse" type="submit" id="remove" value="→" /> 225 <br /> 226 </td> 227 228 <td valign="top"> 229 <select name="addcourses[]" size="20" id="addcourses" multiple="multiple" 230 onFocus="getElementById('allowedcoursesform').addcourse.disabled=false; 231 getElementById('allowedcoursesform').removecourse.disabled=true; 232 getElementById('allowedcoursesform').removecourses.selectedIndex=-1;"> 233 <?php 234 foreach ($potentialcourses as $course) { 235 echo "<option value=\"$course->id\"> " . format_string($course->shortname) . " </option>\n"; 236 } 237 ?> 238 </select> 239 </td> 240 </tr> 241 </table> 242 <?php 243 244 } 245 246 ?> 247 </form> 248 </div> 249 <?php 250 251 print_simple_box_end(); 252 admin_externalpage_print_footer(); 253 254 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Wed Jan 14 11:33:29 2009 | Cross-referenced by PHPXref 0.7 |