protected function afterInit() { $this->dir = $this->cfg->dir; if ($this->cfg->subdir) { $this->subdir = $this->cfg->subdir . DS; $this->dir .= $this->subdir; } file::createDir($this->dir); $uploaded = false; if (strpos($this->cfg->name, '[')) { $tmp = explode('[', str_replace(']', '', $this->cfg->name)); $tmpfile = utils::getValInArray($_FILES, $tmp); if (!empty($tmpfile) && is_array($tmpfile)) { $this->file = $tmpfile; $this->file['saved'] = false; $uploaded = $this->file['error'] == UPLOAD_ERR_OK; } } else { if (array_key_exists($this->cfg->name, $_FILES)) { $this->file = $_FILES[$this->cfg->name]; $this->file['saved'] = false; $uploaded = $this->file['error'] == UPLOAD_ERR_OK; } } if ($this->cfg->current && !$uploaded) { $name = basename($this->cfg->current); $savePath = $this->dir . $name; $webPath = str_replace(DS, '/', $this->subdir . $name); $this->file = array('name' => $name, 'type' => file::getType($savePath), 'tmp_name' => '', 'error' => UPLOAD_ERR_OK, 'size' => file::size($savePath), 'saved' => array('name' => $name, 'savePath' => $savePath, 'webPath' => $webPath), 'savedFromValue' => true); $this->saved = $webPath; } $this->helper = factory::isCreable('helper_' . $this->cfg->helper) ? factory::getHelper($this->cfg->helper, $this->getHelperPrm('factory')) : null; if ($this->cfg->autoSave && !empty($this->file) && $this->isValid() === true) { $this->save(); } }
/** * Show a file to the client * * @param string $file File Path */ public function showFile($file) { if (file::exists($file)) { $type = file::getType($file); if (strpos($type, 'audio') === 0 || strpos($type, 'video') === 0) { $this->mediaDownload($file); } else { $this->cfg->compress = false; $this->neverExpire(); $this->addHeader('Last-Modified', gmdate('D, j M Y H:i:s', filemtime($file)).' GMT', true); $this->addHeader('Content-Type', $type, true); $this->addHeader('Cache-Control', 'public', false); $this->addHeader('Pragma', null, false); $this->addHeader('Content-length', file::size($file), true); $this->sendText(file::read($file)); } } }
"><?php echo $folder; ?> </a></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <?php } foreach ($files as $file) { $filepath = site::template($dir . '/' . $file); $filedata = file::data($filepath); $filesize = file::size($filepath, true); ?> <tr class="item file"> <td class="w20 center"><span class="zotop-icon zotop-icon-file"></span></td> <td class="w120"><input type="hidden" value="<?php echo empty($dir) ? $file : $dir . '/' . $file; ?> "/><?php echo $file; ?> </td> <td><?php echo $filedata['description'] ? $filedata['description'] : $filedata['title']; ?> </td> <td class="w60"><?php