[svn r20858] Fixed autostart audio when a test is finished - partial FS#4232 (by rvelasquez)

skala
Cristian Fasanando 16 years ago
parent 6089984995
commit 75b1ca3470
  1. 40
      main/newscorm/learnpath.class.php
  2. 16
      main/newscorm/lp_nav.php
  3. 9
      main/newscorm/lp_view.php

@ -2088,29 +2088,55 @@ class learnpath {
* Returns the HTML necessary to print a mediaplayer block inside a page
* @return string The mediaplayer HTML
*/
function get_mediaplayer() {
function get_mediaplayer($autostart='true') {
global $_course;
// Database table definition
$tbl_lp_item = Database :: get_course_table('lp_item');
$tbl_lp_item_view = Database :: get_course_table('lp_item_view');
// getting all the information about the item
$sql = "SELECT * FROM " . $tbl_lp_item . " as lp WHERE lp.id = '" . $_SESSION['oLP']->current . "'";
$sql = "SELECT * FROM " . $tbl_lp_item . " as lp inner join " . $tbl_lp_item_view . " as lp_view on lp.id = lp_view.lp_item_id " .
"WHERE lp.id = '" . $_SESSION['oLP']->current . "'";
$result = api_sql_query($sql, __FILE__, __LINE__);
$row = mysql_fetch_assoc($result);
$output = '';
if (!empty ($row['audio'])) {
// the mp3 player
$output = '<div id="container"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</div>';
$list = $_SESSION['oLP']->get_toc();
$type_quiz = false;
foreach($list as $toc) {
if ($toc['id'] == $_SESSION['oLP']->current && ($toc['type']=='quiz') ) {
$type_quiz = true;
}
}
if ($type_quiz) {
if ($_SESSION['oLP']->prevent_reinit == 1) {
$row['status'] === 'completed' ? $autostart_audio = 'false' : $autostart_audio = 'true';
} else {
$autostart_audio = $autostart;
}
} else {
$autostart_audio = 'true';
}
// the mp3 player
$output = '<div id="container">';
$output .= '<script type="text/javascript" src="../inc/lib/mediaplayer/swfobject.js"></script>';
$output .= '<script type="text/javascript">
var s1 = new SWFObject("../inc/lib/mediaplayer/player.swf","ply","250","20","9","#FFFFFF");
s1.addParam("allowscriptaccess","always");
s1.addParam("flashvars","file=' . api_get_path(WEB_COURSE_PATH) . $_course['path'] . '/document/audio/' . $row['audio'] . '&autostart=true");
s1.addParam("flashvars","file=' . api_get_path(WEB_COURSE_PATH) . $_course['path'] . '/document/audio/' . $row['audio'] . '&autostart=' . $autostart_audio.'");
s1.write("container");
</script>';
</script></div>';
}
return $output;
}
/**

@ -25,6 +25,7 @@ $htmlHeadXtra[] = '<script language="JavaScript" type="text/javascript">
$progress_bar = '';
$navigation_bar = '';
$display_mode = '';
$autostart = 'true';
if(isset($_SESSION['lpobject'])) {
//if($debug>0) //error_log('New LP - in lp_nav.php - SESSION[lpobject] is defined',0);
@ -35,22 +36,21 @@ if(isset($_SESSION['lpobject'])) {
//error_log('New LP - in lp_nav.php - SESSION[lpobject] is not object - dying',0);
die('Could not instanciate lp object');
}
$display_mode = $_SESSION['oLP']->mode;
$scorm_css_header=true;
$lp_theme_css=$_SESSION['oLP']->get_theme();
//Setting up the CSS theme if exists
include_once('../inc/reduced_header.inc.php');
$display_mode = $_SESSION['oLP']->mode;
$scorm_css_header = true;
$lp_theme_css = $_SESSION['oLP']->get_theme();
//Setting up the CSS theme if exists
include_once('../inc/reduced_header.inc.php');
if (!empty($lp_theme_css) && !empty($mycourselptheme) && $mycourselptheme!=-1 && $mycourselptheme== 1 ) {
global $lp_theme_css;
} else {
$lp_theme_css=$my_style;
}
}
//$progress_bar = $_SESSION['oLP']->get_progress_bar();
$progress_bar = $_SESSION['oLP']->get_progress_bar('',-1,'',true);
$navigation_bar = $_SESSION['oLP']->get_navigation_bar();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer($autostart);
}
session_write_close();
?>

@ -165,7 +165,7 @@ foreach($list as $toc) {
}
$ctok = $_SESSION['sec_token'];
$autostart = 'true';
// update status,total_time from lp_item_view table when you finish the exercises in learning path
if ($type_quiz && !empty($_REQUEST['exeId']) && isset($_GET['lp_id']) && isset($_GET['lp_item_id'])) {
global $src;
@ -207,7 +207,8 @@ if ($type_quiz && !empty($_REQUEST['exeId']) && isset($_GET['lp_id']) && isset($
}
}
$src = 'blank.php?msg=exerciseFinished';
$src = 'blank.php?msg=exerciseFinished';
$autostart = 'false';
}
$_SESSION['oLP']->set_previous_item($lp_item_id);
@ -283,7 +284,7 @@ if($_SESSION['oLP']->mode == 'fullscreen') {
$progress_bar = $_SESSION['oLP']->get_progress_bar('', -1, '', true);
$navigation_bar = $_SESSION['oLP']->get_navigation_bar();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer($autostart);
$tbl_lp_item = Database::get_course_table('lp_item');
$show_audioplayer = false;
@ -491,7 +492,7 @@ else
$progress_bar = $_SESSION['oLP']->get_progress_bar('', -1, '', true);
$navigation_bar = $_SESSION['oLP']->get_navigation_bar();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer();
$mediaplayer = $_SESSION['oLP']->get_mediaplayer($autostart);
$tbl_lp_item = Database::get_course_table('lp_item');
$show_audioplayer = false;

Loading…
Cancel
Save