Source for file Hpdownload.php
Documentation is available at Hpdownload.php
DOKEOS - elearning and course management software
For a full list of contributors, see documentation/credits.html
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
See "documentation/licence.html" more details.
Rue des Palais 44 Paleizenstraat
B-1030 Brussels - Belgium
* This script shows the list of exercises for administrators and students.
* @package dokeos.exercise
* @version $Id: Hpdownload.php 12269 2007-05-03 14:17:37Z elixir_julian $
include('../inc/global.inc.php');
include(api_get_path(LIBRARY_PATH). "events.lib.inc.php");
//event_download($doc_url);
if (isset ($_course['path']))
// $full_file_name=$_configuration['root_sys']."courses/".$_course['path'].'/document'.$doc_url;
//$full_file_name=$_configuration['root_sys']."courses/".$cid.'/document'.$doc_url;
case 'gz': $content_type= 'application/x-gzip'; break;
case 'zip': $content_type= 'application/zip'; break;
case 'pdf': $content_type= 'application/pdf'; break;
case 'png': $content_type= 'image/png'; break;
case 'gif': $content_type= 'image/gif'; break;
case 'jpg': $content_type= 'image/jpeg'; break;
case 'txt': $content_type= 'text/plain'; break;
case 'htm': $content_type= 'text/html'; break;
case 'html': $content_type= 'text/html'; break;
default: $content_type= 'application/octet-stream'; break;
header('Content-disposition: filename='. $filename);
header('Content-Type: '. $content_type);
------------------------------------------------------------------------------
is activated whenever a user views an html file
- question: we could also parse per line,
perhaps this would be faster.
($file_content = file($full_file_name) returns file in array)
------------------------------------------------------------------------------
if($content_type == 'text/html')
include (api_get_path(LIBRARY_PATH). 'fileUpload.lib.php');
$directory_name = dirname($full_file_name);
$dir= str_replace(array('\\',$_configuration['root_sys']. "courses/". $_course['path']. '/document'),array('/',''),$directory_name);
if($dir[strlen($dir)- 1] != '/')
//Parse whole file at one
$fp = fopen($full_file_name, "r");
//$file_content = api_replace_parameter($dir, $file_content, "src");
//$file_content = api_replace_parameter($dir, $file_content, "href");
$file_content_array = file($full_file_name);
foreach($file_content_array as $line)
$line = api_replace_parameter($dir, $line, "src");
$line = api_replace_parameter($dir, $line, "href");
$exfile = explode('/',$exercicePath);
$exfile = $exfile[sizeof($exfile)- 1];
$exercicePath = substr($exercicePath,0,strpos($exercicePath,$exfile));
$exercicePath = $exercicePath;
$content = $file_content;
$mit = "function Finish(){";
$js_content = "var SaveScoreVariable = 0; // This variable included by Dokeos System\n".
"function mySaveScore() // This function included by Dokeos System\n".
" if (SaveScoreVariable==0)\n".
" SaveScoreVariable = 1;\n".
" document.location.href = \"". $exercicePath. "savescores.php?origin=$origin&time=$time&test=". $doc_url. "&uid=". $_user['user_id']. "&cid=". $cid. "&score=\"+Score;\n".
" //window.alert(Score);\n".
"// Must be included \n".
$prehref= "javascript:void(0);";
$posthref= $_configuration['root_web']. "main/exercice/Hpdownload.php?doc_url=". $doc_url. "&cid=". $cid. "&uid=". $uid;
$newcontent = str_replace($prehref,$posthref,$newcontent);
$prehref= "class=\"GridNum\" onclick=";
$posthref= "class=\"GridNum\" onMouseover=";
$newcontent = str_replace($prehref,$posthref,$newcontent);
//normal case, all non-html files
//header('Content-length: '.filesize($full_file_name));
$fp= fopen($full_file_name,'rb');
|