ILIAS  eassessment Revision 61809
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilExerciseMemberTableGUI Class Reference

Exercise member table. More...

+ Inheritance diagram for ilExerciseMemberTableGUI:
+ Collaboration diagram for ilExerciseMemberTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd, $a_exc, $a_ass_id)
 Constructor.
- Public Member Functions inherited from ilTable2GUI
 __construct ($a_parent_obj, $a_parent_cmd="", $a_template_context="")
 Constructor.
 determineLimit ()
 Determine the limit.
 getSelectableColumns ()
 Get selectable columns.
 determineSelectedColumns ()
 Determine selected columns.
 isColumnSelected ($a_col)
 Is given column selected?
 getSelectedColumns ()
 Get selected columns.
executeCommand ()
 Execute command.
 resetOffset ($a_in_determination=false)
 Reset offset.
 initFilter ()
 Init filter.
 getParentObject ()
 Get parent object.
 getParentCmd ()
 Get parent command.
 setTopAnchor ($a_val)
 Set top anchor.
 getTopAnchor ()
 Get top anchor.
 setNoEntriesText ($a_text)
 Set text for an empty table.
 getNoEntriesText ()
 Get text for an empty table.
 setIsDataTable ($a_val)
 Set is data table.
 getIsDataTable ()
 Get is data table.
 setEnableTitle ($a_enabletitle)
 Set Enable Title.
 getEnableTitle ()
 Get Enable Title.
 setEnableHeader ($a_enableheader)
 Set Enable Header.
 getEnableHeader ()
 Get Enable Header.
 setEnableNumInfo ($a_val)
 Set enable num info.
 getEnableNumInfo ()
 Get enable num info.
 setTitle ($a_title, $a_icon=0, $a_icon_alt=0)
 Set title and title icon.
 setDescription ($a_val)
 Set description.
 getDescription ()
 Get description.
 setOrderField ($a_order_field)
 set order column
 getOrderField ()
 setData ($a_data)
 set table data public
 getData ()
 dataExists ()
 setPrefix ($a_prefix)
 set prefix for sort and offset fields (if you have two or more tables on a page that you want to sort separately) public
 getPrefix ()
 addFilterItem ($a_input_item, $a_optional=false)
 Add filter item.
 addFilterItemByMetaType ($id, $type=self::FILTER_TEXT, $a_optional=false, $caption=NULL)
 Add filter by standard type.
 getFilterItems ($a_optionals=false)
 Get filter items.
 getFilterItemByPostVar ($a_post_var)
 setFilterCols ($a_val)
 Set filter columns.
 getFilterCols ()
 Get filter columns.
 setDisableFilterHiding ($a_val=true)
 Set disable filter hiding.
 getDisableFilterHiding ()
 Get disable filter hiding.
 isFilterSelected ($a_col)
 Is given filter selected?
 getSelectedFilters ()
 Get selected filters.
 determineSelectedFilters ()
 Determine selected filters.
 setCustomPreviousNext ($a_prev_link, $a_next_link)
 Set custom previous/next links.
 setFormAction ($a_form_action)
 Set Form action parameter.
 getFormAction ()
 Get Form action parameter.
 setFormName ($a_formname)
 Set Form name.
 getFormName ()
 Get Form name.
 setId ($a_val)
 Set id.
 getId ()
 Get element id.
 setDisplayAsBlock ($a_val)
 Set display as block.
 getDisplayAsBlock ()
 Get display as block.
 getSelectAllCheckbox ()
 Get the name of the checkbox that should be toggled with a select all button.
 setSelectAllCheckbox ($a_select_all_checkbox)
 Set the name of the checkbox that should be toggled with a select all button.
 setExternalSorting ($a_val)
 Set external sorting.
 getExternalSorting ()
 Get external sorting.
 setFilterCommand ($a_val)
 Set filter command.
 getFilterCommand ()
 Get filter command.
 setResetCommand ($a_val)
 Set reset filter command.
 getResetCommand ()
 Get reset filter command.
 setExternalSegmentation ($a_val)
 Set external segmentation.
 getExternalSegmentation ()
 Get external segmentation.
 setRowTemplate ($a_template, $a_template_dir="")
 Set row template.
 setDefaultOrderField ($a_defaultorderfield)
 Set Default order field.
 getDefaultOrderField ()
 Get Default order field.
 setDefaultOrderDirection ($a_defaultorderdirection)
 Set Default order direction.
 getDefaultOrderDirection ()
 Get Default order direction.
 clearCommandButtons ()
 addCommandButton ($a_cmd, $a_text, $a_onclick= '')
 Add Command button.
 addSelectionButton ($a_sel_var, $a_options, $a_cmd, $a_text, $a_default_selection= '')
 Add Selection List + Command button.
 addMultiItemSelectionButton ($a_sel_var, $a_options, $a_cmd, $a_text, $a_default_selection= '')
 Add Selection List + Command button for selected items.
 setCloseCommand ($a_link)
 Add command for closing table.
 addMultiCommand ($a_cmd, $a_text)
 Add Command button.
 addHiddenInput ($a_name, $a_value)
 Add Hidden Input field.
 addHeaderCommand ($a_href, $a_text, $a_target="", $a_img="")
 Add Header Command (Link) (Image needed for now)
 setTopCommands ($a_val)
 Set top commands (display command buttons on top of table, too)
 getTopCommands ()
 Get top commands (display command buttons on top of table, too)
 addColumn ($a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="", $a_tooltip="")
 Add a column to the header.
 getNavParameter ()
 setOrderLink ($sort_field, $order_dir)
 fillHeader ()
 determineOffsetAndOrder ($a_omit_offset=false)
 Determine offset and order.
 storeNavParameter ()
 getHTML ()
 Get HTML.
 numericOrdering ($a_field)
 Should this field be sorted numeric?
 render ()
 render table public
 writeFilterToSession ()
 Write filter values to session.
 resetFilter ()
 Reset filter.
 fillFooter ()
 Fill footer row.
 getLinkbar ($a_num)
 Get previous/next linkbar.
 fillHiddenRow ()
 fillActionRow ()
 Fill Action Row.
 setHeaderHTML ($html)
 set header html
 storeProperty ($type, $value)
 Store table property.
 loadProperty ($type)
 Load table property.
 getCurrentState ()
 get current settings for order, limit, columns and filter
 setContext ($id)
 Set context.
 getContext ()
 Get context.
 setShowRowsSelector ($a_value)
 Toggle rows-per-page selector.
 getShowRowsSelector ()
 Get rows-per-page selector state.
 setShowTemplates ($a_value)
 Toggle templates.
 getShowTemplates ()
 Get template state.
 restoreTemplate ($a_name)
 Restore state from template.
 saveTemplate ($a_name)
 Save current state as template.
 deleteTemplate ($a_name)
 Delete template.
 getLimit ()
 Get limit.
 getOffset ()
 Get offset.
 setExportFormats (array $formats)
 Set available export formats.
 setPrintMode ($a_value=false)
 Toogle print mode.
 getPrintMode ()
 Get print mode.
 getExportMode ()
 Was export activated?
 exportData ($format, $send=false)
 Export and optionally send current table data.
- Public Member Functions inherited from ilTableGUI
 ilTableGUI ($a_data=0, $a_global_tpl=true)
 Constructor.
 setTemplate (&$a_tpl)
 set template public
getTemplateObject ()
 setHelp ($a_help_page, $a_help_icon, $a_help_icon_alt=0)
 set table help page public
 setHeaderNames ($a_header_names)
 set table header names public
 getColumnCount ()
 Returns the column count based on the number of the header row columns public.
 setHeaderVars ($a_header_vars, $a_header_params=0)
 set table header vars public
 setColumnWidth ($a_column_width)
 set table column widths public
 setOneColumnWidth ($a_column_width, $a_column_number)
 set one table column width public
 setMaxCount ($a_max_count)
 set max.
 setLimit ($a_limit=0, $a_default_limit=0)
 set max.
 setOffset ($a_offset)
 set dataset offset public
 setOrderColumn ($a_order_column=0, $a_default_column=0)
 set order column public
 getOrderColumn ()
 Get order column.
 setOrderDirection ($a_order_direction)
 set order direction public
 getOrderDirection ()
 Get order direction.
 setFooter ($a_style, $a_previous=0, $a_next=0)
 set order direction public
 enable ($a_module_name)
 enables particular modules of table
 disable ($a_module_name)
 diesables particular modules of table
 sortData ()
 renderHeader ()
 setStyle ($a_element, $a_style)
 getStyle ($a_element)
 setBase ($a_base)
 Set Base script name (deprecated, only use this for workarounds).
 getBase ()
 Get Base script name (deprecated, only use this for workarounds).
 clearActionButtons ()
 addActionButton ($btn_name, $btn_value)

Protected Member Functions

 fillRow ($member)
 Fill table row.
- Protected Member Functions inherited from ilTable2GUI
 prepareOutput ()
 Anything that must be done before HTML is generated.
 getFilterValue (ilFormPropertyGUI $a_item)
 Get current filter value.
 SetFilterValue (ilFormPropertyGUI $a_item, $a_value)
 Set current filter value.
 fillMetaExcel ($worksheet, &$a_row)
 Add meta information to excel export.
 fillHeaderExcel ($worksheet, &$a_row)
 Excel Version of Fill Row.
 fillRowExcel ($a_worksheet, &$a_row, $a_set)
 Excel Version of Fill Row.
 fillMetaCSV ($a_csv)
 Add meta information to csv export.
 fillHeaderCSV ($a_csv)
 CSV Version of Fill Header.
 fillRowCSV ($a_csv, $a_set)
 CSV Version of Fill Row.

Additional Inherited Members

- Data Fields inherited from ilTable2GUI
const FILTER_TEXT = 1
const FILTER_SELECT = 2
const FILTER_DATE = 3
const FILTER_LANGUAGE = 4
const FILTER_NUMBER_RANGE = 5
const FILTER_DATE_RANGE = 6
const FILTER_DURATION_RANGE = 7
const EXPORT_EXCEL = 1
const EXPORT_CSV = 2
- Protected Attributes inherited from ilTable2GUI
 $close_command = ""
 $top_anchor = "il_table_top"
 $filters = array()
 $optional_filters = array()
 $filter_cmd = 'applyFilter'
 $reset_cmd = 'resetFilter'
 $filter_cols = 4
 $ext_sort = false
 $ext_seg = false
 $context = ""
 $mi_sel_buttons = null
 $disable_filter_hiding = false
 $selected_filter = false
 $top_commands = true
 $selectable_columns = array()
 $selected_column = array()
 $show_templates = false
 $show_rows_selector = false
 $nav_determined = false
 $limit_determined = false
 $filters_determined = false
 $columns_determined = false
 $export_formats
 $export_mode
 $print_mode

Detailed Description

Exercise member table.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 15 of file class.ilExerciseMemberTableGUI.php.

Constructor & Destructor Documentation

ilExerciseMemberTableGUI::__construct (   $a_parent_obj,
  $a_parent_cmd,
  $a_exc,
  $a_ass_id 
)

Constructor.

Definition at line 21 of file class.ilExerciseMemberTableGUI.php.

References $ilCtrl, $lng, ilTable2GUI\addColumn(), ilTable2GUI\addCommandButton(), ilTable2GUI\addMultiCommand(), ilExAssignment\getAllDeliveredFiles(), ilExAssignment\getMemberListData(), ilExAssignment\lookupAnyExerciseSent(), ilExAssignment\lookupTitle(), ilTable2GUI\setData(), ilTable2GUI\setDefaultOrderDirection(), ilTable2GUI\setDefaultOrderField(), ilTable2GUI\setEnableHeader(), ilTable2GUI\setEnableTitle(), ilTable2GUI\setFormAction(), ilTable2GUI\setId(), ilTable2GUI\setRowTemplate(), ilTable2GUI\setSelectAllCheckbox(), ilTable2GUI\setTitle(), and ilTable2GUI\setTopCommands().

{
global $ilCtrl, $lng, $ilAccess, $lng;
$this->exc = $a_exc;
$this->exc_id = $this->exc->getId();
$this->setId("exc_mem_".$a_ass_id);
include_once("./Modules/Exercise/classes/class.ilFSStorageExercise.php");
$this->storage = new ilFSStorageExercise($this->exc_id, $a_ass_id);
include_once("./Modules/Exercise/classes/class.ilExAssignment.php");
$this->ass_id = $a_ass_id;
parent::__construct($a_parent_obj, $a_parent_cmd);
$this->setData(ilExAssignment::getMemberListData($this->exc_id, $this->ass_id));
$this->setTitle($lng->txt("exc_assignment").": ".
$this->setTopCommands(true);
//$this->setLimit(9999);
$this->addColumn("", "", "1", true);
$this->addColumn($this->lng->txt("image"), "", "1");
$this->addColumn($this->lng->txt("name"), "name");
$this->addColumn($this->lng->txt("login"), "login");
$this->sent_col = ilExAssignment::lookupAnyExerciseSent($this->exc->getId(), $this->ass_id);
if ($this->sent_col)
{
$this->addColumn($this->lng->txt("exc_exercise_sent"), "sent_time");
}
$this->addColumn($this->lng->txt("exc_submission"), "submission");
$this->addColumn($this->lng->txt("exc_grading"), "solved_time");
$this->addColumn($this->lng->txt("feedback"), "feedback_time");
$this->setDefaultOrderField("name");
$this->setDefaultOrderDirection("asc");
$this->setEnableHeader(true);
$this->setFormAction($ilCtrl->getFormAction($a_parent_obj));
$this->setRowTemplate("tpl.exc_members_row.html", "Modules/Exercise");
//$this->disable("footer");
$this->setEnableTitle(true);
$this->setSelectAllCheckbox("member");
$this->addMultiCommand("saveStatus", $lng->txt("exc_save_changes"));
$this->addMultiCommand("redirectFeedbackMail", $lng->txt("exc_send_mail"));
$this->addMultiCommand("sendMembers", $lng->txt("exc_send_assignment"));
$this->addMultiCommand("confirmDeassignMembers", $lng->txt("exc_deassign_members"));
//if(count($this->exc->members_obj->getAllDeliveredFiles()))
if (count(ilExAssignment::getAllDeliveredFiles($this->exc_id, $this->ass_id)))
{
$this->addCommandButton("downloadAll", $lng->txt("download_all_returned_files"));
}
}

+ Here is the call graph for this function:

Member Function Documentation

ilExerciseMemberTableGUI::fillRow (   $member)
protected

Fill table row.

Reimplemented from ilTable2GUI.

Definition at line 81 of file class.ilExerciseMemberTableGUI.php.

References $ilCtrl, $lng, ilDatePresentation\formatDate(), ilUtil\formCheckbox(), ilExAssignment\getDeliveredFiles(), ilUtil\getImagePath(), ilObjectFactory\getInstanceByObjId(), ilExAssignment\getLastSubmission(), IL_CAL_DATE, IL_CAL_DATETIME, ilExAssignment\lookupCommentForUser(), ilExAssignment\lookupFeedbackTimeOfUser(), ilExAssignment\lookupMarkOfUser(), ilExAssignment\lookupNewFiles(), ilExAssignment\lookupNoticeOfUser(), ilExAssignment\lookupSentTimeOfUser(), ilExAssignment\lookupStatusOfUser(), ilExAssignment\lookupStatusSentOfUser(), ilExAssignment\lookupStatusTimeOfUser(), ilExAssignment\lookupUpdatedSubmission(), and ilUtil\prepareFormOutput().

{
global $lng, $ilCtrl;
include_once "./classes/class.ilObjectFactory.php";
$member_id = $member["usr_id"];
if(!($mem_obj = ilObjectFactory::getInstanceByObjId($member_id,false)))
{
continue;
}
// mail sent
if ($this->sent_col)
{
if (ilExAssignment::lookupStatusSentOfUser($this->ass_id, $member_id))
{
$this->tpl->setCurrentBlock("mail_sent");
if (($st = ilExAssignment::lookupSentTimeOfUser($this->ass_id,
$member_id)) > 0)
{
$this->tpl->setVariable("TXT_MAIL_SENT",
sprintf($lng->txt("exc_sent_at"),
}
else
{
$this->tpl->setVariable("TXT_MAIL_SENT",
$lng->txt("sent"));
}
$this->tpl->parseCurrentBlock();
}
else
{
$this->tpl->setCurrentBlock("mail_sent");
$this->tpl->setVariable("TXT_MAIL_SENT",
" ");
$this->tpl->parseCurrentBlock();
}
}
// checkbox
$this->tpl->setVariable("VAL_CHKBOX",
ilUtil::formCheckbox(0,"member[$member_id]",1));
$this->tpl->setVariable("VAL_ID",
$member_id);
// name and login
$this->tpl->setVariable("TXT_NAME",
$member["name"]);
$this->tpl->setVariable("TXT_LOGIN",
"[".$member["login"]."]");
// image
$this->tpl->setVariable("USR_IMAGE",
$mem_obj->getPersonalPicturePath("xxsmall"));
$this->tpl->setVariable("USR_ALT", $lng->txt("personal_picture"));
// submission:
// see if files have been resubmmited after solved
$last_sub =
ilExAssignment::getLastSubmission($this->ass_id, $member_id);
if ($last_sub)
{
}
else
{
$last_sub = "---";
}
if (ilExAssignment::lookupUpdatedSubmission($this->ass_id, $member_id) == 1)
{
$last_sub = "<b>".$last_sub."</b>";
}
$this->tpl->setVariable("VAL_LAST_SUBMISSION", $last_sub);
$this->tpl->setVariable("TXT_LAST_SUBMISSION",
$lng->txt("exc_last_submission"));
// nr of submitted files
$this->tpl->setVariable("TXT_SUBMITTED_FILES",
$lng->txt("exc_files_returned"));
//$sub_cnt = count($this->exc->getDeliveredFiles($member_id, $this->ass_id));
$sub_cnt = count(ilExAssignment::getDeliveredFiles($this->exc_id, $this->ass_id, $member_id));
$new = ilExAssignment::lookupNewFiles($this->ass_id, $member_id);
if (count($new) > 0)
{
$sub_cnt.= " ".sprintf($lng->txt("cnt_new"),count($new));
}
$this->tpl->setVariable("VAL_SUBMITTED_FILES",
$sub_cnt);
// download command
$ilCtrl->setParameter($this->parent_obj, "member_id", $member_id);
if ($sub_cnt > 0)
{
$this->tpl->setCurrentBlock("download_link");
$this->tpl->setVariable("LINK_DOWNLOAD",
$ilCtrl->getLinkTarget($this->parent_obj, "downloadReturned"));
if (count($new) <= 0)
{
$this->tpl->setVariable("TXT_DOWNLOAD",
$lng->txt("exc_download_files"));
}
else
{
$this->tpl->setVariable("TXT_DOWNLOAD",
$lng->txt("exc_download_all"));
}
$this->tpl->parseCurrentBlock();
// download new files only
if (count($new) > 0)
{
$this->tpl->setCurrentBlock("download_link");
$this->tpl->setVariable("LINK_NEW_DOWNLOAD",
$ilCtrl->getLinkTarget($this->parent_obj, "downloadNewReturned"));
$this->tpl->setVariable("TXT_NEW_DOWNLOAD",
$lng->txt("exc_download_new"));
$this->tpl->parseCurrentBlock();
}
}
// note
$this->tpl->setVariable("TXT_NOTE", $lng->txt("note"));
$this->tpl->setVariable("NAME_NOTE",
"notice[$member_id]");
$this->tpl->setVariable("VAL_NOTE",
// comment for learner
$this->tpl->setVariable("TXT_LCOMMENT", $lng->txt("exc_comment_for_learner"));
$this->tpl->setVariable("NAME_LCOMMENT",
"lcomment[$member_id]");
$lpcomment = ilExAssignment::lookupCommentForUser($this->ass_id, $member_id);
$this->tpl->setVariable("VAL_LCOMMENT",
// solved
//$this->tpl->setVariable("CHKBOX_SOLVED",
// ilUtil::formCheckbox($this->exc->members_obj->getStatusByMember($member_id),"solved[$member_id]",1));
$status = ilExAssignment::lookupStatusOfUser($this->ass_id, $member_id);
$this->tpl->setVariable("SEL_".strtoupper($status), ' selected="selected" ');
$this->tpl->setVariable("TXT_NOTGRADED", $lng->txt("exc_notgraded"));
$this->tpl->setVariable("TXT_PASSED", $lng->txt("exc_passed"));
$this->tpl->setVariable("TXT_FAILED", $lng->txt("exc_failed"));
if (($sd = ilExAssignment::lookupStatusTimeOfUser($this->ass_id, $member_id)) > 0)
{
$this->tpl->setCurrentBlock("status_date");
$this->tpl->setVariable("TXT_LAST_CHANGE", $lng->txt("last_change"));
$this->tpl->setVariable('VAL_STATUS_DATE',
$this->tpl->parseCurrentBlock();
}
switch($status)
{
case "passed": $pic = "scorm/passed.gif"; break;
case "failed": $pic = "scorm/failed.gif"; break;
default: $pic = "scorm/not_attempted.gif"; break;
}
$this->tpl->setVariable("IMG_STATUS", ilUtil::getImagePath($pic));
$this->tpl->setVariable("ALT_STATUS", $lng->txt("exc_".$status));
// mark
$this->tpl->setVariable("TXT_MARK", $lng->txt("exc_mark"));
$this->tpl->setVariable("NAME_MARK",
"mark[$member_id]");
$mark = ilExAssignment::lookupMarkOfUser($this->ass_id, $member_id);
$this->tpl->setVariable("VAL_MARK",
// feedback
$ilCtrl->setParameter($this->parent_obj, "member_id", $member_id);
if (($ft = ilExAssignment::lookupFeedbackTimeOfUser($this->ass_id, $member_id)) > 0)
{
$this->tpl->setCurrentBlock("feedback_date");
$this->tpl->setVariable("TXT_FEEDBACK_MAIL_SENT",
sprintf($lng->txt("exc_sent_at"),
$this->tpl->parseCurrentBlock();
}
// feedback mail
$ilCtrl->setParameter($this, "rcp_to", $mem_obj->getLogin());
$this->tpl->setVariable("LINK_FEEDBACK",
$ilCtrl->getLinkTarget($this->parent_obj, "redirectFeedbackMail"));
$this->tpl->setVariable("TXT_FEEDBACK",
$lng->txt("exc_send_mail"));
$ilCtrl->setParameter($this->parent_obj, "rcp_to", "");
// file feedback
$cnt_files = $this->storage->countFeedbackFiles($member_id);
$ilCtrl->setParameter($this->parent_obj, "fsmode", "feedback");
$this->tpl->setVariable("LINK_FILE_FEEDBACK",
$ilCtrl->getLinkTargetByClass("ilfilesystemgui", "listFiles"));
if ($cnt_files == 0)
{
$this->tpl->setVariable("TXT_FILE_FEEDBACK",
$lng->txt("exc_add_feedback_file"));
}
else
{
$this->tpl->setVariable("TXT_FILE_FEEDBACK",
$lng->txt("exc_fb_files")." (".$cnt_files.")");
}
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:


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