Ejemplo n.º 1
0
function build_object($classOrClosure, array &$values, \Closure $objectBuilder = null)
{
    if ($classOrClosure instanceof \Closure) {
        $class = $classOrClosure($values);
    } else {
        $class = (string) $classOrClosure;
    }
    $object = new $class();
    set_values($object, $values, true);
    $objectBuilder && $objectBuilder($object);
    return $object;
}
Ejemplo n.º 2
0
 /**
  * @internal
  *
  * @param string $namespace
  * @param string $key
  * @param object $object
  */
 protected function addObject($namespace, $key, $object)
 {
     if (false == isset($this->values[$namespace][$key])) {
         $this->values[$namespace][$key] = [];
     }
     if (false == isset($this->objects[$namespace][$key])) {
         $this->objects[$namespace][$key] = [];
     }
     $objectKey = count($this->values[$namespace][$key]);
     $this->objects[$namespace][$key][$objectKey] = $object;
     $this->values[$namespace][$key][$objectKey] = get_values($object);
     $this->changedValues[$namespace][$key][$objectKey] = get_values($object);
     set_values($object, $this->values[$namespace][$key][$objectKey], true);
 }
$courseid = required_param('courseid', PARAM_INT);
if (!($course = $DB->get_record('course', array('id' => $courseid)))) {
    print_error('invalidcourse', 'format_collblct', $courseid);
}
require_login($course);
$context = context_course::instance($courseid);
if (!has_capability('format/collblct:caneditcollapsedlabelcolors', $context)) {
    echo get_string('noaccess', FORMAT_CTWCL_LANG_TABLE);
    return;
}
$PAGE->set_url('/course/format/collblct/edit_colors.php', array('id' => $courseid));
$PAGE->set_pagelayout('standard');
$PAGE->set_title(get_string('editcolorspageheader', FORMAT_CTWCL_LANG_TABLE));
$PAGE->set_heading(get_string('editcolorspageheader', FORMAT_CTWCL_LANG_TABLE));
$settingseditform = new settings_edit_form($courseid);
$toform = set_values($courseid);
$settingseditform->set_data($toform);
if ($settingseditform->is_cancelled()) {
    // Cancelled forms redirect to the course main page.
    $courseurl = new moodle_url('/course/view.php', array('id' => $courseid));
    redirect($courseurl);
} else {
    if ($fromform = $settingseditform->get_data()) {
        // Process form and redirect on completion.
        process_form($courseid, $fromform);
        $courseurl = new moodle_url('/course/view.php', array('id' => $courseid));
        redirect($courseurl);
    } else {
        // Form didn't validate or this is the first display.
        $site = get_site();
        echo $OUTPUT->header();
Ejemplo n.º 4
0
    ?>
</span>
	
	<?php 
    echo form_error('fields[' . $field->id . ']');
    ?>
	<?php 
    echo form_error('fields[' . $field->id . '][]');
    // for checkbox
    ?>
	
	<?php 
    if ($field->type == FieldTypes::CHECKBOX) {
        ?>
		<?php 
        $values = set_values($inputName . '[]');
        ?>
		<?php 
        foreach ($field->options->getValueOptions() as $option_id => $option) {
            ?>
		<div class="subfield">
		<?php 
            echo form_checkbox($inputName . '[]', $option, array_search($option, $values) !== FALSE, 'id="fields' . $field->id . "-" . $option_id . '"');
            echo form_label($option, 'fields' . $field->id . "-" . $option_id);
            ?>
		</div>
		<?php 
        }
        ?>
		
	<?php