Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
chamilo-lms/main/upload/form.scorm.php

125 lines
4.3 KiB

<?php
/* For licensing terms, see /license.txt */
/**
* Display part of the SCORM sub-process for upload. This script MUST BE included by upload/index.php
* as it prepares most of the variables needed here.
* @package chamilo.upload
* @author Yannick Warnier <ywarnier@beeznest.org>
*/
/**
* Small function to list files in archive/
*/
function get_zip_files_in_garbage(){
$list = array();
$dh = opendir(api_get_path(SYS_ARCHIVE_PATH));
if($dh === false){
//ignore
}else{
while($entry = readdir($dh)){
if(substr($entry,0,1) == '.'){/*ignore files starting with . */}
else
{
if(preg_match('/^.*\.zip$/i',$entry)){
$list[] = $entry;
}
}
}
natcasesort($list);
closedir($dh);
}
return $list;
}
/**
* Just display the form needed to upload a SCORM and give its settings
*/
$nameTools = get_lang("FileUpload");
$interbreadcrumb[]= array ("url"=>"../newscorm/lp_controller.php?action=list", "name"=> get_lang("Learnpath"));
Display::display_header($nameTools,"Path");
//show the title
//api_display_tool_title(get_lang("Learnpath")." - ".$nameTools.$add_group_to_title);
//TODO: Include right language file
require_once api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php';
require_once '../newscorm/content_makers.inc.php';
require_once api_get_path(LIBRARY_PATH) . 'specific_fields_manager.lib.php';
echo '<div class="actions">';
echo '<a href="../newscorm/lp_controller.php?cidReq='.$_course['sysCode'].'">'.Display::return_icon('back.png',get_lang('ReturnToLearningPaths')).' '.get_lang('ReturnToLearningPaths').'</a>';
echo '</div>';
$form = new FormValidator('','POST','upload.php','','id="upload_form" enctype="multipart/form-data" style="background-image: url(\'../img/scorm.jpg\'); background-repeat: no-repeat; background-position: 620px;"');
$form->addElement('header', '', $nameTools);
$form->addElement('hidden', 'curdirpath', $path);
$form->addElement('hidden', 'tool', $my_tool);
$form->addElement('file','user_file',get_lang('FileToUpload'));
$select_content_marker = &$form->addElement('select','content_maker',get_lang('ContentMaker'));
foreach($content_origins as $index => $origin){
$select_content_marker->addOption($origin,$origin);
}
$select_content_proximity = &$form->addElement('select','content_proximity',get_lang('ContentProximity'));
$select_content_proximity->addOption(get_lang('Local'),"local");
$select_content_proximity->addOption(get_lang('Remote'),"remote");
$select_content_proximity -> setSelected("local");
if(api_get_setting('search_enabled')=='true')
{
$form -> addElement ('checkbox', 'index_document','', get_lang('SearchFeatureDoIndexDocument'));
$specific_fields = get_specific_field_list();
foreach ($specific_fields as $specific_field) {
$form -> addElement ('text', $specific_field['code'], $specific_field['name'].' : ');
}
}
if (api_is_platform_admin()) {
$form->addElement('checkbox', 'use_max_score', get_lang('UseMaxScore100'));
}
$form->addElement('style_submit_button','submit', get_lang('Send'),'class="upload"');
$form->addElement('html', '<br /><br /><br />');
/*$list = get_zip_files_in_garbage();
if(count($list)>0){
$select_file_name = &$form->addElement('select','file_name',get_lang('Or').' '.api_strtolower(get_lang('UploadLocalFileFromGarbageDir')));
foreach($list as $file){
$select_file_name->addOption($file,$file);
}
$form->addElement('submit', 'submit', get_lang('Download'));
}
else{
$text_empty = &$form->addElement('text', 'empty', get_lang('Or').' '.api_strtolower(get_lang('UploadLocalFileFromGarbageDir')));
$defaults["empty"] = get_lang('Empty');
$text_empty->freeze();
}*/
if(is_dir(api_get_path(PLUGIN_PATH)."/pens")) {
require_once(api_get_path(PLUGIN_PATH)."/pens/chamilo_pens.php");
$list = ChamiloPens::findAll();
if(count($list) > 0) {
$select_pens = $form->addElement('select', 'pens_package', get_lang('Or').' '.get_lang('select a PENS package'));
foreach($list as $package) {
$select_pens->addOption($package->getPackageName(), $package->getPackageName());
}
}
}
$form->add_real_progress_bar('uploadScorm','user_file');
// the rules for the form
$form->addRule('user_file', '<div class="required">'.get_lang('ThisFieldIsRequired'), 'required');
// the default values for the form
$defaults = array('index_document'=>'checked="checked"','use_max_score'=>1);
$form->setDefaults($defaults);
$form->display();
// footer
Display::display_footer();
?>