static function getListValue($params) { $return = ''; $field = new rex_yform_manager_field($params['params']["field"]); if ($field->getElement('modus') == "database") { $return = '[raw data]'; } else { $upload_folder = $field->getElement('upload_folder'); if ($upload_folder == "") { $upload_folder = rex_path::addonData('yform', 'uploads'); } $value = explode("_", $params['value'], 2); if (count($value) == 2) { $hash = $value[0]; $value = $value[1]; $search_path = $upload_folder . '/' . $hash . '_' . $field->getElement('file_prefix'); $files = glob(preg_replace('/(\\*|\\?|\\[)/', '[$1]', $search_path) . '*'); if (count($files) == 1) { $return = '<a href="' . $_SERVER["REQUEST_URI"] . '&rex_upload_downloadfile=' . urlencode($params['value']) . '">' . basename($value) . '</a>'; if (rex_request("rex_upload_downloadfile") == $params['value']) { $file = $upload_folder . '/' . $params['value']; if (file_exists($file)) { ob_end_clean(); $filename = explode("_", basename($file), 2); $filename = $filename[1]; header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . $filename); header('Expires: 0'); header('Cache-Control: must-revalidate'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); readfile($file); } } } } } return $return; }