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

Updated to moodle 3.0.3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • moodle/trunk/fuentes/badges/renderer.php

    r136 r1331  
    141141        $dl[get_string('name')] = $badge->name;
    142142        $dl[get_string('description', 'badges')] = $badge->description;
    143         $dl[get_string('createdon', 'search')] = $badge->timecreated;
     143        $dl[get_string('createdon', 'search')] = userdate($badge->timecreated);
    144144        $dl[get_string('badgeimage', 'badges')] = print_badge_image($badge, $context, 'large');
    145145        $display .= $this->definition_list($dl);
     
    480480
    481481        // Local badges.
    482         $localhtml = html_writer::start_tag('fieldset', array('id' => 'issued-badge-table', 'class' => 'generalbox'));
     482        $localhtml = html_writer::start_tag('div', array('id' => 'issued-badge-table', 'class' => 'generalbox'));
    483483        $heading = get_string('localbadges', 'badges', format_string($SITE->fullname, true, array('context' => context_system::instance())));
    484         $localhtml .= html_writer::tag('legend', $this->output->heading_with_help($heading, 'localbadgesh', 'badges'));
     484        $localhtml .= $this->output->heading_with_help($heading, 'localbadgesh', 'badges');
    485485        if ($badges->badges) {
    486486            $downloadbutton = $this->output->heading(get_string('badgesearned', 'badges', $badges->totalcount), 4, 'activatebadge');
     
    492492            $localhtml .= $searchform . $this->output->notification(get_string('nobadges', 'badges'));
    493493        }
    494         $localhtml .= html_writer::end_tag('fieldset');
     494        $localhtml .= html_writer::end_tag('div');
    495495
    496496        // External badges.
    497497        $externalhtml = "";
    498498        if (!empty($CFG->badges_allowexternalbackpack)) {
    499             $externalhtml .= html_writer::start_tag('fieldset', array('class' => 'generalbox'));
    500             $externalhtml .= html_writer::tag('legend', $this->output->heading_with_help(get_string('externalbadges', 'badges'), 'externalbadges', 'badges'));
     499            $externalhtml .= html_writer::start_tag('div', array('class' => 'generalbox'));
     500            $externalhtml .= $this->output->heading_with_help(get_string('externalbadges', 'badges'), 'externalbadges', 'badges');
    501501            if (!is_null($backpack)) {
    502502                if ($backpack->totalcollections == 0) {
     
    514514            }
    515515
    516             $externalhtml .= html_writer::end_tag('fieldset');
     516            $externalhtml .= html_writer::end_tag('div');
    517517        }
    518518
     
    705705    }
    706706
    707     // Prints badge criteria.
     707    /**
     708     * Returns information about badge criteria in a list form.
     709     *
     710     * @param badge $badge Badge objects
     711     * @param string $short Indicates whether to print full info about this badge
     712     * @return string $output HTML string to output
     713     */
    708714    public function print_badge_criteria(badge $badge, $short = '') {
    709         $output = "";
    710715        $agg = $badge->get_aggregation_methods();
    711716        if (empty($badge->criteria)) {
    712717            return get_string('nocriteria', 'badges');
    713         } else if (count($badge->criteria) == 2) {
     718        }
     719
     720        $overalldescr = '';
     721        $overall = $badge->criteria[BADGE_CRITERIA_TYPE_OVERALL];
     722        if (!$short && !empty($overall->description)) {
     723            $overalldescr = $this->output->box(
     724                format_text($overall->description, $overall->descriptionformat, array('context' => $badge->get_context())),
     725                'criteria-description'
     726                );
     727        }
     728
     729        // Get the condition string.
     730        if (count($badge->criteria) == 2) {
     731            $condition = '';
    714732            if (!$short) {
    715                 $output .= get_string('criteria_descr', 'badges');
     733                $condition = get_string('criteria_descr', 'badges');
    716734            }
    717735        } else {
    718             $output .= get_string('criteria_descr_' . $short . BADGE_CRITERIA_TYPE_OVERALL, 'badges',
    719                                     core_text::strtoupper($agg[$badge->get_aggregation_method()]));
    720         }
     736            $condition = get_string('criteria_descr_' . $short . BADGE_CRITERIA_TYPE_OVERALL, 'badges',
     737                                      core_text::strtoupper($agg[$badge->get_aggregation_method()]));
     738        }
     739
     740        unset($badge->criteria[BADGE_CRITERIA_TYPE_OVERALL]);
     741
    721742        $items = array();
    722         unset($badge->criteria[BADGE_CRITERIA_TYPE_OVERALL]);
    723         foreach ($badge->criteria as $type => $c) {
     743        // If only one criterion left, make sure its description goe to the top.
     744        if (count($badge->criteria) == 1) {
     745            $c = reset($badge->criteria);
     746            if (!$short && !empty($c->description)) {
     747                $overalldescr = $this->output->box(
     748                    format_text($c->description, $c->descriptionformat, array('context' => $badge->get_context())),
     749                    'criteria-description'
     750                    );
     751            }
    724752            if (count($c->params) == 1) {
    725                 $items[] = get_string('criteria_descr_single_' . $short . $type , 'badges') . $c->get_details($short);
    726             } else {
    727                 $items[] = get_string('criteria_descr_' . $short . $type , 'badges',
    728                         core_text::strtoupper($agg[$badge->get_aggregation_method($type)])) . $c->get_details($short);
    729             }
    730         }
    731         $output .= html_writer::alist($items, array(), 'ul');
    732         return $output;
     753                $items[] = get_string('criteria_descr_single_' . $short . $c->criteriatype , 'badges') .
     754                           $c->get_details($short);
     755            } else {
     756                $items[] = get_string('criteria_descr_' . $short . $c->criteriatype, 'badges',
     757                        core_text::strtoupper($agg[$badge->get_aggregation_method($c->criteriatype)])) .
     758                        $c->get_details($short);
     759            }
     760        } else {
     761            foreach ($badge->criteria as $type => $c) {
     762                $criteriadescr = '';
     763                if (!$short && !empty($c->description)) {
     764                    $criteriadescr = $this->output->box(
     765                        format_text($c->description, $c->descriptionformat, array('context' => $badge->get_context())),
     766                        'criteria-description'
     767                        );
     768                }
     769                if (count($c->params) == 1) {
     770                    $items[] = get_string('criteria_descr_single_' . $short . $type , 'badges') .
     771                               $c->get_details($short) . $criteriadescr;
     772                } else {
     773                    $items[] = get_string('criteria_descr_' . $short . $type , 'badges',
     774                            core_text::strtoupper($agg[$badge->get_aggregation_method($type)])) .
     775                            $c->get_details($short) .
     776                            $criteriadescr;
     777                }
     778            }
     779        }
     780
     781        return $overalldescr . $condition . html_writer::alist($items, array(), 'ul');;
    733782    }
    734783
    735784    // Prints criteria actions for badge editing.
    736785    public function print_criteria_actions(badge $badge) {
    737         $table = new html_table();
    738         $table->attributes = array('class' => 'boxaligncenter', 'id' => 'badgeactions');
    739         $table->colclasses = array('activatebadge');
    740 
    741         $actions = array();
     786        $output = '';
    742787        if (!$badge->is_active() && !$badge->is_locked()) {
    743788            $accepted = $badge->get_accepted_criteria();
     
    750795                    }
    751796                }
    752                 $actions[] = get_string('addbadgecriteria', 'badges');
    753                 $actions[] = $this->output->single_select(new moodle_url('/badges/criteria_settings.php',
    754                         array('badgeid' => $badge->id, 'add' => true)), 'type', $select);
    755             } else {
    756                 $actions[] = $this->output->box(get_string('nothingtoadd', 'badges'), 'clearfix');
    757             }
    758         }
    759 
    760         $table->data[] = $actions;
    761         return html_writer::table($table);
     797                $output .= $this->output->single_select(
     798                    new moodle_url('/badges/criteria_settings.php', array('badgeid' => $badge->id, 'add' => true)),
     799                    'type',
     800                    $select,
     801                    '',
     802                    array('' => 'choosedots'),
     803                    null,
     804                    array('label' => get_string('addbadgecriteria', 'badges'))
     805                );
     806            } else {
     807                $output .= $this->output->box(get_string('nothingtoadd', 'badges'), 'clearfix');
     808            }
     809        }
     810
     811        return $output;
    762812    }
    763813
Note: See TracChangeset for help on using the changeset viewer.