ILIAS  Release_4_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilMatchingWizardInputGUI Class Reference

This class represents a single choice wizard property in a property form. More...

+ Inheritance diagram for ilMatchingWizardInputGUI:
+ Collaboration diagram for ilMatchingWizardInputGUI:

Public Member Functions

 __construct ($a_title="", $a_postvar="")
 Constructor.
 setSuffixes ($a_suffixes)
 Set Accepted Suffixes.
 getSuffixes ()
 Get Accepted Suffixes.
 setHideImages ($a_hide)
 Set hide images.
 setValues ($a_values)
 Set Values.
 getValues ()
 Get Values.
 setTextName ($a_value)
 setImageName ($a_value)
 setQuestionObject ($a_value)
 Set question object.
 getQuestionObject ()
 Get question object.
 setAllowMove ($a_allow_move)
 Set allow move.
 getAllowMove ()
 Get allow move.
 setValue ($a_value)
 Set Value.
 checkInput ()
 Check input, strip slashes etc.
 insert (&$a_tpl)
 Insert property html.
- Public Member Functions inherited from ilTextInputGUI
 getValue ()
 Get Value.
 setValidationFailureMessage ($a_msg)
 Set message string for validation failure.
 getValidationFailureMessage ()
 setValidationRegexp ($a_value)
 Set validation regexp.
 getValidationRegexp ()
 Get validation regexp.
 setMaxLength ($a_maxlength)
 Set Max Length.
 getMaxLength ()
 Get Max Length.
 setSize ($a_size)
 Set Size.
 setInlineStyle ($a_style)
 Set inline style.
 getInlineStyle ()
 Get inline style.
 setValueByArray ($a_values)
 Set value by array.
 getSize ()
 Get Size.
 setSuffix ($a_value)
 Set suffix.
 getSuffix ()
 Get suffix.
 setInputType ($a_type)
 set input type
 getInputType ()
 get input type
 setSubmitFormOnEnter ($a_val)
 Set submit form on enter.
 getSubmitFormOnEnter ()
 Get submit form on enter.
 getDataSource ()
 get datasource link for YUI autocomplete
 setDataSource ($href)
 set datasource link for YUI autocomplete
 getDataSourceSchema ()
 get datasource schema for YUI autocomplete
 setDataSourceSchema ($ds)
 set datasource schema for YUI autocomplete
 getDataSourceResultFormat ()
 get data result format callback for YUI autocomplete
 setDataSourceResultFormat ($callback)
 set data result format callback for YUI autocomplete
 setDataSourceDelimiter ($ar)
 set data delimiter array
 getDataSourceDelimiter ()
 get data delimiter array
 getTableFilterHTML ()
 Get HTML for table filter.
 getToolbarHTML ()
 Get HTML for toolbar.
- Public Member Functions inherited from ilSubEnabledFormPropertyGUI
 addSubItem ($a_item)
 Add Subitem.
 getSubItems ()
 Get Subitems.
 checkSubItemsInput ()
 Check SubItems.
 getSubForm ()
 Get sub form html.
 getItemByPostVar ($a_post_var)
 Get item by post var.
- Public Member Functions inherited from ilFormPropertyGUI
executeCommand ()
 Execute command.
 getType ()
 Get Type.
 setTitle ($a_title)
 Set Title.
 getTitle ()
 Get Title.
 setPostVar ($a_postvar)
 Set Post Variable.
 getPostVar ()
 Get Post Variable.
 getFieldId ()
 Get Post Variable.
 setInfo ($a_info)
 Set Information Text.
 getInfo ()
 Get Information Text.
 setAlert ($a_alert)
 Set Alert Text.
 getAlert ()
 Get Alert Text.
 setRequired ($a_required)
 Set Required.
 getRequired ()
 Get Required.
 setDisabled ($a_disabled)
 Set Disabled.
 getDisabled ()
 Get Disabled.
 setParentForm ($a_parentform)
 Set Parent Form.
 getParentForm ()
 Get Parent Form.
 setParent ($a_val)
 Set Parent GUI object.
 getParent ()
 Get Parent GUI object.
 hideSubForm ()
 Sub form hidden on init?
 setHiddenTitle ($a_val)
 Set hidden title (for screenreaders)
 getHiddenTitle ()
 Get hidden title.
 serializeData ()
 serialize data
 unserializeData ($a_data)
 unserialize data
 writeToSession ()
 Write to session.
 clearFromSession ()
 Clear session value.
 readFromSession ()
 Read from session.
 getHiddenTag ($a_post_var, $a_value)
 Get hidden tag (used for disabled properties)

Protected Attributes

 $text_name = ''
 $image_name = ''
 $values = array()
 $allowMove = false
 $qstObject = null
 $suffixes = array()
 $hideImages = false
- Protected Attributes inherited from ilTextInputGUI
 $value
 $maxlength = 200
 $size = 40
 $validationRegexp
 $validationFailureMessage = ''
 $suffix
 $style_css
 $yui_dataSource
 $yui_dataSchema
 $yui_formatCallback
 $yui_delimiterarray = array()
 $submit_form_on_enter = false
- Protected Attributes inherited from ilSubEnabledFormPropertyGUI
 $sub_items = array()
- Protected Attributes inherited from ilFormPropertyGUI
 $type
 $title
 $postvar
 $info
 $alert
 $required = false
 $parentgui
 $parentform

Additional Inherited Members

- Protected Member Functions inherited from ilTextInputGUI
 render ($a_mode="")
 Render item.

Detailed Description

This class represents a single choice wizard property in a property form.

Author
Helmut Schottmüller ilias.nosp@m.@aur.nosp@m.ealis.nosp@m..de
Version
Id:
class.ilMatchingWizardInputGUI.php 26664 2010-11-22 08:15:55Z hschottm

Definition at line 33 of file class.ilMatchingWizardInputGUI.php.

Constructor & Destructor Documentation

ilMatchingWizardInputGUI::__construct (   $a_title = "",
  $a_postvar = "" 
)

Constructor.

Parameters
string$a_titleTitle
string$a_postvarPost Variable

Reimplemented from ilTextInputGUI.

Definition at line 49 of file class.ilMatchingWizardInputGUI.php.

References $lng, ilTextInputGUI\setSize(), and setSuffixes().

{
global $lng;
parent::__construct($a_title, $a_postvar);
$this->setSuffixes(array("jpg", "jpeg", "png", "gif"));
$this->setSize('50');
$this->text_name = $lng->txt('answer_text');
$this->image_name = $lng->txt('answer_image');
}

+ Here is the call graph for this function:

Member Function Documentation

ilMatchingWizardInputGUI::checkInput ( )

Check input, strip slashes etc.

set alert, if input is not ok.

Returns
boolean Input ok, true/false

Reimplemented from ilTextInputGUI.

Definition at line 187 of file class.ilMatchingWizardInputGUI.php.

References $_POST, $error, $filename, $hideImages, $lng, ilTextInputGUI\$suffix, ilObjAdvancedEditing\_getUsedHTMLTagsAsString(), ilSubEnabledFormPropertyGUI\checkSubItemsInput(), ilFormPropertyGUI\getPostVar(), ilFormPropertyGUI\getRequired(), getSuffixes(), ilFormPropertyGUI\setAlert(), ilUtil\stripSlashesRecursive(), and ilUtil\virusHandling().

{
global $lng;
include_once "./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
$foundvalues = $_POST[$this->getPostVar()];
if (is_array($foundvalues))
{
// check answers
if (is_array($foundvalues['answer']))
{
foreach ($foundvalues['answer'] as $aidx => $answervalue)
{
if (((strlen($answervalue)) == 0) && (strlen($foundvalues['imagename'][$aidx]) == 0))
{
$this->setAlert($lng->txt("msg_input_is_required"));
return FALSE;
}
}
}
if (is_array($_FILES) && (!$this->hideImages))
{
if (is_array($_FILES[$this->getPostVar()]['error']['image']))
{
foreach ($_FILES[$this->getPostVar()]['error']['image'] as $index => $error)
{
// error handling
if ($error > 0)
{
switch ($error)
{
case UPLOAD_ERR_INI_SIZE:
$this->setAlert($lng->txt("form_msg_file_size_exceeds"));
return false;
break;
case UPLOAD_ERR_FORM_SIZE:
$this->setAlert($lng->txt("form_msg_file_size_exceeds"));
return false;
break;
case UPLOAD_ERR_PARTIAL:
$this->setAlert($lng->txt("form_msg_file_partially_uploaded"));
return false;
break;
case UPLOAD_ERR_NO_FILE:
if ($this->getRequired())
{
if ((!strlen($foundvalues['imagename'][$index])) && (!strlen($foundvalues['answer'][$index])))
{
$this->setAlert($lng->txt("form_msg_file_no_upload"));
return false;
}
}
break;
case UPLOAD_ERR_NO_TMP_DIR:
$this->setAlert($lng->txt("form_msg_file_missing_tmp_dir"));
return false;
break;
case UPLOAD_ERR_CANT_WRITE:
$this->setAlert($lng->txt("form_msg_file_cannot_write_to_disk"));
return false;
break;
case UPLOAD_ERR_EXTENSION:
$this->setAlert($lng->txt("form_msg_file_upload_stopped_ext"));
return false;
break;
}
}
}
}
else
{
if ($this->getRequired())
{
$this->setAlert($lng->txt("form_msg_file_no_upload"));
return false;
}
}
if (is_array($_FILES[$this->getPostVar()]['tmp_name']['image']))
{
foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
{
$filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
$filename_arr = pathinfo($filename);
$suffix = $filename_arr["extension"];
$mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
$size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
// check suffixes
if (strlen($tmpname) && is_array($this->getSuffixes()))
{
if (!in_array(strtolower($suffix), $this->getSuffixes()))
{
$this->setAlert($lng->txt("form_msg_file_wrong_file_type"));
return false;
}
}
}
}
if (is_array($_FILES[$this->getPostVar()]['tmp_name']['image']))
{
foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
{
$filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
$filename_arr = pathinfo($filename);
$suffix = $filename_arr["extension"];
$mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
$size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
// virus handling
if (strlen($tmpname))
{
$vir = ilUtil::virusHandling($tmpname, $filename);
if ($vir[0] == false)
{
$this->setAlert($lng->txt("form_msg_file_virus_found")."<br />".$vir[1]);
return false;
}
}
}
}
}
}
else
{
$this->setAlert($lng->txt("msg_input_is_required"));
return FALSE;
}
return $this->checkSubItemsInput();
}

+ Here is the call graph for this function:

ilMatchingWizardInputGUI::getAllowMove ( )

Get allow move.

Returns
boolean Allow move

Definition at line 155 of file class.ilMatchingWizardInputGUI.php.

References $allowMove.

Referenced by insert().

{
}

+ Here is the caller graph for this function:

ilMatchingWizardInputGUI::getQuestionObject ( )

Get question object.

Returns
object Value

Definition at line 135 of file class.ilMatchingWizardInputGUI.php.

References $qstObject.

{
}
ilMatchingWizardInputGUI::getSuffixes ( )

Get Accepted Suffixes.

Returns
array Accepted Suffixes

Definition at line 75 of file class.ilMatchingWizardInputGUI.php.

References $suffixes.

Referenced by checkInput(), and insert().

{
}

+ Here is the caller graph for this function:

ilMatchingWizardInputGUI::getValues ( )

Get Values.

Returns
array Values

Definition at line 105 of file class.ilMatchingWizardInputGUI.php.

References $values.

{
return $this->values;
}
ilMatchingWizardInputGUI::insert ( $a_tpl)

Insert property html.

Returns
int Size

Reimplemented from ilTextInputGUI.

Definition at line 330 of file class.ilMatchingWizardInputGUI.php.

References $lng, ilTextInputGUI\$suffix, $tpl, ilTextInputGUI\$value, getAllowMove(), ilFormPropertyGUI\getDisabled(), ilFormPropertyGUI\getFieldId(), ilUtil\getFileSizeInfo(), ilUtil\getImagePath(), ilTextInputGUI\getMaxLength(), ilFormPropertyGUI\getPostVar(), ilTextInputGUI\getSize(), getSuffixes(), and ilUtil\prepareFormOutput().

{
global $lng;
$tpl = new ilTemplate("tpl.prop_matchingwizardinput.html", true, true, "Modules/TestQuestionPool");
$i = 0;
foreach ($this->values as $value)
{
if (!$this->hideImages)
{
if (strlen($value->picture))
{
$imagename = $this->qstObject->getImagePathWeb() . $value->picture;
if ($this->qstObject->getThumbSize())
{
if (@file_exists($this->qstObject->getImagePath() . $this->qstObject->getThumbPrefix() . $value->picture))
{
$imagename = $this->qstObject->getImagePathWeb() . $this->qstObject->getThumbPrefix() . $value->picture;
}
}
$tpl->setCurrentBlock('image');
$tpl->setVariable('SRC_IMAGE', $imagename);
$tpl->setVariable('IMAGE_NAME', $value->picture);
$tpl->setVariable('ALT_IMAGE', ilUtil::prepareFormOutput($value->text));
$tpl->setVariable("TXT_DELETE_EXISTING", $lng->txt("delete_existing_file"));
$tpl->setVariable("IMAGE_ROW_NUMBER", $i);
$tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock('addimage');
$tpl->setVariable("IMAGE_ID", $this->getPostVar() . "[image][$i]");
$tpl->setVariable("IMAGE_SUBMIT", $lng->txt("upload"));
$tpl->setVariable("IMAGE_ROW_NUMBER", $i);
$tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
$tpl->parseCurrentBlock();
}
if (is_object($value))
{
$tpl->setCurrentBlock("prop_text_propval");
$tpl->setVariable("PROPERTY_VALUE", ilUtil::prepareFormOutput($value->text));
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock('singleline');
$tpl->setVariable("SIZE", $this->getSize());
$tpl->setVariable("SINGLELINE_ID", $this->getPostVar() . "[answer][$i]");
$tpl->setVariable("SINGLELINE_ROW_NUMBER", $i);
$tpl->setVariable("SINGLELINE_POST_VAR", $this->getPostVar());
$tpl->setVariable("MAXLENGTH", $this->getMaxLength());
if ($this->getDisabled())
{
$tpl->setVariable("DISABLED_SINGLELINE", " disabled=\"disabled\"");
}
$tpl->parseCurrentBlock();
if ($this->getAllowMove())
{
$tpl->setCurrentBlock("move");
$tpl->setVariable("CMD_UP", "cmd[up" . $this->getFieldId() . "][$i]");
$tpl->setVariable("CMD_DOWN", "cmd[down" . $this->getFieldId() . "][$i]");
$tpl->setVariable("ID", $this->getPostVar() . "[$i]");
$tpl->setVariable("UP_BUTTON", ilUtil::getImagePath('a_up.gif'));
$tpl->setVariable("DOWN_BUTTON", ilUtil::getImagePath('a_down.gif'));
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock("row");
$class = ($i % 2 == 0) ? "even" : "odd";
if ($i == 0) $class .= " first";
if ($i == count($this->values)-1) $class .= " last";
$tpl->setVariable("ROW_CLASS", $class);
$tpl->setVariable("POST_VAR", $this->getPostVar());
$tpl->setVariable("ROW_NUMBER", $i+1);
$tpl->setVariable("ROW_IDENTIFIER", $value->identifier);
$tpl->setVariable("ID", $this->getPostVar() . "[answer][$i]");
$tpl->setVariable("CMD_ADD", "cmd[add" . $this->getFieldId() . "][$i]");
$tpl->setVariable("CMD_REMOVE", "cmd[remove" . $this->getFieldId() . "][$i]");
$tpl->setVariable("ADD_BUTTON", ilUtil::getImagePath('edit_add.png'));
$tpl->setVariable("REMOVE_BUTTON", ilUtil::getImagePath('edit_remove.png'));
$tpl->parseCurrentBlock();
$i++;
}
if (!$this->hideImages)
{
if (is_array($this->getSuffixes()))
{
$suff_str = $delim = "";
foreach($this->getSuffixes() as $suffix)
{
$suff_str.= $delim.".".$suffix;
$delim = ", ";
}
$tpl->setCurrentBlock('allowed_image_suffixes');
$tpl->setVariable("TXT_ALLOWED_SUFFIXES", $lng->txt("file_allowed_suffixes")." ".$suff_str);
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock("image_heading");
$tpl->setVariable("ANSWER_IMAGE", $this->image_name);
$tpl->setVariable("TXT_MAX_SIZE", ilUtil::getFileSizeInfo());
$tpl->parseCurrentBlock();
}
$tpl->setVariable("ELEMENT_ID", $this->getPostVar());
$tpl->setVariable("TEXT_YES", $lng->txt('yes'));
$tpl->setVariable("TEXT_NO", $lng->txt('no'));
$tpl->setVariable("DELETE_IMAGE_HEADER", $lng->txt('delete_image_header'));
$tpl->setVariable("DELETE_IMAGE_QUESTION", $lng->txt('delete_image_question'));
$tpl->setVariable("ANSWER_TEXT", $this->text_name);
$tpl->setVariable("NUMBER_TEXT", $lng->txt('row'));
$tpl->setVariable("COMMANDS_TEXT", $lng->txt('actions'));
$a_tpl->setCurrentBlock("prop_generic");
$a_tpl->setVariable("PROP_GENERIC", $tpl->get());
$a_tpl->parseCurrentBlock();
/*
global $tpl;
include_once "./Services/YUI/classes/class.ilYuiUtil.php";
ilYuiUtil::initDomEvent();
$tpl->addJavascript("./Modules/TestQuestionPool/templates/default/matchingwizard.js");*/
}

+ Here is the call graph for this function:

ilMatchingWizardInputGUI::setAllowMove (   $a_allow_move)

Set allow move.

Parameters
boolean$a_allow_moveAllow move

Definition at line 145 of file class.ilMatchingWizardInputGUI.php.

{
$this->allowMove = $a_allow_move;
}
ilMatchingWizardInputGUI::setHideImages (   $a_hide)

Set hide images.

Parameters
array$a_hideHide images

Definition at line 85 of file class.ilMatchingWizardInputGUI.php.

Referenced by assMatchingQuestionGUI\editQuestion().

{
$this->hideImages = $a_hide;
}

+ Here is the caller graph for this function:

ilMatchingWizardInputGUI::setImageName (   $a_value)

Definition at line 115 of file class.ilMatchingWizardInputGUI.php.

{
$this->image_name = $a_value;
}
ilMatchingWizardInputGUI::setQuestionObject (   $a_value)

Set question object.

Parameters
object$a_valuetest object

Definition at line 125 of file class.ilMatchingWizardInputGUI.php.

{
$this->qstObject =& $a_value;
}
ilMatchingWizardInputGUI::setSuffixes (   $a_suffixes)

Set Accepted Suffixes.

Parameters
array$a_suffixesAccepted Suffixes

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

Referenced by __construct().

{
$this->suffixes = $a_suffixes;
}

+ Here is the caller graph for this function:

ilMatchingWizardInputGUI::setTextName (   $a_value)

Definition at line 110 of file class.ilMatchingWizardInputGUI.php.

{
$this->text_name = $a_value;
}
ilMatchingWizardInputGUI::setValue (   $a_value)

Set Value.

Parameters
string$a_valueValue

Reimplemented from ilTextInputGUI.

Definition at line 165 of file class.ilMatchingWizardInputGUI.php.

References ilTextInputGUI\$value.

{
$this->values = array();
if (is_array($a_value))
{
if (is_array($a_value['answer']))
{
foreach ($a_value['answer'] as $index => $value)
{
include_once "./Modules/TestQuestionPool/classes/class.assAnswerMatchingTerm.php";
$answer = new assAnswerMatchingTerm($value, $a_value['imagename'][$index], $a_value['identifier'][$index]);
array_push($this->values, $answer);
}
}
}
}
ilMatchingWizardInputGUI::setValues (   $a_values)

Set Values.

Parameters
array$a_valueValue

Definition at line 95 of file class.ilMatchingWizardInputGUI.php.

{
$this->values = $a_values;
}

Field Documentation

ilMatchingWizardInputGUI::$allowMove = false
protected

Definition at line 38 of file class.ilMatchingWizardInputGUI.php.

Referenced by getAllowMove().

ilMatchingWizardInputGUI::$hideImages = false
protected

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

Referenced by checkInput().

ilMatchingWizardInputGUI::$image_name = ''
protected

Definition at line 36 of file class.ilMatchingWizardInputGUI.php.

ilMatchingWizardInputGUI::$qstObject = null
protected

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

Referenced by getQuestionObject().

ilMatchingWizardInputGUI::$suffixes = array()
protected

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

Referenced by getSuffixes().

ilMatchingWizardInputGUI::$text_name = ''
protected

Definition at line 35 of file class.ilMatchingWizardInputGUI.php.

ilMatchingWizardInputGUI::$values = array()
protected

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

Referenced by getValues().


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