Esempio n. 1
0
 /**
  * createEvaluationHeader: generate the head of an evaluation (title and base text)
  * @param   the evaluation
  * @returns a table row
  */
 function createEvaluationHeader($eval, $votedNow, $votedEarlier)
 {
     $br = new HTMpty("br");
     $tr = new HTM("tr");
     $td = new HTM("td");
     $td->attr("class", "table_row_even");
     $table2 = new HTM("table");
     $table2->attr("width", "100%");
     $tr2 = new HTM("tr");
     $td2 = new HTM("td");
     $td2->attr("width", "90%");
     $td2->attr("valign", "top");
     if ($eval->isError()) {
         $td2->html(EvalCommon::createErrorReport($eval, _("Fehler")));
         $td2->html($br);
     }
     $span = new HTM("span");
     $span->attr("class", "eval_title");
     $span->html(htmlReady($eval->getTitle()));
     $td2->cont($span);
     $td2->cont($br);
     $td2->cont($br);
     if ($votedNow) {
         $message = new HTML('div');
         $message->_content = array((string) MessageBox::success(_("Vielen Dank für Ihre Teilnahme.")));
         $td2->cont($message);
     } elseif ($votedEarlier) {
         $message = new HTML('div');
         $message->_content = array((string) MessageBox::info(_("Sie haben an dieser Evaluation bereits teilgenommen.")));
         $td2->cont($message);
     } else {
         $td2->html(formatReady($eval->getText()));
         $td2->cont($br);
     }
     $tr2->cont($td2);
     $td2 = new HTM("td");
     $td2->attr("width", "250");
     $td2->attr("valign", "top");
     $td2->html(EvalShow::createInfoBox($eval, $votedNow || $votedEarlier));
     $tr2->cont($td2);
     $table2->cont($tr2);
     $td->cont($table2);
     $tr->cont($td);
     return $tr;
 }
Esempio n. 2
0
    $no_permisson = 0;
    if (is_array($eval->getRangeIDs())) {
        foreach ($eval->getRangeIDs() as $rangeID) {
            $user_perm = $db->getRangePerm($rangeID, $user->id, YES);
            // every range with a lower perm than Tutor
            if ($user_perm < 7) {
                $no_permisson++;
            }
        }
        if ($no_permisson > 0) {
            if ($no_permisson == 1) {
                $no_permisson_msg = _("Sie haben in einem Bereich, in welchem diese Evaluation hängt, nicht aussreichene Rechte, um diese Eval zu bearbeiten.");
            } else {
                $no_permisson_msg = sprintf(_("Sie haben in %s Bereichen, in denen diese Evaluation hängt, nicht aussreichene Rechte, um diese Eval zu bearbeiten."), $no_permisson);
            }
            $error = EvalCommon::createReportMessage($no_permisson_msg, EVAL_PIC_ERROR, EVAL_CSS_ERROR);
            $error_msgs[] = $error->createContent();
        }
    }
}
# ============================================ end: Collection post/get-vars #
# Print Error MSG and end Site ============================================= #
if ($error_msgs) {
    $back_button = "&nbsp;&nbsp;&nbsp;" . "<a href=\"" . URLHelper::getLink('admin_evaluation.php?page=overview&rangeID=' . Request::option('rangeID')) . "\">" . _("Zur Evaluations-Verwaltung") . "</a>";
    if (is_array($error_msgs)) {
        foreach ($error_msgs as $error_msg) {
            $errors .= $error_msg . "<br>";
        }
    }
    echo EvalEdit::createSite($errors . $back_button, " ");
    include_once 'lib/include/html_end.inc.php';
 /**
 * swaps positions of two objects
 *
 * @access  private
 * @param   string  $parentID     the parentID
 * @param   string  $objectID     the object to swap
 * @param   string  $oldposition  the old position
 * @param   string  $direction    the direction to swap
 */
 function swapPosition($parentID, $objectID, $oldposition, $direction)
 {
     if ($parentID == ROOT_BLOCK) {
         $group = $this->tree->eval;
     } else {
         $group =& $this->tree->getGroupObject($parentID);
     }
     $numberchildren = $group->getNumberChildren();
     $instance = $group->x_instanceof();
     if ($direction == "up") {
         if ($oldposition == 0) {
             $newposition = $numberchildren - 1;
         } else {
             $newposition = $oldposition - 1;
         }
     } else {
         if ($oldposition == $numberchildren - 1) {
             $newposition = 0;
         } else {
             $newposition = $oldposition + 1;
         }
     }
     while ($swapitem = $group->getNextChild()) {
         if ($swapitem->getPosition() == $newposition) {
             $swapitem->setPosition($oldposition);
             $swapitem->save();
         }
     }
     if ($parentID != ROOT_BLOCK && $group->getChildType() == "EvaluationQuestion") {
         $object = new EvaluationQuestion($objectID);
     } else {
         $object =& $this->tree->getGroupObject($objectID);
     }
     $object->setPosition($newposition);
     $object->save();
     if ($swapitem->isError) {
         return EvalCommon::showErrorReport($swapitem, _("Fehler beim verschieben."));
     }
     if ($object->isError) {
         return EvalCommon::showErrorReport($object, _("Fehler beim verschieben."));
     }
 }
function save1($myuserid)
{
    $mineexists = 0;
    /*Existiert Question/Template schon?*/
    $qdb = new EvaluationQuestionDB();
    if (!$template_id) {
        $template_id = Request::option("template_id");
    }
    if ($qdb->exists($template_id)) {
        $question = new EvaluationQuestion($template_id, NULL, EVAL_LOAD_ALL_CHILDREN);
        if ($question->getParentID() != $myuserid) {
            $foreign = TRUE;
            $question = new EvaluationQuestion();
            $question->setParentID($myuserid);
        } else {
            $overwrite = 1;
            //$question->delete();
            //$question = new EvaluationQuestion();
            //$template_id=$question->getObjectID();
        }
    } else {
        $question = new EvaluationQuestion();
    }
    /*Get Vars ----------------------------------------------------*/
    $template_name = Request::get("template_name");
    $template_type = Request::get("template_type");
    $template_multiple = Request::get("template_multiple");
    $template_add_num_answers = Request::option("template_add_num_answers");
    $template_residual = Request::get("template_residual");
    $template_residual_text = Request::get("template_residual_text");
    $template_answers = Request::getArray("template_answers");
    /*end: Get Vars -----------------------------------------------*/
    $question->setParentID($myuserid);
    $question->setMultiplechoice($template_multiple);
    $question->setText(trim($template_name), YES);
    $question->setType($template_type);
    while ($answerrem = $question->getChild()) {
        $id = $answerrem->getObjectID();
        $answerrem->delete();
        $question->removeChildID($id);
    }
    $controlnumber = count($template_answers);
    $ausgleich = 0;
    for ($i = 0; $i < $controlnumber; $i++) {
        $text = $template_answers[$i]['text'];
        $answerID = $template_answers[$i]['answer_id'];
        $answer = new EvaluationAnswer();
        if (!$foreign) {
            $answer->setObjectID($answerID);
        }
        $answer->setText(trim($text), YES);
        $question->addChild($answer);
        /*Anzahl der Antworten bei Polskalen anpassen ------------------------*/
        if ($template_type == EVALQUESTION_TYPE_POL && $i == 0) {
            $answerdiff = $controlnumber - $template_add_num_answers;
            if ($template_residual) {
                //echo "Hust<br>";
                //$answerdiff;
            }
            if ($answerdiff > 0) {
                /*differenz abziehen => answers überspringen*/
                $i = $i + $answerdiff;
                $ausgleich = $ausgleich - $answerdiff;
            }
            while ($answerdiff < 0) {
                $ausgleich = $ausgleich + 1;
                $answer = new EvaluationAnswer();
                $answer->setText("");
                $answer->setParentID($question->getObjectID());
                $answer->setPosition($i + $ausgleich);
                $answer->setValue($i + 1 + $ausgleich);
                $question->addChild($answer);
                $answerdiff++;
            }
        }
        /*end: Polskala antworten angleichen ----------------------------------*/
    }
    /*create residual category-----------------------------------------------*/
    if ($template_residual) {
        $answer = new EvaluationAnswer();
        $answer->setResidual($template_residual);
        $answer->setText(trim($template_residual_text), QUOTED);
        $answer->setParentID($question->getObjectID());
        $answer->setPosition($i + $ausgleich + 1);
        $answer->setValue(-1);
        $question->addChild($answer);
    }
    /*object HIER NOCH NICHT in db speichern!      */
    // $question->save();
    if (!$overwrite) {
        $db = new EvaluationQuestionDB();
        $lib = new EvalTemplateGUI();
        $lib->setUniqueName($question, $db, $myuserid, YES);
    }
    if ($question->isError()) {
        EvalCommon::showErrorReport($question, _("Fehler beim Speichern."));
    }
    return $question;
}
 /**
  * creates the infobox
  *
  */
 function createInfoBox($command)
 {
     global $evalID, $rangeID;
     $id = Request::option("itemID");
     $level = EvaluationObjectDB::getType($id);
     #      echo $level;
     switch ($level) {
         case "0":
         case "Evaluation":
             $infoMain = array("icon" => Icon::create('test', 'info')->asImagePath(16), "text" => _("Links können Sie die Grundattribute der Evaluation definieren und neue Gruppierungsblöcke anlegen."));
             break;
         case "EvaluationGroup":
             $group = new EvaluationGroup($id);
             switch ($group->getChildType()) {
                 case "":
                 case "EvaluationGroup":
                     $infoMain = array("icon" => EVAL_PIC_TREE_GROUP, "text" => _("Links können Sie den ausgewählten Gruppierungsblock bearbeiten und darin Fragenblöcke oder weitere Gruppierungsblöcke anlegen."));
                     break;
                 case "EvaluationQuestion":
                     $infoMain = array("icon" => EVAL_PIC_TREE_QUESTIONGROUP, "text" => _("Links können Sie den ausgewählten Fragenblock bearbeiten und darin Fragen des zugeordneten Vorlagentyps anlegen.<br>Sie können auch den Vorlagentyp ändern. Dies wirkt sich auf alle Fragen aus."));
                     break;
             }
     }
     $previewLink = EvalCommon::createEvalShowLink($evalID, _("Vorschau"), YES, NO);
     $previewLink .= " " . _("der Evaluation");
     $infoTemplates = array("icon" => Icon::create('info', 'info')->asImagePath(16), "text" => _("Der rechte Bereich dient der Bearbeitung von Antwortenvorlagen."));
     $infoPreview = array("icon" => Icon::create('question-circle', 'info')->asImagePath(16), "text" => $previewLink);
     if (get_Username($rangeID)) {
         $rangeID = get_Username($rangeID);
     }
     if (empty($rangeID)) {
         $rangeID = get_Username($user->id);
     }
     $infoOverviewText = sprintf(_("Zurück zur %s Evaluations-Verwaltung %s"), "<a href=\"" . URLHelper::getLink('admin_evaluation.php?page=overview' . "&check_abort_creation_button=1&evalID={$evalID}&rangeID={$rangeID}") . "\">", "</a>");
     $infoOverview = array("icon" => Icon::create('link-intern', 'info')->asImagePath(16), "text" => $infoOverviewText);
     if ($command) {
         $infobox = array(array("kategorie" => _("Aktionen:"), "eintrag" => array($infoPreview, $infoOverview)));
     } else {
         $infobox = array(array("kategorie" => _("Information:"), "eintrag" => array($infoMain, $infoTemplates, $infoPreview, $infoOverview)));
     }
     #      ob_start();
     return print_infobox($infobox, false, YES);
     #      $html = ob_get_contents();
     #      ob_end_clean();
     #      return $html;
 }
Esempio n. 6
0
    $userID = StudipObject::createNewID();
} else {
    $userID = $auth->auth["uid"];
}
/* ---------------------------------------------------------- end: variables */
$br = new HTMpty("br");
/* Surrounding Form -------------------------------------------------------- */
$form = new HTM("form");
$form->attr("action", URLHelper::getLink(Request::url()));
$form->attr("method", "post");
$form->html(CSRFProtection::tokenTag());
if (Request::isXHR()) {
    header('X-Title:' . _("Stud.IP Online-Evaluation"));
} else {
    // TODO: This should use Assets::img() but on the other hand it should also use templates
    $titlebar = EvalCommon::createTitle(_("Stud.IP Online-Evaluation"), Icon::create('test', 'info_alt')->asImagePath());
    $form->cont($titlebar);
}
/* Surrounding Table ------------------------------------------------------- */
$table = new HTM("table");
$table->attr("border", "0");
$table->attr("align", "center");
$table->attr("cellspacing", "0");
$table->attr("cellpadding", "3");
$table->attr("width", "100%");
$table->attr("class", "table_row_even");
/* count mandatory items */
$mandatories = checkMandatoryItems($eval);
$answers = Request::quotedArray('answers');
/* ------------------------------------------------------------------------- */
if ($votedNow) {
Esempio n. 7
0
 static function createErrorReport(&$object, $errortitle = "")
 {
     ob_start();
     EvalCommon::showErrorReport($object, $errortitle);
     $html = ob_get_contents();
     ob_end_clean();
     return $html;
 }
 /**
  *  the current eval-ranges and the options to copy and link ranges
  *
  * @access  private
  * @param   $eval    the eval object
  * @param   $state   the eval's state (EVAL_STATE_NEW, EVAL_STATE_ACTIVE, ...)
  * @param   $style   the background style
  * @return  string   the domain settings (html)
  */
 function createDomainSettings($eval, $state, $style)
 {
     global $user;
     $db = new EvaluationObjectDB();
     $evalDB = new EvaluationDB();
     $evalID = $eval->getObjectID();
     $globalperm = $db->getGlobalPerm();
     // linked ranges
     $rangeIDs = $eval->getRangeIDs();
     // search results
     if (Request::get("search")) {
         $results = $evalDB->search_range(Request::get("search"));
     } else {
         $results = $evalDB->search_range("");
     }
     if ($globalperm == "root") {
         $results["studip"] = array("type" => "system", "name" => _("Systemweite Evaluationen"));
     } elseif ($globalperm == "dozent" || $globalperm == "autor" || $globalperm == "admin") {
         $results[$user->id] = array("type" => "user", "name" => _("Profil"));
     }
     if ($globalperm == "dozent" || $globalperm == "autor" || Request::get("search")) {
         $showsearchresults = 1;
     }
     if ($globalperm == "autor") {
         $range_types = array("user" => _("Benutzer"), "sem" => _("Veranstaltung"));
     } elseif ($globalperm == "dozent") {
         $range_types = array("user" => _("Benutzer"), "sem" => _("Veranstaltung"), "inst" => _("Einrichtung"));
     } elseif ($globalperm == "admin") {
         $range_types = array("user" => _("Benutzer"), "sem" => _("Veranstaltung"), "inst" => _("Einrichtung"), "fak" => _("Fakultät"));
     } elseif ($globalperm == "root") {
         $range_types = array("user" => _("Benutzer"), "sem" => _("Veranstaltung"), "inst" => _("Einrichtung"), "fak" => _("Fakultät"), "system" => _("System"));
     }
     // zugewiesene Bereiche
     $table_r = new HTML("table");
     #   $table_r->addAttr ("class","white");
     $table_r->addAttr("border", "0");
     $table_r->addAttr("align", "center");
     $table_r->addAttr("cellspacing", "0");
     $table_r->addAttr("cellpadding", "0");
     $table_r->addAttr("width", "100%");
     $table_r->addAttr('class', 'default');
     // Überschriften
     $tr_r = new HTML("tr");
     $td_r = new HTML("td");
     $td_r->addAttr("class", "{$style}");
     $td_r->addAttr("style", "vertical-align:bottom;");
     $td_r->addAttr("height", "22");
     $b_r = new HTML("b");
     $b_r->addHTMLContent("&nbsp;");
     $b_r->addContent(_("Bereich"));
     $td_r->addContent($b_r);
     $tr_r->addContent($td_r);
     $td_r = new HTML("td");
     $td_r->addAttr("class", "{$style}");
     $td_r->addAttr("height", "22");
     $td_r->addAttr("align", "center");
     $td_r->addAttr("style", "vertical-align:bottom;");
     $b_r = new HTML("b");
     $b_r->addContent(_("aushängen"));
     $td_r->addContent($b_r);
     $tr_r->addContent($td_r);
     $table_r->addContent($tr_r);
     if ($rangeIDs) {
         // die verknüpften bereiche
         foreach ($rangeIDs as $k => $assigned_rangeID) {
             $tr_r = new HTML("tr");
             // title
             $td_r = new HTML("td");
             $td_r->addHTMLContent("&nbsp;");
             $td_r->addHTMLContent($db->getRangename($assigned_rangeID, NO));
             #         $td_r->addContent ($db->getRangename($assigned_rangeID));
             $tr_r->addContent($td_r);
             if ($this->perm->have_studip_perm("tutor", $assigned_rangeID) || $assigned_rangeID == $user->id) {
                 // link
                 $td_r = new HTML("td");
                 $td_r->addAttr("align", "center");
                 $input = new HTMLempty("input");
                 $input->addAttr("type", "checkbox");
                 $input->addAttr("name", "remove_range[{$assigned_rangeID}]");
                 $input->addAttr("value", "1");
                 $td_r->addContent($input);
             } else {
                 // no permission
                 $td_r = new HTML("td");
                 $td_r->addAttr("align", "center");
                 $td_r->addContent(_("Sie haben keine Berechtigung die Evaluation aus diesem Bereich auszuhängen."));
             }
             $tr_r->addContent($td_r);
             $table_r->addContent($tr_r);
         }
     } else {
         $td_r = new HTML("td");
         $td_r->addAttr("class", "content_body");
         $td_r->addAttr("width", "40");
         $td_r->addAttr("align", "center");
         $td_r->addAttr("style", "vertical-align:bottom;");
         $td_r->addAttr("colspan", "2");
         $b_r = new HTML("b");
         $b_r->addHTMLContent("&nbsp;");
         $b_r->addContent(_("Diese Evaluation wurde keinem Bereich zugeordnet."));
         $td_r->addContent($b_r);
         $tr_r->addContent($td_r);
         $table_r->addContent($tr_r);
     }
     $table = new HTML("table");
     $table->addAttr("border", "0");
     $table->addAttr("align", "center");
     $table->addAttr("cellspacing", "0");
     $table->addAttr("cellpadding", "4");
     $table->addAttr("width", "100%");
     $tr = new HTML("tr");
     $td = new HTML("td");
     $td->addAttr("colspan", "2");
     $td->addAttr("style", "padding-bottom:0; border-top:1px solid black;");
     $b = new HTML("b");
     $b->addContent(_("Diese Evaluation ist folgenden Bereichen zugeordnet:"));
     $td->addContent($b);
     $td->addContent(EvalCommon::createImage(EVAL_PIC_HELP, "", tooltip(_(" können Sie Ihre Evaluation aus den verknüpften Bereichen entfernen."), TRUE, TRUE)));
     $tr->addContent($td);
     if (!$eval->isTemplate()) {
         $table->addContent($tr);
     }
     $tr = new HTML("tr");
     $td = new HTML("td");
     $td->addAttr("colspan", "2");
     $td->addContent($table_r);
     $tr->addContent($td);
     if (!$eval->isTemplate()) {
         $table->addContent($tr);
     }
     // display search_results
     if ($results) {
         foreach ($results as $k => $v) {
             while (list($type_key, $type_value) = each($range_types)) {
                 if ($v["type"] == $type_key) {
                     $ranges["{$type_key}"][] = array("id" => $k, "name" => $v["name"]);
                 }
             }
             reset($range_types);
         }
         $table_s = new HTML("table");
         $table_s->addAttr("border", "0");
         $table_s->addAttr("align", "center");
         $table_s->addAttr("cellspacing", "0");
         $table_s->addAttr("cellpadding", "0");
         $table_s->addAttr("width", "100%");
         while (list($type_key, $type_value) = each($range_types)) {
             // Überschriften
             $tr_s = new HTML("tr");
             // Typ
             $td_s = new HTML("td");
             $td_s->addAttr("colspan", "1");
             $td_s->addAttr("class", "{$style}");
             $td_s->addAttr("height", "22");
             $td_s->addAttr("style", "vertical-align:bottom;");
             $b_s = new HTML("b");
             $b_s->addHTMLContent("&nbsp;");
             $b_s->addContent($type_value . ":");
             $td_s->addContent($b_s);
             $tr_s->addContent($td_s);
             // link
             $td_s = new HTML("td");
             $td_s->addAttr("class", "{$style}");
             $td_s->addAttr("height", "22");
             $td_s->addAttr("align", "center");
             $td_s->addAttr("style", "vertical-align:bottom;");
             $b_s = new HTML("b");
             $b_s->addContent(_("einhängen"));
             $td_s->addContent($b_s);
             $tr_s->addContent($td_s);
             // kopie
             $td_s = new HTML("td");
             $td_s->addAttr("class", "{$style}");
             $td_s->addAttr("height", "22");
             $td_s->addAttr("align", "center");
             $td_s->addAttr("style", "vertical-align:bottom;");
             $b_s = new HTML("b");
             $b_s->addContent(_("kopieren"));
             $td_s->addContent($b_s);
             $tr_s->addContent($td_s);
             $table_s->addContent($tr_s);
             $counter = 0;
             if ($ranges["{$type_key}"]) {
                 foreach ($ranges["{$type_key}"] as $range) {
                     if ($counter == 0) {
                         $displayclass = "content_body";
                     } elseif ($counter % 2 == 0) {
                         $displayclass = "table_row_even";
                     } else {
                         $displayclass = "table_row_odd";
                     }
                     $tr_s = new HTML("tr");
                     // name
                     $td_s = new HTML("td");
                     $td_s->addHTMLContent("&nbsp;");
                     $td_s->addHTMLContent(htmlready($range["name"]));
                     $tr_s->addContent($td_s);
                     // if the rangeID is a username, convert it to the userID
                     $new_rangeID = get_userid($range['id']) ? get_userid($range['id']) : $range['id'];
                     if (!in_array($new_rangeID, $rangeIDs)) {
                         // link
                         $td_s = new HTML("td");
                         $td_s->addAttr("align", "center");
                         $input = new HTMLempty("input");
                         $input->addAttr("type", "checkbox");
                         $input->addAttr("name", "link_range[{$range['id']}]");
                         $input->addAttr("value", "1");
                         $td_s->addContent($input);
                         $tr_s->addContent($td_s);
                     } else {
                         // no link
                         $td_s = new HTML("td");
                         $td_s->addAttr("align", "center");
                         $td_s->addAttr("colspan", "1");
                         $input = new HTMLempty("input");
                         $td_s->addContent(_("Die Evaluation ist bereits diesem Bereich zugeordnet."));
                         $tr_s->addContent($td_s);
                     }
                     // copy
                     $td_s = new HTML("td");
                     $td_s->addAttr("align", "center");
                     $input = new HTMLempty("input");
                     $input->addAttr("type", "checkbox");
                     $input->addAttr("name", "copy_range[{$range['id']}]");
                     $input->addAttr("value", "1");
                     $td_s->addContent($input);
                     $tr_s->addContent($td_s);
                     $table_s->addContent($tr_s);
                     $counter++;
                 }
             } elseif ($globalperm == "root" || $globalperm == "admin") {
                 $tr_s = new HTML("tr");
                 $td_s = new HTML("td");
                 $td_s->addAttr("class", "content_body");
                 $td_s->addAttr("colspan", "4");
                 $td_s->addHTMLContent("&nbsp;");
                 $td_s->addContent(_("Es wurden keine Ergebnisse aus diesem Bereich gefunden."));
                 $tr_s->addContent($td_s);
                 $table_s->addContent($tr_s);
             }
             reset($ranges);
         }
     }
     if ($showsearchresults) {
         $tr = new HTML("tr");
         $td = new HTML("td");
         $td->addAttr("colspan", "2");
         //       $td->addContent(new HTMLempty("hr"));
         $b = new HTML("b");
         #       $b->addContent (_("Suchergebnisse:"));
         if (Request::get("search")) {
             $b->addContent(_("Sie können die Evaluation folgenden Bereichen zuordnen (Suchergebnisse):"));
         } else {
             $b->addContent(_("Sie können die Evaluation folgenden Bereichen zuordnen:"));
         }
         $td->addContent($b);
         $td->addContent(EvalCommon::createImage(EVAL_PIC_HELP, "", tooltip(_("Hängen Sie die Evaluation in die gewünschten Bereiche ein (abhängige Kopie mit gemeinsamer Auswertung) oder kopieren Sie sie in Bereiche (unabhängige Kopie mit getrennter Auswertung)."), TRUE, TRUE)));
         $td->addContent($results ? $table_s : _("Die Suche ergab keine Treffer."));
         $tr->addContent($td);
         $table->addContent($tr);
     }
     // the seach-button
     if ($globalperm == "root" || $globalperm == "admin") {
         $tr = new HTML("tr");
         $td = new HTML("td");
         $td->addAttr("colspan", "2");
         $td->addAttr("style", "padding-bottom:0; border-top:1px solid black;");
         $td->addContent(_("Nach Bereichen suchen:"));
         $td->addContent(" ");
         $input = new HTMLempty("input");
         $input->addAttr("type", "text");
         $input->addAttr("name", "search");
         $input->addAttr("style", "vertical-align:middle;");
         $input->addAttr("value", "" . Request::get("search") . "");
         $td->addContent($input);
         $td->addContent(Button::create(_('Suchen'), 'search_range_button', array('title' => _('Bereiche suchen'))));
         $tr->addContent($td);
         $table->addContent($tr);
     }
     return $table->createContent();
 }
    foreach ($evalIDArray as $number => $evalID) {
        $eval = new Evaluation($evalID);
        $open = $openID == $evalID;
        $td->addContent($lib->createEvalRow($eval, $number, EVAL_STATE_STOPPED, $open));
        if ($open) {
            $td->addContent($lib->createEvalContent($eval, $number, EVAL_STATE_STOPPED, $safeguard));
        }
    }
} else {
    $td->addContent($lib->createInfoCol(_("Keine gestoppten Evaluationen vorhanden.")));
}
$tr->addContent($td);
$table->addContent($tr);
$table->addContent($lib->createClosingRow());
/* ------------------------------------------------------------ end: stopped */
echo $table->createContent();
if ($debug) {
    echo "<pre>";
    echo "rangeid = {$rangeID}\n";
    echo "<font color=red>Nach Evaluationen suchen...</font><br>";
    $evalArray = $db->getEvaluationIDs($rangeID);
    echo "ed(n) " . count($evalArray) . " Evaluation(en) gefunden...</font><br>";
    $evalArray = $db->getEvaluationIDs($rangeID, EVAL_STATE_NEW);
    echo "Es wurde(n) " . count($evalArray) . " neue Evaluation(en) gefunden...</font><br>";
    $evalArray = $db->getEvaluationIDs($rangeID, EVAL_STATE_ACTIVE);
    echo "Es wurde(n) " . count($evalArray) . " laufende Evaluation(en) gefunden...</font><br>";
    $evalArray = $db->getEvaluationIDs($rangeID, EVAL_STATE_STOPPED);
    echo "Es wurde(n) " . count($evalArray) . " gestoppte Evaluation(en) gefunden...</font><br>";
    echo EvalCommon::createErrorReport($db);
    print_r($_POST);
}