4 include_once(
"./Services/Table/classes/class.ilTable2GUI.php");
20 function __construct($a_parent_obj, $a_parent_cmd, $a_cur_dir,
21 $a_cur_subdir, $a_label_enable =
false,
22 $a_file_labels, $a_label_header =
"", $a_commands = array(),
23 $a_post_dir_path =
false)
27 $this->cur_dir = $a_cur_dir;
28 $this->cur_subdir = $a_cur_subdir;
29 $this->label_enable = $a_label_enable;
30 $this->label_header = $a_label_header;
31 $this->file_labels = $a_file_labels;
32 $this->post_dir_path = $a_post_dir_path;
35 $this->
setTitle($lng->txt(
"cont_files").
" ".$this->cur_subdir);
40 if ($this->label_enable)
42 $this->
addColumn($lng->txt(
"cont_dir_file"),
"name",
"50%");
43 $this->
addColumn($lng->txt(
"cont_size"),
"size",
"20%");
44 $this->
addColumn($this->label_header,
"",
"30%");
48 $this->
addColumn($lng->txt(
"cont_dir_file"),
"name",
"60%");
49 $this->
addColumn($lng->txt(
"cont_size"),
"size",
"40%");
64 for ($i=0; $i < count($a_commands); $i++)
66 if ($a_commands[
"int"])
69 $a_commands[$i][
"name"]);
80 if ($a_field ==
"size")
102 if (is_dir($this->cur_dir))
108 $entries = array(array(
"type" =>
"dir",
"entry" =>
".."));
112 foreach ($entries as $e)
114 if(($e[
"entry"] ==
".") || ($e[
"entry"] ==
".." && empty($this->cur_subdir)))
118 $cfile = (!empty($this->cur_subdir))
119 ? $this->cur_subdir.
"/".$e[
"entry"]
122 if ($this->label_enable)
124 $label = (is_array($this->file_labels[$cfile]))
125 ? implode($this->file_labels[$cfile],
", ")
129 $pref = ($e[
"type"] ==
"dir")
132 $items[] = array(
"file" => $cfile,
"entry" => $e[
"entry"],
133 "type" => $e[
"type"],
"label" => $label,
"size" => $e[
"size"],
134 "name" => $pref.$e[
"entry"]);
148 if ($a_set[
"entry"] !=
"..")
150 $this->tpl->setCurrentBlock(
"checkbox");
151 if ($this->post_dir_path)
153 $this->tpl->setVariable(
"CHECKBOX_ID", $a_set[
"file"]);
157 $this->tpl->setVariable(
"CHECKBOX_ID", $a_set[
"entry"]);
159 $this->tpl->parseCurrentBlock();
163 if ($this->label_enable)
165 $this->tpl->setCurrentBlock(
"Label");
166 $this->tpl->setVariable(
"TXT_LABEL", $a_set[
"label"]);
167 $this->tpl->parseCurrentBlock();
171 if($a_set[
"type"] ==
"dir")
173 $this->tpl->setCurrentBlock(
"FileLink");
174 $ilCtrl->setParameter($this->parent_obj,
"cdir", $this->cur_subdir);
175 $ilCtrl->setParameter($this->parent_obj,
"newdir", $a_set[
"entry"]);
176 $ilCtrl->setParameter($this->parent_obj,
"resetoffset", 1);
177 $this->tpl->setVariable(
"LINK_FILENAME",
178 $ilCtrl->getLinkTarget($this->parent_obj,
"listFiles"));
179 $this->tpl->setVariable(
"TXT_FILENAME", $a_set[
"entry"]);
180 $this->tpl->parseCurrentBlock();
182 $this->tpl->setVariable(
"ICON",
"<img src=\"".
184 $ilCtrl->setParameter($this->parent_obj,
"resetoffset",
"");
188 $this->tpl->setCurrentBlock(
"File");
189 $this->tpl->setVariable(
"TXT_FILENAME2", $a_set[
"entry"]);
190 $this->tpl->parseCurrentBlock();
193 $this->tpl->setVariable(
"TXT_SIZE", $a_set[
"size"]);
195 $ilCtrl->setParameter($this->parent_obj,
"cdir",
$_GET[
"cdir"]);
196 $ilCtrl->setParameter($this->parent_obj,
"newdir",
$_GET[
"newdir"]);