ILIAS  Release_4_1_x_branch Revision 61804
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilSurveyEvaluationGUI Class Reference

Survey evaluation graphical output. More...

+ Collaboration diagram for ilSurveyEvaluationGUI:

Public Member Functions

 ilSurveyEvaluationGUI ($a_object)
 ilSurveyEvaluationGUI constructor
executeCommand ()
 execute command
 getCommand ($cmd)
 checkAnonymizedEvaluationAccess ()
 Show the detailed evaluation.
 checkEvaluationAccess ()
 Checks the evaluation access after entering the survey access code.
 cancelEvaluationAccess ()
 Cancels the input of the survey access code for evaluation access.
 evaluationdetails ()
 Show the detailed evaluation.
 exportCumulatedResults ($details=0)
 exportData ()
 exportDetailData ()
 printEvaluation ()
 evaluation ($details=0)
 exportUserSpecificResults ($export_format, $export_label="")
 Export the user specific results for the survey.
 evaluationuser ()
 Print the survey evaluation for a selected user.
 outChart ()
 Creates an image visualising the results of a question.

Data Fields

 $object
 $lng
 $tpl
 $ctrl

Detailed Description

Survey evaluation graphical output.

The ilSurveyEvaluationGUI class creates the evaluation output for the ilObjSurveyGUI class. This saves some heap space because the ilObjSurveyGUI class will be smaller.

Author
Helmut Schottmüller helmu.nosp@m.t.sc.nosp@m.hottm.nosp@m.uell.nosp@m.er@ma.nosp@m.c.co.nosp@m.m
Version
Id:
class.ilSurveyEvaluationGUI.php 31128 2011-10-14 09:02:34Z jluetzen

Definition at line 37 of file class.ilSurveyEvaluationGUI.php.

Member Function Documentation

ilSurveyEvaluationGUI::cancelEvaluationAccess ( )

Cancels the input of the survey access code for evaluation access.

Cancels the input of the survey access code for evaluation access

private

Definition at line 156 of file class.ilSurveyEvaluationGUI.php.

References $path, and ilUtil\redirect().

Referenced by checkEvaluationAccess().

{
include_once "./Services/Utilities/classes/class.ilUtil.php";
global $tree;
$path = $tree->getPathFull($this->object->getRefID());
ilUtil::redirect("repository.php?cmd=frameset&ref_id=" . $path[count($path) - 2]["child"]);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::checkAnonymizedEvaluationAccess ( )

Show the detailed evaluation.

Show the detailed evaluation

private

Definition at line 92 of file class.ilSurveyEvaluationGUI.php.

References $_GET, $_SESSION, evaluation(), and EVALUATION_ACCESS_ALL.

Referenced by evaluation().

{
global $rbacsystem;
global $ilUser;
if ($rbacsystem->checkAccess("write", $_GET["ref_id"]))
{
// people with write access always have access to the evaluation
$_SESSION["anon_evaluation_access"] = $_GET["ref_id"];
return $this->evaluation();
}
if ($this->object->getEvaluationAccess() == EVALUATION_ACCESS_ALL)
{
// if the evaluation access is open for all users, grant it
$_SESSION["anon_evaluation_access"] = $_GET["ref_id"];
return $this->evaluation();
}
$surveycode = $this->object->getUserAccessCode($ilUser->getId());
if ($this->object->isAnonymizedParticipant($surveycode))
{
$_SESSION["anon_evaluation_access"] = $_GET["ref_id"];
return $this->evaluation();
}
$this->tpl->setVariable("TABS", "");
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_svy_evaluation_checkaccess.html", "Modules/Survey");
$this->tpl->setCurrentBlock("adm_content");
$this->tpl->setVariable("AUTHENTICATION_NEEDED", $this->lng->txt("svy_check_evaluation_authentication_needed"));
$this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this, "checkAnonymizedEvaluationAccess"));
$this->tpl->setVariable("EVALUATION_CHECKACCESS_INTRODUCTION", $this->lng->txt("svy_check_evaluation_access_introduction"));
$this->tpl->setVariable("VALUE_CHECK", $this->lng->txt("ok"));
$this->tpl->setVariable("VALUE_CANCEL", $this->lng->txt("cancel"));
$this->tpl->setVariable("TEXT_SURVEY_CODE", $this->lng->txt("survey_code"));
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::checkEvaluationAccess ( )

Checks the evaluation access after entering the survey access code.

Checks the evaluation access after entering the survey access code

private

Definition at line 134 of file class.ilSurveyEvaluationGUI.php.

References $_GET, $_POST, $_SESSION, cancelEvaluationAccess(), evaluation(), and ilUtil\sendFailure().

{
$surveycode = $_POST["surveycode"];
if ($this->object->isAnonymizedParticipant($surveycode))
{
$_SESSION["anon_evaluation_access"] = $_GET["ref_id"];
$this->evaluation();
}
else
{
ilUtil::sendFailure($this->lng->txt("svy_check_evaluation_wrong_key", true));
}
}

+ Here is the call graph for this function:

ilSurveyEvaluationGUI::evaluation (   $details = 0)

Definition at line 360 of file class.ilSurveyEvaluationGUI.php.

References $_GET, $_SESSION, $data, ilObjSurveyAccess\_hasEvaluationAccess(), SurveyQuestion\_instanciateQuestionGUI(), checkAnonymizedEvaluationAccess(), EVALUATION_ACCESS_ALL, EVALUATION_ACCESS_OFF, EVALUATION_ACCESS_PARTICIPANTS, ilUtil\prepareFormOutput(), and ilUtil\sendFailure().

Referenced by checkAnonymizedEvaluationAccess(), checkEvaluationAccess(), and evaluationdetails().

{
global $ilUser;
global $rbacsystem;
global $ilias;
if (!$rbacsystem->checkAccess("read",$_GET["ref_id"]))
{
ilUtil::sendFailure($this->lng->txt("permission_denied"));
return;
}
switch ($this->object->getEvaluationAccess())
{
if (!$rbacsystem->checkAccess("write", $_GET["ref_id"]))
{
ilUtil::sendFailure($this->lng->txt("permission_denied"));
return;
}
break;
include_once "./Modules/Survey/classes/class.ilObjSurveyAccess.php";
if (!($rbacsystem->checkAccess("write",$_GET["ref_id"]) || ilObjSurveyAccess::_hasEvaluationAccess($this->object->getId(), $ilUser->getId())))
{
ilUtil::sendFailure($this->lng->txt("permission_denied"));
return;
}
break;
if (($this->object->getAnonymize() == 1) && ($_SESSION["anon_evaluation_access"] != $_GET["ref_id"]))
{
return;
}
break;
}
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_svy_evaluation.html", "Modules/Survey");
$questions =& $this->object->getSurveyQuestions();
$data = array();
$counter = 1;
foreach ($questions as $qdata)
{
include_once "./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
$question_gui = SurveyQuestion::_instanciateQuestionGUI($qdata["question_id"]);
$question = $question_gui->object;
$c = $question->getCumulatedResultData($this->object->getSurveyId(), $counter);
if (is_array($c[0]))
{
foreach ($c as $a)
{
array_push($data, $a);
}
}
else
{
array_push($data, $c);
}
$counter++;
if ($details)
{
$detail = $question_gui->getCumulatedResultsDetails($this->object->getSurveyId(), $counter-1);
$this->tpl->setCurrentBlock("detail");
$this->tpl->setVariable("DETAIL", $detail);
$this->tpl->parseCurrentBlock();
}
}
$exporttypes = array(
"excel" => $this->lng->txt('exp_type_excel'),
"csv" => $this->lng->txt('exp_type_csv')
);
foreach ($exporttypes as $key => $value)
{
$this->tpl->setCurrentBlock('exportoption');
$this->tpl->setVariable('OPTION_VALUE', $key);
$this->tpl->setVariable('OPTION_TITLE', ilUtil::prepareFormOutput($value));
$this->tpl->parseCurrentBlock();
}
$labeldata = array(
array("title" => $this->lng->txt('export_label_only'), 'value' => 'label_only'),
array("title" => $this->lng->txt('export_title_only'), 'value' => 'title_only'),
array("title" => $this->lng->txt('export_title_label'), 'value' => 'title_label')
);
foreach ($labeldata as $label)
{
$this->tpl->setCurrentBlock("label_option");
$this->tpl->setVariable("LABEL_VALUE", $label['value']);
$this->tpl->setVariable("LABEL_TEXT", ilUtil::prepareFormOutput($label['title']));
$this->tpl->parseCurrentBlock();
}
if ($details)
{
$this->tpl->setVariable('SUBMIT_CMD', 'exportDetailData');
}
else
{
$this->tpl->setVariable('SUBMIT_CMD', 'exportData');
}
$this->tpl->setVariable('SUBMIT_VALUE', $this->lng->txt("export"));
include_once "./Modules/Survey/classes/tables/class.ilSurveyResultsCumulatedTableGUI.php";
$table_gui = new ilSurveyResultsCumulatedTableGUI($this, 'evaluation', $detail);
$table_gui->setData($data);
$this->tpl->setVariable('CUMULATED', $table_gui->getHTML());
$this->tpl->addCss("./Modules/Survey/templates/default/survey_print.css", "print");
$this->tpl->setVariable('FORMACTION', $this->ctrl->getFormAction($this, 'evaluation'));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::evaluationdetails ( )

Show the detailed evaluation.

Show the detailed evaluation

private

Definition at line 171 of file class.ilSurveyEvaluationGUI.php.

References evaluation().

{
$this->evaluation(1);
}

+ Here is the call graph for this function:

ilSurveyEvaluationGUI::evaluationuser ( )

Print the survey evaluation for a selected user.

Print the survey evaluation for a selected user

private

Definition at line 644 of file class.ilSurveyEvaluationGUI.php.

References $_POST, $data, $ilLog, $results, exportUserSpecificResults(), ilUtil\prepareFormOutput(), ilUtil\sendFailure(), ilUtil\sendInfo(), and ilTable2GUI\setData().

{
global $ilAccess, $ilLog;
if (!$ilAccess->checkAccess("write", "", $this->object->getRefId()))
{
ilUtil::sendFailure($this->lng->txt("no_permission"), TRUE);
$this->ctrl->redirectByClass("ilObjSurveyGUI", "infoScreen");
}
if (!is_array($_POST))
{
$_POST = array();
}
if (array_key_exists("export_format", $_POST))
{
return $this->exportUserSpecificResults($_POST["export_format"], $_POST['export_label']);
}
$this->tpl->addCss("./Modules/Survey/templates/default/survey_print.css", "print");
$userResults =& $this->object->getUserSpecificResults();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.il_svy_svy_evaluation_user.html", "Modules/Survey");
$questions =& $this->object->getSurveyQuestions(true);
$participants =& $this->object->getSurveyParticipants();
$tabledata = array();
foreach ($participants as $data)
{
$questioncounter = 1;
$question = "";
$results = "";
$first = true;
foreach ($questions as $question_id => $question_data)
{
$found = $userResults[$question_id][$data["active_id"]];
$text = "";
if (is_array($found))
{
$text = implode("<br />", $found);
}
else
{
$text = $found;
}
if (strlen($text) == 0) $text = $this->lng->txt("skipped");
$wt = $this->object->getWorkingtimeForParticipant($data['active_id']);
if ($first)
{
array_push($tabledata, array(
'username' => $data["sortname"],
'gender' => $data["gender"],
'question' => $questioncounter++ . ". " . $question_data["title"],
'results' => $text,
'workingtime' => $wt
));
$first = false;
}
else
{
array_push($tabledata, array(
'username' => " ",
'gender' => " ",
'question' => $questioncounter++ . ". " . $question_data["title"],
'results' => $text,
'workingtime' => null
));
}
}
}
$this->tpl->setCurrentBlock("generic_css");
$this->tpl->setVariable("LOCATION_GENERIC_STYLESHEET", "./Modules/Survey/templates/default/evaluation_print.css");
$this->tpl->setVariable("MEDIA_GENERIC_STYLESHEET", "print");
$this->tpl->parseCurrentBlock();
$labeldata = array(
array("title" => $this->lng->txt('export_label_only'), 'value' => 'label_only'),
array("title" => $this->lng->txt('export_title_only'), 'value' => 'title_only'),
array("title" => $this->lng->txt('export_title_label'), 'value' => 'title_label')
);
foreach ($labeldata as $label)
{
$this->tpl->setCurrentBlock("label_option");
$this->tpl->setVariable("LABEL_VALUE", $label['value']);
$this->tpl->setVariable("LABEL_TEXT", ilUtil::prepareFormOutput($label['title']));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("adm_content");
$this->tpl->setVariable("EXPORT_DATA", $this->lng->txt("export_data_as"));
$this->tpl->setVariable("TEXT_EXCEL", $this->lng->txt("exp_type_excel"));
$this->tpl->setVariable("TEXT_CSV", $this->lng->txt("exp_type_csv"));
$this->tpl->setVariable("BTN_EXPORT", $this->lng->txt("export"));
$this->tpl->setVariable("BTN_PRINT", $this->lng->txt("print"));
$this->tpl->setVariable("FORM_ACTION", $this->ctrl->getFormAction($this, "evaluationuser"));
$this->tpl->setVariable("PRINT_ACTION", $this->ctrl->getFormAction($this, "evaluationuser"));
$this->tpl->setVariable("CMD_EXPORT", "evaluationuser");
include_once "./Modules/Survey/classes/tables/class.ilSurveyResultsUserTableGUI.php";
$table_gui = new ilSurveyResultsUserTableGUI($this, 'evaluationuser', $this->object->getAnonymize());
$table_gui->setData($tabledata);
$this->tpl->setVariable('TABLE', $table_gui->getHTML());
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

& ilSurveyEvaluationGUI::executeCommand ( )

execute command

Definition at line 65 of file class.ilSurveyEvaluationGUI.php.

References $cmd, $ret, and getCommand().

{
$cmd = $this->ctrl->getCmd();
$next_class = $this->ctrl->getNextClass($this);
$cmd = $this->getCommand($cmd);
switch($next_class)
{
default:
$ret =& $this->$cmd();
break;
}
return $ret;
}

+ Here is the call graph for this function:

ilSurveyEvaluationGUI::exportCumulatedResults (   $details = 0)

Definition at line 176 of file class.ilSurveyEvaluationGUI.php.

References $_POST, $data, $separator, ilExcelUtils\_convert_text(), SurveyQuestion\_instanciateQuestion(), ilUtil\deliverData(), ilUtil\deliverFile(), exit, ilUtil\getASCIIFilename(), ilUtil\ilTempnam(), TYPE_SPSS, and TYPE_XLS.

Referenced by exportData(), and exportDetailData().

{
$format_bold = "";
$format_percent = "";
$format_datetime = "";
$format_title = "";
$surveyname = ilUtil::getASCIIFilename(preg_replace("/\s/", "_", $this->object->getTitle()));
switch ($_POST["export_format"])
{
case TYPE_XLS:
include_once "./Services/Excel/classes/class.ilExcelWriterAdapter.php";
$excelfile = ilUtil::ilTempnam();
$adapter = new ilExcelWriterAdapter($excelfile, FALSE);
$workbook = $adapter->getWorkbook();
$workbook->setVersion(8); // Use Excel97/2000 Format
// Creating a worksheet
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_percent =& $workbook->addFormat();
$format_percent->setNumFormat("0.00%");
$format_datetime =& $workbook->addFormat();
$format_datetime->setNumFormat("DD/MM/YYYY hh:mm:ss");
$format_title =& $workbook->addFormat();
$format_title->setBold();
$format_title->setColor('black');
$format_title->setPattern(1);
$format_title->setFgColor('silver');
$format_title->setAlign('center');
// Creating a worksheet
include_once ("./Services/Excel/classes/class.ilExcelUtils.php");
$mainworksheet =& $workbook->addWorksheet();
$column = 0;
switch ($_POST['export_label'])
{
case 'label_only':
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("label"), $_POST["export_format"]), $format_bold);
break;
case 'title_only':
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("title"), $_POST["export_format"]), $format_bold);
break;
default:
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("title"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("label"), $_POST["export_format"]), $format_bold);
break;
}
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("question"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("question_type"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("users_answered"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("users_skipped"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("mode"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("mode_text"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("mode_nr_of_selections"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("median"), $_POST["export_format"]), $format_bold);
$column++;
$mainworksheet->writeString(0, $column, ilExcelUtils::_convert_text($this->lng->txt("arithmetic_mean"), $_POST["export_format"]), $format_bold);
break;
case (TYPE_SPSS):
$csvfile = array();
$csvrow = array();
switch ($_POST['export_label'])
{
case 'label_only':
array_push($csvrow, $this->lng->txt("label"));
break;
case 'title_only':
array_push($csvrow, $this->lng->txt("title"));
break;
default:
array_push($csvrow, $this->lng->txt("title"));
array_push($csvrow, $this->lng->txt("label"));
break;
}
array_push($csvrow, $this->lng->txt("question"));
array_push($csvrow, $this->lng->txt("question_type"));
array_push($csvrow, $this->lng->txt("users_answered"));
array_push($csvrow, $this->lng->txt("users_skipped"));
array_push($csvrow, $this->lng->txt("mode"));
//array_push($csvrow, $this->lng->txt("mode_text"));
array_push($csvrow, $this->lng->txt("mode_nr_of_selections"));
array_push($csvrow, $this->lng->txt("median"));
array_push($csvrow, $this->lng->txt("arithmetic_mean"));
array_push($csvfile, $csvrow);
break;
}
$questions =& $this->object->getSurveyQuestions();
$counter++;
foreach ($questions as $data)
{
include_once "./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
$question = SurveyQuestion::_instanciateQuestion($data["question_id"]);
$eval = $this->object->getCumulatedResults($question);
switch ($_POST["export_format"])
{
case TYPE_XLS:
$counter = $question->setExportCumulatedXLS($mainworksheet, $format_title, $format_bold, $eval, $counter, $_POST['export_label']);
break;
case (TYPE_SPSS):
$csvrows =& $question->setExportCumulatedCVS($eval, $_POST['export_label']);
foreach ($csvrows as $csvrow)
{
array_push($csvfile, $csvrow);
}
break;
}
if ($details)
{
switch ($_POST["export_format"])
{
case TYPE_XLS:
$question->setExportDetailsXLS($workbook, $format_title, $format_bold, $eval, $_POST['export_label']);
break;
}
}
}
switch ($_POST["export_format"])
{
case TYPE_XLS:
// Let's send the file
$workbook->close();
ilUtil::deliverFile($excelfile, "$surveyname.xls", "application/vnd.ms-excel");
exit();
break;
case TYPE_SPSS:
$csv = "";
$separator = ";";
foreach ($csvfile as $csvrow)
{
$csvrow =& $this->object->processCSVRow($csvrow, TRUE, $separator);
$csv .= join($csvrow, $separator) . "\n";
}
include_once "./Services/Utilities/classes/class.ilUtil.php";
ilUtil::deliverData($csv, "$surveyname.csv");
exit();
break;
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::exportData ( )

Definition at line 328 of file class.ilSurveyEvaluationGUI.php.

References $_POST, and exportCumulatedResults().

{
if (strlen($_POST["export_format"]))
{
return;
}
else
{
$this->ctrl->redirect($this, 'evaluation');
}
}

+ Here is the call graph for this function:

ilSurveyEvaluationGUI::exportDetailData ( )

Definition at line 341 of file class.ilSurveyEvaluationGUI.php.

References $_POST, and exportCumulatedResults().

{
if (strlen($_POST["export_format"]))
{
return;
}
else
{
$this->ctrl->redirect($this, 'evaluation');
}
}

+ Here is the call graph for this function:

ilSurveyEvaluationGUI::exportUserSpecificResults (   $export_format,
  $export_label = "" 
)

Export the user specific results for the survey.

Export the user specific results for the survey

private

Definition at line 476 of file class.ilSurveyEvaluationGUI.php.

References $_POST, $ilLog, $row, $separator, ilExcelUtils\_convert_text(), SurveyQuestion\_instanciateQuestion(), ANONYMIZE_OFF, ilUtil\deliverData(), ilUtil\deliverFile(), exit, ilUtil\getASCIIFilename(), ilUtil\ilTempnam(), TYPE_SPSS, and TYPE_XLS.

Referenced by evaluationuser().

{
global $ilLog;
$surveyname = ilUtil::getASCIIFilename(preg_replace("/\s/", "_", $this->object->getTitle()));
$csvfile = array();
$csvrow = array();
$questions = array();
$questions =& $this->object->getSurveyQuestions(true);
array_push($csvrow, $this->lng->txt("username"));
if ($this->object->canExportSurveyCode())
{
array_push($csvrow, $this->lng->txt("codes"));
}
if ($this->object->getAnonymize() == ANONYMIZE_OFF)
{
array_push($csvrow, $this->lng->txt("gender"));
}
$cellcounter = 1;
foreach ($questions as $question_id => $question_data)
{
include_once "./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
$question = SurveyQuestion::_instanciateQuestion($question_data["question_id"]);
$question->addUserSpecificResultsExportTitles($csvrow, $export_label);
$questions[$question_data["question_id"]] = $question;
}
array_push($csvfile, $csvrow);
$participants =& $this->object->getSurveyFinishedIds();
foreach ($participants as $user_id)
{
$resultset =& $this->object->getEvaluationByUser($questions, $user_id);
$csvrow = array();
array_push($csvrow, $resultset["name"]);
if ($this->object->canExportSurveyCode())
{
array_push($csvrow, $user_id);
}
if ($this->object->getAnonymize() == ANONYMIZE_OFF)
{
array_push($csvrow, $resultset["gender"]);
}
foreach ($questions as $question_id => $question)
{
$question->addUserSpecificResultsData($csvrow, $resultset);
}
$wt = $this->object->getWorkingtimeForParticipant($user_id);
array_push($csvrow, $wt);
array_push($csvfile, $csvrow);
}
switch ($export_format)
{
case TYPE_XLS:
include_once "./Services/Excel/classes/class.ilExcelWriterAdapter.php";
$excelfile = ilUtil::ilTempnam();
$adapter = new ilExcelWriterAdapter($excelfile, FALSE);
$workbook = $adapter->getWorkbook();
$workbook->setVersion(8); // Use Excel97/2000 Format
// Creating a worksheet
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_percent =& $workbook->addFormat();
$format_percent->setNumFormat("0.00%");
$format_datetime =& $workbook->addFormat();
$format_datetime->setNumFormat("DD/MM/YYYY hh:mm:ss");
$format_title =& $workbook->addFormat();
$format_title->setBold();
$format_title->setColor('black');
$format_title->setPattern(1);
$format_title->setFgColor('silver');
$format_title_plain =& $workbook->addFormat();
$format_title_plain->setColor('black');
$format_title_plain->setPattern(1);
$format_title_plain->setFgColor('silver');
// Creating a worksheet
$pages = floor((count($csvfile[0])) / 250) + 1;
$worksheets = array();
for ($i = 0; $i < $pages; $i++)
{
$worksheets[$i] =& $workbook->addWorksheet();
}
$row = 0;
include_once "./Services/Excel/classes/class.ilExcelUtils.php";
$contentstartrow = 0;
foreach ($csvfile as $csvrow)
{
$col = 0;
if ($row == 0)
{
$worksheet = 0;
$mainworksheet =& $worksheets[$worksheet];
foreach ($csvrow as $text)
{
if (is_array($text))
{
$textcount = 0;
foreach ($text as $string)
{
$mainworksheet->writeString($row + $textcount, $col, ilExcelUtils::_convert_text($string, $_POST["export_format"]), $format_title);
$textcount++;
$contentstartrow = max($contentstartrow, $textcount);
}
$col++;
}
else
{
$mainworksheet->writeString($row, $col++, ilExcelUtils::_convert_text($text, $_POST["export_format"]), $format_title);
}
if ($col % 251 == 0)
{
$worksheet++;
$col = 1;
$mainworksheet =& $worksheets[$worksheet];
$mainworksheet->writeString($row, 0, ilExcelUtils::_convert_text($csvrow[0], $_POST["export_format"]), $format_title);
}
}
$mainworksheet->writeString($row, $col++, ilExcelUtils::_convert_text($this->lng->txt('workingtime'), $_POST['export_format']), $format_title);
$row = $contentstartrow;
}
else
{
$worksheet = 0;
$mainworksheet =& $worksheets[$worksheet];
foreach ($csvrow as $text)
{
if (is_numeric($text))
{
$mainworksheet->writeNumber($row, $col++, $text);
}
else
{
$mainworksheet->writeString($row, $col++, ilExcelUtils::_convert_text($text, $_POST["export_format"]));
}
if ($col % 251 == 0)
{
$worksheet++;
$col = 1;
$mainworksheet =& $worksheets[$worksheet];
$mainworksheet->writeString($row, 0, ilExcelUtils::_convert_text($csvrow[0], $_POST["export_format"]));
}
}
}
$row++;
}
$workbook->close();
ilUtil::deliverFile($excelfile, "$surveyname.xls", "application/vnd.ms-excel");
exit();
break;
case TYPE_SPSS:
$csv = "";
$separator = ";";
foreach ($csvfile as $csvrow)
{
$csvrow =& str_replace("\n", " ", $this->object->processCSVRow($csvrow, TRUE, $separator));
$csv .= join($csvrow, $separator) . "\n";
}
include_once "./Services/Utilities/classes/class.ilUtil.php";
ilUtil::deliverData($csv, "$surveyname.csv");
exit();
break;
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::getCommand (   $cmd)

Definition at line 80 of file class.ilSurveyEvaluationGUI.php.

References $cmd.

Referenced by executeCommand().

{
return $cmd;
}

+ Here is the caller graph for this function:

ilSurveyEvaluationGUI::ilSurveyEvaluationGUI (   $a_object)

ilSurveyEvaluationGUI constructor

The constructor takes possible arguments an creates an instance of the ilSurveyEvaluationGUI object.

Parameters
object$a_objectAssociated ilObjSurvey class public

Definition at line 52 of file class.ilSurveyEvaluationGUI.php.

References $ilCtrl, $lng, and $tpl.

{
global $lng, $tpl, $ilCtrl;
$this->lng =& $lng;
$this->tpl =& $tpl;
$this->ctrl =& $ilCtrl;
$this->object =& $a_object;
}
ilSurveyEvaluationGUI::outChart ( )

Creates an image visualising the results of a question.

public

Definition at line 749 of file class.ilSurveyEvaluationGUI.php.

References $_GET.

{
$survey_id = $_GET["survey"];
$question_id = $_GET["question"];
$type = (strlen($_GET["type"])) ? $_GET["type"] : "";
$question =& $this->object->_instanciateQuestion($question_id);
$question->outChart($survey_id, $type);
}
ilSurveyEvaluationGUI::printEvaluation ( )

Definition at line 354 of file class.ilSurveyEvaluationGUI.php.

References ilUtil\sendInfo().

{
ilUtil::sendInfo($this->lng->txt('use_browser_print_function'), true);
$this->ctrl->redirect($this, 'evaluation');
}

+ Here is the call graph for this function:

Field Documentation

ilSurveyEvaluationGUI::$ctrl

Definition at line 42 of file class.ilSurveyEvaluationGUI.php.

ilSurveyEvaluationGUI::$lng

Definition at line 40 of file class.ilSurveyEvaluationGUI.php.

Referenced by ilSurveyEvaluationGUI().

ilSurveyEvaluationGUI::$object

Definition at line 39 of file class.ilSurveyEvaluationGUI.php.

ilSurveyEvaluationGUI::$tpl

Definition at line 41 of file class.ilSurveyEvaluationGUI.php.

Referenced by ilSurveyEvaluationGUI().


The documentation for this class was generated from the following file: