1<?php
2/* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */
3
4/**
5 * Interface ilGuiAnswerScoringAdjustable
6 *
7 * This is the extended interface for questions, which support the relevant object-class methods for post-test-scoring
8 * adjustments. This is the gui-part of the interfaces.
9 *
10 * @see ObjScoringAdjustable
11 * @see ilGuiQuestionScoringAdjustable
12 *
13 * @author		Maximilian Becker <mbecker@databay.de>
14 *
15 * @version		$Id$
16 *
17 * @ingroup 	ModulesTestQuestionPool
18 */
19interface ilGuiAnswerScoringAdjustable
20{
21    /**
22     * Adds the answer specific form parts to a question property form gui.
23     *
24     * @param ilPropertyFormGUI $form
25     *
26     * @return ilPropertyFormGUI
27     */
28    public function populateAnswerSpecificFormPart(ilPropertyFormGUI $form);
29
30    /**
31     * Extracts the answer specific values from $_POST and applies them to the data object.
32     *
33     * @param bool $always If true, a check for form validity is omitted.
34     *
35     * @return void
36     */
37    public function writeAnswerSpecificPostData(ilPropertyFormGUI $form);
38
39    /**
40     * Returns a list of postvars which will be suppressed in the form output when used in scoring adjustment.
41     * The form elements will be shown disabled, so the users see the usual form but can only edit the settings, which
42     * make sense in the given context.
43     *
44     * E.g. array('cloze_type', 'image_filename')
45     *
46     * @return string[]
47     */
48    public function getAfterParticipationSuppressionAnswerPostVars();
49}
50