Browse Source

[svn r12170] Removed unused method and useless white lines

Yannick Warnier 18 years ago
parent
commit
f0b2c1c4c8
1 changed files with 10 additions and 295 deletions
  1. 10 295
      main/newscorm/learnpath.class.php

+ 10 - 295
main/newscorm/learnpath.class.php

@@ -532,488 +532,203 @@ class learnpath {
     	
     	return $new_item_id;
     }
-    
-    
-    /**
-     * Adds an item to the current learnpath
-     * @param	integer	Parent ID
-     * @param	integer	Previous elem ID (0 if first)
-     * @param	string	Resource type to add ('file','dokeos_item')
-     * @param	string	Resource ID or path if 'file' or name if 'dokeos_chapter'
-     * @return	integer	New element ID
-     */
-	function old_add_item($parent, $previous, $type = 'dokeos_chapter', $id, $title)
-    {
-    	//TODO
-    	if($this->debug>0){error_log('New LP - In learnpath::add_item('.$parent.','.$previous.','.$type.','.$id.','.$title.')',0);}
-    	
-    	$tbl_lp_item = Database::get_course_table('lp_item');
-    	$parent = (int) $parent;
-    	$display_order = 1;
-    	
-    	if($previous == -1){
-    		//insert in latest position available
-    		$sql_check = "SELECT MAX(previous_item_id) as prev, id FROM $tbl_lp_item WHERE lp_id = " . $this->get_id() . " AND parent_item_id = " . $parent;
-    		
-    		if($this->debug>1){error_log('New LP - checking for latest item at this level: '.$sql_check,0);}
-    		
-    		$res = mysql_query($sql_check) or die(mysql_error());
-    		
-    		$res_check = api_sql_query($sql_check, __FILE__, __LINE__);
-    		$num = Database::num_rows($res_check);
-    		
-    		if($num>0){
-    			$row = Database::fetch_array($res_check);
-    			$previous = $row['id'];
-    		}else{
-    			$previous = 0;
-    		}
-    	}else{
-   			$previous = (int) $previous;
-    	}
-    	
-    	$new_item_id = -1;
-    	//check type
-    	switch ($type){
-			case 'dokeos_step':
-    			$id = $this->escape_string($id);
-				//check the next item
-    			$sql_check = "SELECT * FROM $tbl_lp_item " .
-    					"WHERE lp_id = ".$this->get_id()." " .
-    							"AND previous_item_id = $previous " .
-    							"AND parent_item_id = $parent";
-    			if($this->debug>2){error_log('New LP - Getting info from the next element: '.$sql_check,0);}
-				$res_check = api_sql_query($sql_check);
-				if(Database::num_rows($res_check)){
-					$row = Database::fetch_array($res_check);
-					$next = $row['id'];
-					//TODO check display_order
-					$display_order = $row['display_order']+1;
-				}else{
-					$next = 0;
-					$display_order = 1;
-				}
-				
-				//insert new item
-    			$sql_ins = "INSERT INTO $tbl_lp_item " .
-    					"(lp_id,item_type,ref,title," .
-    					"path,parent_item_id," .
-    					"previous_item_id,next_item_id,display_order)" .
-    					"VALUES" .
-    					"(".$this->get_id().",'$type','','$title','$id'," .
-    					"$parent," .
-    					"$previous,$next,$display_order)";
-    			if($this->debug>2){error_log('New LP - Inserting dokeos_chapter: '.$sql_ins,0);}
-    			$res_ins = api_sql_query($sql_ins);
-    			if($res_ins>0){
-	    			$new_item_id = Database::get_last_insert_id($res_ins);
-	    			//now update previous item
-	    			$sql_upd = "UPDATE $tbl_lp_item " .
-	    					"SET next_item_id = $new_item_id " .
-	    					"WHERE lp_id = ".$this->get_id()." " .
-	    							"AND id = $previous AND parent_item_id = $parent";
-
-	    			if($this->debug>2){error_log('New LP - Updating previous item: '.$sql_upd,0);}
-
-	    			$res_upd = api_sql_query($sql_upd);
-
-	    			//now update next item
-
-	    			$sql_upd = "UPDATE $tbl_lp_item " .
-
-	    					"SET previous_item_id = $new_item_id " .
-
-	    					"WHERE lp_id = ".$this->get_id()." " .
-
-	    							"AND id = $next AND parent_item_id = $parent";
-
-	    			if($this->debug>2){error_log('New LP - Updating next item: '.$sql_upd,0);}
-
-	    			$res_upd = api_sql_query($sql_upd);
-	    			
-    			}
-
-	    		break;
-
-    		default:
-
-    			break;
-
-    	}
-
-    	return $new_item_id;
-
-    }
-
+   
     /**
-
      * Static admin function allowing addition of a learnpath to a course.
-
      * @param	string	Course code
-
      * @param	string	Learnpath name
-
      * @param	string	Learnpath description string, if provided
-
      * @param	string	Type of learnpath (default = 'guess', others = 'dokeos', 'aicc',...)
-
      * @param	string	Type of files origin (default = 'zip', others = 'dir','web_dir',...)
-
      * @param	string	Zip file containing the learnpath or directory containing the learnpath
-
      * @return	integer	The new learnpath ID on success, 0 on failure
-
      */
-
     function add_lp($course,$name,$description='',$learnpath='guess',$origin='zip',$zipname='')
-
     {
-
 		//if($this->debug>0){error_log('New LP - In learnpath::add_lp()',0);}
-
     	//TODO
-
     	$tbl_lp = Database::get_course_table('lp');
-
     	//check course code exists
-
     	//check lp_name doesn't exist, otherwise append something
-
     	$i = 0;
-
     	$name = learnpath::escape_string(htmlentities($name)); //Kevin Van Den Haute: added htmlentities()
-
     	$check_name = "SELECT * FROM $tbl_lp WHERE name = '$name'";
-
     	//if($this->debug>2){error_log('New LP - Checking the name for new LP: '.$check_name,0);}
-
     	$res_name = api_sql_query($check_name);
-
 		while(Database::num_rows($res_name)){
-
     		//there is already one such name, update the current one a bit
-
     		$i++;
-
     		$name = $name.' - '.$i;
-
 	    	$check_name = "SELECT * FROM $tbl_lp WHERE name = '$name'";
-
 	    	//if($this->debug>2){error_log('New LP - Checking the name for new LP: '.$check_name,0);}
-
 	    	$res_name = api_sql_query($check_name);
-
     	}
-
     	//new name does not exist yet; keep it
-
     	//escape description
-
     	$description = learnpath::escape_string(htmlentities($description)); //Kevin: added htmlentities()
-
     	$type = 1;
-
     	switch($learnpath){
-
     		case 'guess':
-
     			break;
-
     		case 'dokeos':
-
     			$type = 1;
-
     			break;
-
     		case 'aicc':
-
     			break;
-
     	}
-
     	switch($origin){
-
     		case 'zip':
-
 	    		//check zipname string. If empty, we are currently creating a new Dokeos learnpath
-
     			break;
-
     		case 'manual':
-
 		    	$get_max = "SELECT MAX(display_order) FROM $tbl_lp";
-
 		    	$res_max = api_sql_query($get_max);
-
 		    	if(Database::num_rows($res_max)<1){
-
 		    		$dsp = 1;
-
 		    	}else{
-
 		    		$row = Database::fetch_array($res_max);
-
 		    		$dsp = $row[0]+1;
-
 		    	}
-
     			$sql_insert = "INSERT INTO $tbl_lp " .
-
     					"(lp_type,name,description,path,default_view_mod," .
-
     					"default_encoding,display_order,content_maker," .
-
     					"content_local,js_lib) " .
-
     					"VALUES ($type,'$name','$description','','embedded'," .
-
     					"'ISO-8859-1','$dsp','Dokeos'," .
-
     					"'local','')";
-
     			//if($this->debug>2){error_log('New LP - Inserting new lp '.$sql_insert,0);}
-				
     			$res_insert = api_sql_query($sql_insert);
-
 				$id = Database::get_last_insert_id();
-				
 				if($id>0){
-
 					return $id;
-
 				}
-
     			break;
-
     	}
-
     }
 
     /**
-
      * Appends a message to the message attribute
-
      * @param	string	Message to append.
-
      */
-
     function append_message($string)
-
     {
-
 		if($this->debug>0){error_log('New LP - In learnpath::append_message()',0);}
-
     	$this->message .= $string;
-
     }
 
     /**
-
      * Autocompletes the parents of an item in case it's been completed or passed
-
      * @param	integer	Optional ID of the item from which to look for parents
-
      */
-
     function autocomplete_parents($item)
-
     {
-
 		if($this->debug>0){error_log('New LP - In learnpath::autocomplete_parents()',0);}
-
     	if(empty($item)){
-
     		$item = $this->current;
-
     	}
-
     	$parent_id = $this->items[$item]->get_parent();
-
     	if($this->debug>2){error_log('New LP - autocompleting parent of item '.$item.' (item '.$parent_id.')',0);}
-
     	if(is_object($this->items[$item]) and !empty($parent_id))
-
     	{//if $item points to an object and there is a parent
-
     		if($this->debug>2){error_log('New LP - '.$item.' is an item, proceed',0);}
-
     		$current_item =& $this->items[$item];
-
     		$parent =& $this->items[$parent_id]; //get the parent
-
 			//new experiment including failed and browsed in completed status
 			$current_status = $current_item->get_status();
-    		if($current_item->is_done() || $current_status=='browsed' || $current_status=='failed'){
-
+    		if($current_item->is_done() || $current_status=='browsed' || $current_status=='failed')
+    		{
     			//if the current item is completed or passes or succeeded
-
     			$completed = true;
-
     			if($this->debug>2){error_log('New LP - Status of current item is alright',0);}
-
-    			foreach($parent->get_children() as $child){
-
+    			foreach($parent->get_children() as $child)
+    			{
     				//check all his brothers (his parent's children) for completion status
-
-    				if($child!= $item){
-
+    				if($child!= $item)
+    				{
     					if($this->debug>2){error_log('New LP - Looking at brother with ID '.$child.', status is '.$this->items[$child]->get_status(),0);}
-
     					//if($this->items[$child]->status_is(array('completed','passed','succeeded')))
     					//Trying completing parents of failed and browsed items as well
     					if($this->items[$child]->status_is(array('completed','passed','succeeded','browsed','failed')))
     					{
-
     						//keep completion status to true
-
     					}else{
-
     						if($this->debug>2){error_log('New LP - Found one incomplete child of '.$parent_id.': '.$child.' is '.$this->items[$child]->get_status(),0);}
-
     						$completed = false;
-
     					}
-
     				}
-
     			}
-
-    			if($completed == true){ //if all the children were completed
-
+    			if($completed == true)
+    			{ //if all the children were completed
 	    			$parent->set_status('completed');
-
 	    			$parent->save(false);
-
     				$this->update_queue[$parent->get_id()] = $parent->get_status();
-
     				if($this->debug>2){error_log('New LP - Added parent to update queue '.print_r($this->update_queue,true),0);}
-
 	    			$this->autocomplete_parents($parent->get_id()); //recursive call
-
     			}
-
     		}else{
-
     			//error_log('New LP - status of current item is not enough to get bothered',0);
-
     		}
-
     	}
-
     }
 
     /**
-
      * Autosaves the current results into the database for the whole learnpath
-
      */
-
     function autosave()
-
     {
-
 		if($this->debug>0){error_log('New LP - In learnpath::autosave()',0);}
-
     	//TODO add aditionnal save operations for the learnpath itself
-
     }
 
     /**
-
      * Clears the message attribute
-
      */
-
     function clear_message()
-
     {
-
 		if($this->debug>0){error_log('New LP - In learnpath::clear_message()',0);}
-
     	$this->message = '';
-
     }
-
     /**
-
      * Closes the current resource
-
      *
-
      * Stops the timer
-
      * Saves into the database if required
-
      * Clears the current resource data from this object
-
      * @return	boolean	True on success, false on failure
-
      */
 
     function close()
-
     {
-
 		if($this->debug>0){error_log('New LP - In learnpath::close()',0);}
-
     	if(empty($this->lp_id))
-
     	{
-
     		$this->error = 'Trying to close this learnpath but no ID is set';
-
     		return false;
-
     	}
-
     	$this->current_time_stop = time();
-
     	if($this->save)
-
     	{
-
-	    	$learnpath_view_table = Database::get_course_table(LEARNPATH_VIEW_TABLE);
-
+	    	$learnpath_view_table = Database::get_course_table(TABLE_LP_VIEW);
 	    	/*
-
 	    	$sql = "UPDATE $learnpath_view_table " .
-
 	    			"SET " .
-
 	    			"stop_time = ".$this->current_time_stop.", " .
-
 	    			"score = ".$this->current_score.", ".
-
 	    			"WHERE learnpath_id = '".$this->lp_id."'";
-
 	    	//$res = Database::query($sql);
-
 	    	$res = api_sql_query($res);
-
 	    	if(mysql_affected_rows($res)<1)
-
 	    	{
-
 	    		$this->error = 'Could not update learnpath_view table while closing learnpath';
-
 	    		return false;
-
 	    	}
-
 	    	*/    		
-
     	}
-
     	$this->ordered_items = array();
-
     	$this->index=0;
-
     	unset($this->lp_id);
-
     	//unset other stuff
-
     	return true;
-
     }
 
     /**