aboutsummaryrefslogtreecommitdiff
path: root/public/show_evaluation.php
diff options
context:
space:
mode:
Diffstat (limited to 'public/show_evaluation.php')
-rw-r--r--public/show_evaluation.php272
1 files changed, 0 insertions, 272 deletions
diff --git a/public/show_evaluation.php b/public/show_evaluation.php
deleted file mode 100644
index e81510a..0000000
--- a/public/show_evaluation.php
+++ /dev/null
@@ -1,272 +0,0 @@
-<?php
-# Lifter002: TODO
-# Lifter007: TODO
-# Lifter003: TODO
-# Lifter010: TODO
-/**
- * the evaluation participation page :)
- *
- * @author mcohrs <michael A7 cohrs D07 de>
- * @author Michael Riehemann <michael.riehemann@uni-oldenburg.de>
- * @copyright 2004 Stud.IP-Project
- * @access public
- * @package evaluation
- * @modulegroup evaluation_modules
- *
- */
-
-// +---------------------------------------------------------------------------+
-// This file is part of Stud.IP
-// Copyright (C) 2001-2004 Stud.IP
-// +---------------------------------------------------------------------------+
-// This program is free software; you can redistribute it and/or
-// modify it under the terms of the GNU General Public License
-// as published by the Free Software Foundation; either version 2
-// of the License, or any later version.
-// +---------------------------------------------------------------------------+
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-// You should have received a copy of the GNU General Public License
-// along with this program; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-// +---------------------------------------------------------------------------+
-
-
-//TODO: auf TemplateFactory umstellen
-
-# PHP-LIB: open session ===================================================== #
-
-require '../lib/bootstrap.php';
-
-page_open ( ["sess" => "Seminar_Session",
- "auth" => "Seminar_Auth",
- "perm" => "Seminar_Perm",
- "user" => "Seminar_User"]);
-$auth->login_if ($auth->auth["uid"] == "nobody");
-$perm->check ("autor");
-# ============================================================== end: PHP-LIB #
-
-# Include all required files ================================================ #
-require_once 'lib/evaluation/evaluation.config.php';
-require_once 'lib/seminar_open.php';
-
-require_once EVAL_FILE_EVAL;
-require_once EVAL_FILE_EVALDB;
-require_once EVAL_FILE_SHOW_TREEVIEW;
-require_once EVAL_FILE_EVALTREE;
-
-require_once EVAL_LIB_COMMON;
-require_once EVAL_LIB_SHOW;
-# ====================================================== end: including files #
-
-/* Create objects ---------------------------------------------------------- */
-$db = new EvaluationDB();
-$lib = new EvalShow();
-/* ------------------------------------------------------------ end: objects */
-
-#error_reporting( E_ALL & ~E_NOTICE );
-
-/* Set variables ----------------------------------------------------------- */
-$rangeID = Request::option('rangeID',Context::getId());
-if (empty ($rangeID)) {
- $rangeID = $user->id; }
-
-$evalID = Request::option('evalID');
-$tree = new EvaluationTreeShowUser( $evalID );
-
-$eval = $tree->tree->eval;
-$evalDB = new EvaluationDB();
-
-$isPreview = Request::option('isPreview') ? YES : NO;
-
-$votedEarlier = $eval->hasVoted( $auth->auth["uid"] ) && $isPreview == NO;
-$votedNow = Request::submitted('voteButton') && $votedEarlier == NO;
-
-if ( $eval->isAnonymous() )
- $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()) {
- PageLayout::setTitle(_("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 ) {
- $answers = Request::quotedArray('answers');
- $freetexts = Request::quotedArray('freetexts');
- if( ! ( is_array($answers) ||
- /* clicked no answer */
- (is_array($freetexts) && implode("", $freetexts) != "")
- /* typed no freetext */
- )
- ) {
-
- $eval->throwError( 1, _("Sie haben keine Antworten gewählt.") );
- $votedNow = NO;
-
- }
-
- /* check if mandatory answers are missing */
- if( count($mandatories) > 0 ) {
- $eval->throwError( 1, sprintf(_("Sie haben %s erforderliche Fragen nicht beantwortet. Diese wurden gesondert markiert."),
- count($mandatories)) );
- $votedNow = NO;
- }
-}
-
-if( $votedNow ) {
- /* the vote was OK */
-
- /* process the user's selected answers --------------------------------- */
- if( is_array($answers) ) {
- foreach( $answers as $question_id => $answer ) {
- if( is_array($answer) )
- /* multiple choice question */
- foreach( $answer as $nr => $answer_id )
- voteFor( $answer_id );
- else
- /* answer = answer_id */
- voteFor( $answer );
- }
- }
-
- /* process the user's typed-in answers --------------------------------- */
- $freetexts = Request::quotedArray('freetexts');
- if( is_array($freetexts) ) {
- foreach( $freetexts as $question_id => $text ) {
- if( trim($text) != '' ) {
- $question = new EvaluationQuestion( $question_id );
- $answer = new EvaluationAnswer();
- $answer->setText( $text );
- $answer->setRows( 1 );
- $answer->vote( $GLOBALS["userID"] );
- $question->addChild( $answer );
- $question->save();
- $debug .= "added answer text <b>".$answer->getText().
- "</b> for question <b>".$question->getText()."</b>\n";
- }
- }
- }
-
- /* connect user with eval */
- $evalDB->connectWithUser( $evalID, $auth->auth["uid"] );
-
- /* header ------ */
- $table->cont( $lib->createEvaluationHeader( $eval, $votedNow, $votedEarlier ) );
-
-} elseif( $votedEarlier ) {
- /* header ------ */
- $table->cont( $lib->createEvaluationHeader( $eval, $votedNow, $votedEarlier ) );
-
-} else {
- /* header ------ */
- $table->cont( $lib->createEvaluationHeader( $eval, $votedNow, $votedEarlier ) );
-
- /* the whole evaluation ------ */
- $table->cont( $lib->createEvaluation( $tree ) );
-}
-
-/* footer ------ */
-$table->cont( $lib->createEvaluationFooter( $eval, $votedNow || $votedEarlier, $isPreview ) );
-
-$form->cont( $table );
-
-/* Ausgabe erzeugen---------------------------------------------------------- */
-//Content (TODO: besser mit TemplateFactory)
-if (Request::isXHR()) {
- echo $form->createContent();
-} else {
- $layout = $GLOBALS['template_factory']->open('layouts/base.php');
- $layout->content_for_layout = $form->createContent();
- echo $layout->render();
-}
-
-page_close();
-
-
- /**
- * checkMandatoryItems:
- * put IDs of mandatory questions into global array $mandatories
- * (or, if the user has voted, the IDs of the mandatory questions, which he did not answer to)
- *
- * @param object the Evaluation object (when called externally).
- */
- function checkMandatoryItems( $item )
- {
- global $mandatories;
-
- if( $children = $item->getChildren() )
- {
- foreach( $children as $child )
- {
- checkMandatoryItems( $child );
- }
- }
-
- if( $item->x_instanceof() == INSTANCEOF_EVALQUESTION )
- {
- $group = $item->getParentObject();
- $answers = Request::quotedArray('answers');
- $freetexts = Request::quotedArray('freetexts');
- if( $group->isMandatory() &&
- ( ! is_array($answers) ||
- ( is_array($answers) &&
- ! in_array($item->getObjectID(), array_keys($answers)) )
- ) &&
- trim($freetexts[$item->getObjectID()]) == ''
- )
- {
- $mandatories[] = $item->getObjectID();
- }
- }
- return $mandatories ?: [];
-
- }
-
-
- /**
- * vote for an answer of given ID
- * @param string the ID.
- */
- function voteFor( $answer_id )
- {
- global $debug;
- global $userID;
-
- $answer = new EvaluationAnswer( $answer_id );
- $answer->vote($userID);
-
- $answer->save();
-
- $debug .= "voted for answer <b>".$answer->getText()."</b> (".
- $answer->getObjectID().")\n";
-}
-
-?>