Changing lp_list (adding rocket icon) + adding some handy db functions BT#1909

skala
Julio Montoya 14 years ago
parent 5931306959
commit fcad278414
  1. 106
      main/course_info/infocours.php
  2. BIN
      main/img/launch.png
  3. BIN
      main/img/launch_na.png
  4. 15
      main/newscorm/learnpath.class.php
  5. 35
      main/newscorm/learnpathList.class.php
  6. 13
      main/newscorm/lp_controller.php
  7. 49
      main/newscorm/lp_list.php

@ -134,11 +134,14 @@ $form->addElement('static', null, ' ', get_lang('TipLang'));
// Picture
$form->addElement('file', 'picture', get_lang('AddPicture'));
$allowed_picture_types = array ('jpg', 'jpeg', 'png', 'gif');
$form->addRule('picture', get_lang('OnlyImagesAllowed').' ('.implode(',', $allowed_picture_types).')', 'filetype', $allowed_picture_types);
$form->addElement('style_submit_button', null, get_lang('SaveSettings'), 'class="save"');
//Auto launch LP
$form->addElement('radio', 'enable_lp_auto_launch', get_lang('LPAutoLaunch'), get_lang('Enable'), 1);
$form->addElement('radio', 'enable_lp_auto_launch', null, get_lang('Disable'), 0);
// COURSE ACCESS
$form->addElement('html', '<div class="sectiontitle" style="margin-top: 40px;"><a href="#header" style="float:right;">'.Display::return_icon('top.gif', get_lang('Top')).'</a><a name="coursesaccess" id="coursesaccess"></a>'.Display::return_icon('course.gif', get_lang('CourseAccess')).' '.get_lang('CourseAccess').'</div>');
@ -147,15 +150,15 @@ $form->addElement('radio', 'visibility', null, get_lang('OpenToThePlatform'), CO
$form->addElement('radio', 'visibility', null, get_lang('Private'), COURSE_VISIBILITY_REGISTERED);
$form->addElement('radio', 'visibility', null, get_lang('CourseVisibilityClosed'), COURSE_VISIBILITY_CLOSED);
$form->addElement('static', null, null, get_lang("CourseAccessConfigTip"));
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'subscribe', get_lang('Subscription'), get_lang('Allowed'), 1);
$form->addElement('radio', 'subscribe', null, get_lang('Denied'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'unsubscribe', get_lang('Unsubscription'), get_lang('AllowedToUnsubscribe'), 1);
$form->addElement('radio', 'unsubscribe', null, get_lang('NotAllowedToUnsubscribe'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->add_textfield('course_registration_password', get_lang('CourseRegistrationPassword'), false, array('size' => '60'));
@ -168,7 +171,7 @@ $form->addElement('html', '<div class="sectiontitle" style="margin-top: 40px;"><
$form->addElement('radio', 'email_alert_to_teacher_on_new_user_in_course', get_lang('NewUserEmailAlert'), get_lang('NewUserEmailAlertEnable'), 1);
$form->addElement('radio', 'email_alert_to_teacher_on_new_user_in_course', null, get_lang('NewUserEmailAlertToTeacharAndTutor'), 2);
$form->addElement('radio', 'email_alert_to_teacher_on_new_user_in_course', null, get_lang('NewUserEmailAlertDisable'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'email_alert_students_on_new_homework', get_lang('NewHomeworkEmailAlert'), get_lang('NewHomeworkEmailAlertEnable'), 1);
$form->addElement('radio', 'email_alert_students_on_new_homework', null, get_lang('NewHomeworkEmailAlertDisable'), 0);
@ -176,11 +179,11 @@ $form->addElement('html', $linebreak);
$form->addElement('radio', 'email_alert_manager_on_new_doc', get_lang('WorkEmailAlert'), get_lang('WorkEmailAlertActivate'), 1);
$form->addElement('radio', 'email_alert_manager_on_new_doc', null, get_lang('WorkEmailAlertDeactivate'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'email_alert_on_new_doc_dropbox', get_lang('DropboxEmailAlert'), get_lang('DropboxEmailAlertActivate'), 1);
$form->addElement('radio', 'email_alert_on_new_doc_dropbox', null, get_lang('DropboxEmailAlertDeactivate'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'email_alert_manager_on_new_quiz', get_lang('QuizEmailAlert'), get_lang('QuizEmailAlertActivate'), 1);
$form->addElement('radio', 'email_alert_manager_on_new_quiz', null, get_lang('QuizEmailAlertDeactivate'), 0);
@ -193,19 +196,18 @@ $form->addElement('style_submit_button', null, get_lang('SaveSettings'), 'class=
$form->addElement('html', '<div class="sectiontitle" style="margin-top: 40px;"><a href="#header" style="float:right;">'.Display::return_icon('top.gif', get_lang('Top')).'</a><a name="userrights" id="userrights"></a>'.Display::return_icon('members.gif', get_lang('UserRights')).' '.get_lang('UserRights').'</div>');
$form->addElement('radio', 'allow_user_edit_agenda', get_lang('AllowUserEditAgenda'), get_lang('AllowUserEditAgendaActivate'), 1);
$form->addElement('radio', 'allow_user_edit_agenda', null, get_lang('AllowUserEditAgendaDeactivate'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'allow_user_edit_announcement', get_lang('AllowUserEditAnnouncement'), get_lang('AllowUserEditAnnouncementActivate'), 1);
$form->addElement('radio', 'allow_user_edit_announcement', null, get_lang('AllowUserEditAnnouncementDeactivate'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'allow_user_image_forum', get_lang('AllowUserImageForum'), get_lang('AllowUserImageForumActivate'), 1);
$form->addElement('radio', 'allow_user_image_forum', null, get_lang('AllowUserImageForumDeactivate'), 0);
$form -> addElement('html', $linebreak);
$form->addElement('html', $linebreak);
$form->addElement('radio', 'allow_user_view_user_list', get_lang('AllowUserViewUserList'), get_lang('AllowUserViewUserListActivate'), 1);
$form->addElement('radio', 'allow_user_view_user_list', null, get_lang('AllowUserViewUserListDeactivate'), 0);
$form->addElement('style_submit_button', null, get_lang('SaveSettings'), 'class="save"');
@ -258,43 +260,47 @@ $all_course_information = CourseManager::get_course_information($_course['sysCo
// Set the default values of the form
$values['title'] = $_course['name'];
$values['visual_code'] = $_course['official_code'];
$values['category_code'] = $_course['categoryCode'];
//$values['tutor_name'] = $_course['titular'];
$values['course_language'] = $_course['language'];
$values['department_name'] = $_course['extLink']['name'];
$values['department_url'] = $_course['extLink']['url'];
$values['visibility'] = $_course['visibility'];
$values['subscribe'] = $course_access_settings['subscribe'];
$values['unsubscribe'] = $course_access_settings['unsubscribe'];
$values['course_registration_password'] = $all_course_information['registration_code'];
$values['title'] = $_course['name'];
$values['visual_code'] = $_course['official_code'];
$values['category_code'] = $_course['categoryCode'];
//$values['tutor_name'] = $_course['titular'];
$values['course_language'] = $_course['language'];
$values['department_name'] = $_course['extLink']['name'];
$values['department_url'] = $_course['extLink']['url'];
$values['visibility'] = $_course['visibility'];
$values['subscribe'] = $course_access_settings['subscribe'];
$values['unsubscribe'] = $course_access_settings['unsubscribe'];
$values['course_registration_password'] = $all_course_information['registration_code'];
// Get send_mail_setting (auth)from table
$values['email_alert_to_teacher_on_new_user_in_course'] = api_get_course_setting('email_alert_to_teacher_on_new_user_in_course');
$values['email_alert_to_teacher_on_new_user_in_course']= api_get_course_setting('email_alert_to_teacher_on_new_user_in_course');
// Get send_mail_setting (work)from table
$values['email_alert_manager_on_new_doc'] = api_get_course_setting('email_alert_manager_on_new_doc');
$values['email_alert_manager_on_new_doc'] = api_get_course_setting('email_alert_manager_on_new_doc');
// Get send_mail_setting (dropbox) from table
$values['email_alert_on_new_doc_dropbox'] = api_get_course_setting('email_alert_on_new_doc_dropbox');
$values['email_alert_on_new_doc_dropbox'] = api_get_course_setting('email_alert_on_new_doc_dropbox');
// Get send_mail_setting (work)from table
$values['email_alert_manager_on_new_quiz'] = api_get_course_setting('email_alert_manager_on_new_quiz');
$values['email_alert_manager_on_new_quiz'] = api_get_course_setting('email_alert_manager_on_new_quiz');
// Get allow_user_edit_agenda from table
$values['allow_user_edit_agenda'] = api_get_course_setting('allow_user_edit_agenda');
$values['allow_user_edit_agenda'] = api_get_course_setting('allow_user_edit_agenda');
// Get allow_user_edit_announcement from table
$values['allow_user_edit_announcement'] = api_get_course_setting('allow_user_edit_announcement');
$values['allow_user_edit_announcement'] = api_get_course_setting('allow_user_edit_announcement');
// Get allow_user_image_forum from table
$values['allow_user_image_forum'] = api_get_course_setting('allow_user_image_forum');
$values['allow_user_image_forum'] = api_get_course_setting('allow_user_image_forum');
// Get allow_open_chat_window from table
$values['allow_open_chat_window'] = api_get_course_setting('allow_open_chat_window');
$values['allow_open_chat_window'] = api_get_course_setting('allow_open_chat_window');
// Get course_theme from table
$values['course_theme'] = api_get_course_setting('course_theme');
$values['course_theme'] = api_get_course_setting('course_theme');
// Get allow_learning_path_theme from table
$values['allow_learning_path_theme'] = api_get_course_setting('allow_learning_path_theme');
$values['allow_learning_path_theme'] = api_get_course_setting('allow_learning_path_theme');
//Get allow show user list
$values['allow_user_view_user_list'] = api_get_course_setting('allow_user_view_user_list');
$values['allow_user_view_user_list'] = api_get_course_setting('allow_user_view_user_list');
//Get allow show user list
$values['display_info_advance_inside_homecourse'] = api_get_course_setting('display_info_advance_inside_homecourse');
$values['email_alert_students_on_new_homework'] = api_get_course_setting('email_alert_students_on_new_homework');
$values['display_info_advance_inside_homecourse'] = api_get_course_setting('display_info_advance_inside_homecourse');
$values['email_alert_students_on_new_homework'] = api_get_course_setting('email_alert_students_on_new_homework');
$values['enable_lp_auto_launch'] = api_get_course_setting('enable_lp_auto_launch');
$form->setDefaults($values);
// Validate form
@ -312,17 +318,17 @@ if ($form->validate() && is_settings_editable()) {
}
$table_course = Database :: get_main_table(TABLE_MAIN_COURSE);
$sql = "UPDATE $table_course SET
title = '".Security::remove_XSS($update_values['title'])."',
visual_code = '".$update_values['visual_code']."',
course_language = '".$update_values['course_language']."',
category_code = '".$update_values['category_code']."',
department_name = '".Security::remove_XSS($update_values['department_name'])."',
department_url = '".Security::remove_XSS($update_values['department_url'])."',
visibility = '".$update_values['visibility']."',
subscribe = '".$update_values['subscribe']."',
unsubscribe = '".$update_values['unsubscribe']."',
tutor_name = '".$update_values['tutor_name']."',
registration_code = '".$update_values['course_registration_password']."'
title = '".Security::remove_XSS($update_values['title'])."',
visual_code = '".$update_values['visual_code']."',
course_language = '".$update_values['course_language']."',
category_code = '".$update_values['category_code']."',
department_name = '".Security::remove_XSS($update_values['department_name'])."',
department_url = '".Security::remove_XSS($update_values['department_url'])."',
visibility = '".$update_values['visibility']."',
subscribe = '".$update_values['subscribe']."',
unsubscribe = '".$update_values['unsubscribe']."',
tutor_name = '".$update_values['tutor_name']."',
registration_code = '".$update_values['course_registration_password']."'
WHERE code = '".$course_code."'";
Database::query($sql);
@ -383,6 +389,12 @@ if ($form->validate() && is_settings_editable()) {
$sql = "UPDATE $table_course_setting SET value = ".(int)$update_values['email_alert_students_on_new_homework']." WHERE variable = 'email_alert_students_on_new_homework' ";
Database::query($sql);
}
if ($update_values['enable_lp_auto_launch'] != $values['enable_lp_auto_launch']) {
$sql = "UPDATE $table_course_setting SET value = ".(int)$update_values['enable_lp_auto_launch']." WHERE variable = 'enable_lp_auto_launch' ";
Database::query($sql);
}
$cidReset = true;
$cidReq = $course_code;

Binary file not shown.

After

Width:  |  Height:  |  Size: 987 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 622 B

@ -8488,6 +8488,21 @@ EOD;
}
return false;
}
public function set_autolunch($lp_id, $status) {
$lp_id = intval($lp_id);
$status = intval($status);
$lp_table = Database::get_course_table(TABLE_LP_MAIN);
//Setting everything to autolunch = 0
$attributes['autolunch'] = 0;
Database::update_query($lp_table, $attributes);
if ($status == 1) {
//Setting my lp_id to autolunch = 1
$attributes['autolunch'] = 1;
Database::update_query($lp_table, $attributes, " id = $lp_id" );
}
}
}
if (!function_exists('trim_value')) {

@ -53,7 +53,7 @@ class learnpathList {
$sql = "SELECT * FROM $lp_table $condition_session ORDER BY display_order ASC, name ASC";
$res = Database::query($sql);
$names = array();
while ($row = Database::fetch_array($res)) {
while ($row = Database::fetch_array($res,'ASSOC')) {
// Check if published.
$pub = '';
$tbl_tool = Database::get_course_table(TABLE_TOOL_LIST);
@ -75,23 +75,24 @@ class learnpathList {
$vis = api_get_item_visibility(api_get_course_info($course_code), 'learnpath', $row['id'], $session_id);
$this->list[$row['id']] = array(
'lp_type' => $row['lp_type'],
'lp_session' => $row['session_id'],
'lp_name' => stripslashes($row['name']),
'lp_desc' => stripslashes($row['description']),
'lp_path' => $row['path'],
'lp_view_mode' => $row['default_view_mod'],
'lp_force_commit' => $row['force_commit'],
'lp_maker' => stripslashes($row['content_maker']),
'lp_proximity' => $row['content_local'],
//'lp_encoding' => $row['default_encoding'],
'lp_encoding' => api_get_system_encoding(), // Chamilo 1.8.8: We intend always to use the system encoding.
'lp_visibility' => $vis,
'lp_published' => $pub,
'lp_type' => $row['lp_type'],
'lp_session' => $row['session_id'],
'lp_name' => stripslashes($row['name']),
'lp_desc' => stripslashes($row['description']),
'lp_path' => $row['path'],
'lp_view_mode' => $row['default_view_mod'],
'lp_force_commit' => $row['force_commit'],
'lp_maker' => stripslashes($row['content_maker']),
'lp_proximity' => $row['content_local'],
//'lp_encoding' => $row['default_encoding'],
'lp_encoding' => api_get_system_encoding(), // Chamilo 1.8.8: We intend always to use the system encoding.
'lp_visibility' => $vis,
'lp_published' => $pub,
'lp_prevent_reinit' => $row['prevent_reinit'],
'lp_scorm_debug' => $row['debug'],
'lp_display_order' => $row['display_order'],
'lp_preview_image' => stripslashes($row['preview_image'])
'lp_scorm_debug' => $row['debug'],
'lp_display_order' => $row['display_order'],
'lp_preview_image' => stripslashes($row['preview_image']),
'autolaunch' => $row['autolunch']
);
$names[$row['name']] = $row['id'];
}

@ -463,6 +463,19 @@ switch ($action) {
//require 'lp_list.php';
}
break;
case 'auto_launch':
if (!$is_allowed_to_edit) {
api_not_allowed(true);
}
if ($debug > 0) error_log('New LP - export action triggered', 0);
if (!$lp_found) { error_log('New LP - No learnpath given for set_autolunch', 0); require 'lp_list.php'; }
else {
$_SESSION['oLP']->set_autolunch($_GET['lp_id'], $_GET['status']);
require 'lp_list.php';
exit;
}
break;
case 'delete':
if (!$is_allowed_to_edit) {

@ -30,9 +30,7 @@ require_once 'learnpathItem.class.php';
// Extra javascript functions for in html head:
$htmlHeadXtra[] =
"<script language='javascript' type='text/javascript'>
function confirmation(name)
{
function confirmation(name) {
if (confirm(\" ".trim(get_lang('AreYouSureToDelete'))." \"+name+\"?\"))
{return true;}
else
@ -153,20 +151,21 @@ if ($is_allowed_to_edit) {
echo'<th>'.get_lang('Move')."</th>\n";
}
}
echo "</tr>\n";
echo '</tr>';
/* DISPLAY SCORM LIST */
$list = new LearnpathList(api_get_user_id());
$flat_list = $list->get_flat_list();
$list = new LearnpathList(api_get_user_id());
$flat_list = $list->get_flat_list();
$test_mode = api_get_setting('server_type');
$max = count($flat_list);
//var_dump($flat_list);
if (is_array($flat_list)) {
$counter = 0;
$current = 0;
$test_mode = api_get_setting('server_type');
$max = count($flat_list);
$counter = 0;
$current = 0;
$autolunch_exists = false;
foreach ($flat_list as $id => $details) {
// Validacion when belongs to a session
$session_img = api_get_session_image($details['lp_session'], $_user['status']);
@ -414,10 +413,20 @@ if (is_array($flat_list)) {
//"</a>" .
"";
}
//hide icon export scorm
//$dsp_disk='';
/* Auto Lunch LP code*/
$lp_auto_lunch_icon = '';
if (api_get_course_setting('enable_lp_auto_launch')) {
if ($details['autolaunch'] == 1 && $autolunch_exists == false) {
$autolunch_exists = true;
$lp_auto_lunch_icon = '<a href="'.api_get_self().'?'.api_get_cidreq().'&action=auto_launch&status=0&lp_id='.$id.'">
<img src="../img/launch.png" border="0" title="'.get_lang('EnableLPAutoLaunch').'" /></a>';
} else {
$lp_auto_lunch_icon = '<a href="'.api_get_self().'?'.api_get_cidreq().'&action=auto_launch&status=1&lp_id='.$id.'">
<img src="../img/launch_na.png" border="0" title="'.get_lang('EnableLPAutoLaunch').'" /></a>';
}
}
/* COLUMN ORDER */
// Only active while session mode is not active
@ -446,9 +455,9 @@ if (is_array($flat_list)) {
}
}
} // end if ($is_allowedToEdit)
//echo $dsp_line.$dsp_desc.$dsp_export.$dsp_edit.$dsp_delete.$dsp_visible;
echo $dsp_line.$dsp_progress.$dsp_desc.$dsp_export.$dsp_edit.$dsp_build.$dsp_visible.$dsp_publish.$dsp_reinit.$dsp_default_view.$dsp_debug.$dsp_edit_lp.$dsp_delete.$dsp_disk.$dsp_order.$dsp_edit_close;
//echo $dsp_line.$dsp_progress.$dsp_desc.$dsp_export.$dsp_edit.$dsp_build.$dsp_visible.$dsp_reinit.$dsp_force_commit.$dsp_delete;
echo $dsp_line.$dsp_progress.$dsp_desc.$dsp_export.$dsp_edit.$dsp_build.$dsp_visible.$dsp_publish.$dsp_reinit.$dsp_default_view.$dsp_debug.$dsp_edit_lp.$dsp_delete.$dsp_disk.$lp_auto_lunch_icon.$dsp_order.$dsp_edit_close;
echo "</tr>\n";
$current ++; //counter for number of elements treated
} // end foreach ($flat_list)
@ -456,7 +465,5 @@ if (is_array($flat_list)) {
} // end if ( is_array($flat_list)
echo "</table>";
echo "<br /><br />";
/* FOOTER */
Display::display_footer();
Display::display_footer();
Loading…
Cancel
Save