ÿØÿà JFIF    ÿÛ „  ( %"1!%)+...383,7(-.+  -+++--++++---+-+-----+---------------+---+-++7-----ÿÀ  ß â" ÿÄ     ÿÄ H    !1AQaq"‘¡2B±ÁÑð#R“Ò Tbr‚²á3csƒ’ÂñDS¢³$CÿÄ   ÿÄ %  !1AQa"23‘ÿÚ   ? ôÿ ¨pŸªáÿ —åYõõ\?àÒü©ŠÄï¨pŸªáÿ —åYõõ\?àÓü©ŠÄá 0Ÿªáÿ Ÿå[úƒ ú®ði~TÁbqÐ8OÕpÿ ƒOò¤Oè`–RÂáœá™êi€ßÉ< FtŸI“öÌ8úDf´°å}“¾œ6  öFá°y¥jñÇh†ˆ¢ã/ÃÐ:ªcÈ "Y¡ðÑl>ÿ ”ÏËte:qž\oäŠe÷󲍷˜HT4&ÿ ÓÐü6ö®¿øþßèô Ÿ•7Ñi’•j|“ñì>b…þS?*Óôÿ ÓÐü*h¥£ír¶ü UãS炟[AÐaè[ûª•õ&õj?†Éö+EzP—WeÒírJFt ‘BŒ†Ï‡%#tE Øz ¥OÛ«!1›üä±Í™%ºÍãö]°î(–:@<‹ŒÊö×òÆt¦ãº+‡¦%ÌÁ²h´OƒJŒtMÜ>ÀÜÊw3Y´•牋4ǍýʏTì>œú=Íwhyë,¾Ôò×õ¿ßÊa»«þˆѪQ|%6ž™A õ%:øj<>É—ÿ Å_ˆCbõ¥š±ý¯Ýƒï…¶|RëócÍf溪“t.СøTÿ *Ä¿-{†çàczůŽ_–^XþŒ±miB[X±d 1,é”zEù»& î9gœf™9Ð'.;—™i}!ôšåîqêÛ٤ёý£½ÆA–àôe"A$˝Úsäÿ ÷Û #°xŸëí(l »ý3—¥5m! rt`†0~'j2(]S¦¦kv,ÚÇ l¦øJA£Šƒ J3E8ÙiŽ:cÉžúeZ°€¯\®kÖ(79«Ž:¯X”¾³Š&¡* ….‰Ž(ÜíŸ2¥ª‡×Hi²TF¤ò[¨íÈRëÉ䢍mgÑ.Ÿ<öäS0í„ǹÁU´f#Vß;Õ–…P@3ío<ä-±»Ž.L|kªÀê›fÂ6@»eu‚|ÓaÞÆŸ…¨ááå>åŠ?cKü6ùTÍÆ”†sĤÚ;H2RÚ†õ\Ö·Ÿn'¾ ñ#ºI¤Å´%çÁ­‚â7›‹qT3Iï¨ÖÚ5I7Ë!ÅOóŸ¶øÝñØôת¦$Tcö‘[«Ö³šÒ';Aþ ¸èíg A2Z"i¸vdÄ÷.iõ®§)¿]¤À†–‡É&ä{V¶iŽ”.Ó×Õÿ û?h¬Mt–íª[ÿ Ñÿ ÌV(í}=ibÔ¡›¥¢±b Lô¥‡piη_Z<‡z§èŒ)iÖwiÇ 2hÙ3·=’d÷8éŽ1¦¸c¤µ€7›7Ø ð\á)} ¹fËí›pAÃL%âc2 í§æQz¿;T8sæ°qø)QFMð‰XŒÂ±N¢aF¨…8¯!U  Z©RÊ ÖPVÄÀÍin™Ì-GˆªÅËŠ›•zË}º±ŽÍFò¹}Uw×#ä5B¤{î}Ð<ÙD é©¤&‡ïDbàÁôMÁ.. /** * Drop down form element to select visibility in an activity mod update form * * Contains HTML class for a drop down element to select visibility in an activity mod update form * * @package core_form * @copyright 2006 Jamie Pratt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ global $CFG; require_once "$CFG->libdir/form/select.php"; /** * Drop down form element to select visibility in an activity mod update form * * HTML class for a drop down element to select visibility in an activity mod update form * * @package core_form * @category form * @copyright 2006 Jamie Pratt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class MoodleQuickForm_modvisible extends MoodleQuickForm_select{ /** @var int activity state: visible=0, visibleoncoursepage=any */ const HIDE = 0; /** @var int activity state: visible=1, visibleoncoursepage=1 */ const SHOW = 1; /** @var int activity state: visible=1, visibleoncoursepage=0 */ const STEALTH = -1; /** * Class constructor * * @param string $elementName Select name attribute * @param mixed $elementLabel Label(s) for the select * @param mixed $attributes Either a typical HTML attribute string or an associative array * @param array $options ignored */ public function __construct($elementName=null, $elementLabel=null, $attributes=null, $options=null) { parent::__construct($elementName, $elementLabel, null, $attributes); $this->_type = 'modvisible'; } /** * Old syntax of class constructor. Deprecated in PHP7. * * @deprecated since Moodle 3.1 */ public function MoodleQuickForm_modvisible($elementName=null, $elementLabel=null, $attributes=null, $options=null) { debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER); self::__construct($elementName, $elementLabel, $attributes, $options); } /** * Called by HTML_QuickForm whenever form event is made on this element * * @param string $event Name of event * @param mixed $arg event arguments * @param object $caller calling object * @return bool */ public function onQuickFormEvent($event, $arg, &$caller) { switch ($event) { case 'createElement': $options = is_array($arg[3]) ? $arg[3] : []; $sectionvisible = array_key_exists('sectionvisible', $options) ? $options['sectionvisible'] : 1; $cm = !empty($options['cm']) ? cm_info::create($options['cm']) : null; $choices = array(); if (!$sectionvisible) { // If section is not visible the activity is hidden by default but it can also be made available. $choices[self::HIDE] = get_string('hidefromstudents'); if (!$cm || $cm->has_view()) { $choices[self::SHOW] = get_string('hideoncoursepage'); } } else { $choices[self::SHOW] = get_string('showoncoursepage'); $choices[self::HIDE] = get_string('hidefromstudents'); if (!empty($options['allowstealth']) && (!$cm || $cm->has_view())) { // If allowed in this course/section, add a third visibility option // "Available but not displayed on course page". $choices[self::STEALTH] = get_string('hideoncoursepage'); } } $this->load($choices); break; case 'updateValue': // Given two bool values of 'visible' and 'visibleoncoursepage' convert to a single // three-state value (show, hide, hide-on-course-page). $name = $this->getName(); $value = $this->_findValue($caller->_constantValues); if (!empty($value) && isset($caller->_constantValues[$name.'oncoursepage']) && !$caller->_constantValues[$name.'oncoursepage']) { $value = self::STEALTH; } if (null === $value) { if ($caller->isSubmitted()) { break; } $value = $this->_findValue($caller->_defaultValues); if (!empty($value) && isset($caller->_defaultValues[$name.'oncoursepage']) && !$caller->_defaultValues[$name.'oncoursepage']) { $value = self::STEALTH; } } if ($value !== null) { $this->setSelected($value); } return true; } return parent::onQuickFormEvent($event, $arg, $caller); } /** * As usual, to get the group's value we access its elements and call * their exportValue() methods * * @param array $submitvalues submitted values * @param bool $assoc if true the retured value is associated array * @return mixed */ public function exportValue(&$submitvalues, $assoc = false) { if ($assoc) { $value = parent::exportValue($submitvalues, $assoc); $key = key($value); $v = $value[$key]; // Convert three-state dropdown value (show, hide, hide-on-course-page) into the array of two bool values: // array('visible' => x, 'visibleoncoursepage' => y). return array($key => ($v == self::HIDE ? 0 : 1), $key . 'oncoursepage' => ($v == self::STEALTH ? 0 : 1)); } else { return parent::exportValue($submitvalues, $assoc); } } }