瀏覽代碼

[svn r12524] Added session flag to check order of script loading. Ugly trick to avoid frames targets problems.

Yannick Warnier 18 年之前
父節點
當前提交
f539f516fa
共有 2 個文件被更改,包括 10 次插入1 次删除
  1. 8 1
      main/newscorm/lp_header.php
  2. 2 0
      main/newscorm/lp_view.php

+ 8 - 1
main/newscorm/lp_header.php

@@ -19,7 +19,14 @@ if(isset($_SESSION['lpobject'])){
 }
 $path_name = htmlspecialchars($_SESSION['oLP']->get_name());
 $path_id = $_SESSION['oLP']->get_id();
-
+// use the flag set in lp_view.php to check if this script has been loaded
+// as a frame of lp_view.php. Otherwise, redirect to lp_controller
+if(!isset($_SESSION['loaded_lp_view']) || $_SESSION['loaded_lp_view']==false)
+{
+	header('location: lp_controller.php?'.api_get_cidreq().'&action=view&item_id='.$path_id);
+}
+//unset the flag as it has been used already
+$_SESSION['loaded_lp_view'] = false;
 // Check if the learnpaths list should be accessible to the user
 $show_link = true;
 if(!api_is_allowed_to_edit()) //if the user has no edit permission (simple user)

+ 2 - 0
main/newscorm/lp_view.php

@@ -166,6 +166,8 @@ if($_SESSION['oLP']->mode == 'fullscreen'){
 	else{
 		$audio_recorder_studentview = false;
 	}
+	//set flag to ensure lp_header.php is loaded by this script (flag is unset in lp_header.php)
+	$_SESSION['loaded_lp_view'] = true;
 	?>
 	<frameset rows="130,*">
 		<frame id="header" src="lp_header.php" border="0" frameborder="0" scrolling="no" />