get_custom_score_display_settings(); $nr_items =(count($customdisplays)!='0')?count($customdisplays):'1'; $this->setDefaults(array ( 'enablescorecolor' => $displayscore->is_coloring_enabled(), 'scorecolpercent' => $displayscore->get_color_split_value(), 'enablescore' => $displayscore->is_custom(), 'includeupperlimit' => $displayscore->is_upperlimit_included() )); $this->addElement('hidden', 'maxvalue', '100'); $this->addElement('hidden', 'minvalue', '0'); $counter= 1; //setting the default values if(is_array($customdisplays)) { foreach ($customdisplays as $customdisplay) { $this->setDefaults(array ( 'endscore[' . $counter . ']' => $customdisplay['score'], 'displaytext[' . $counter . ']' => $customdisplay['display'] )); $counter++; } } $scorecol= array (); //settings for the colored score $this->addElement('header', '', get_lang('ScoreEdit')); $this->addElement('html', '' . get_lang('ScoreColor') . ''); $renderer = $this->defaultRenderer(); $elementTemplateColor = '
* {label}
{error}
'.get_lang('Below').'      {element} % '.get_lang('WillColorRed').'
'; $this->AddElement('checkbox', 'enablescorecolor', null, get_lang('EnableScoreColor'), null); $this->AddElement('text', 'scorecolpercent', null, array ( 'size' => 5, 'maxlength' => 5 )); $renderer->setElementTemplate($elementTemplateColor,'scorecolpercent'); $this->addRule('scorecolpercent', get_lang('OnlyNumbers'), 'numeric'); $this->addRule(array('scorecolpercent','maxvalue'), get_lang('Over100'), 'compare', '<='); $this->addRule(array('scorecolpercent','minvalue'), get_lang('UnderMin'), 'compare', '>'); //settings for the scoring system $this->addElement('html', '
' . get_lang('ScoringSystem') . ''); $this->addElement('checkbox', 'enablescore', null, get_lang('EnableScoringSystem'), null); if ($displayscore->is_custom()) { $this->addElement('checkbox', 'includeupperlimit', null, get_lang('IncludeUpperLimit'), null); $this->addElement('static', null, null, get_lang('ScoreInfo')); $scorenull[]= & $this->CreateElement('static', null, null, get_lang('Between')); $this->setDefaults(array ( 'beginscore' => '0' )); $scorenull[]= & $this->CreateElement('text', 'beginscore', null, array ( 'size' => 5, 'maxlength' => 5, 'disabled' => 'disabled' )); $scorenull[]= & $this->CreateElement('static', null, null, ' %'); $this->addGroup($scorenull, '', '', ' '); for ($counter= 1; $counter <= 20; $counter++) { $renderer =& $this->defaultRenderer(); $elementTemplateTwoLabel = '

* {label}

{error}
'.get_lang('And').'          {element} % ='; $elementTemplateTwoLabel2 = '{error}
 {element} '.get_lang('Delete').' '.get_lang('Add').'

'; $scorebetw= array (); $this->AddElement('text', 'endscore[' . $counter . ']', null, array ( 'size' => 5, 'maxlength' => 5, 'id' => 'txta-'.$counter )); $this->AddElement('text', 'displaytext[' . $counter . ']', null,array ( 'size' => 40, 'maxlength' => 40, 'id' => 'txtb-'.$counter )); $renderer->setElementTemplate($elementTemplateTwoLabel,'endscore[' . $counter . ']'); $renderer->setElementTemplate($elementTemplateTwoLabel2,'displaytext[' . $counter . ']'); $this->addRule('endscore[' . $counter . ']', get_lang('OnlyNumbers'), 'numeric'); $this->addRule(array ('endscore[' . $counter . ']', 'maxvalue'), get_lang('Over100'), 'compare', '<='); $this->addRule(array ('endscore[' . $counter . ']', 'minvalue'), get_lang('UnderMin'), 'compare', '>'); } } $this->setDefaults(array ( 'enablescore' => $displayscore->is_custom(), 'includeupperlimit' => $displayscore->is_upperlimit_included())); $this->addElement('style_submit_button', 'submit', get_lang('Ok'),'class="save"'); } function validate() { return parent :: validate(); } }