[svn r12171] Removed deprecated method and useless white lines

skala
Yannick Warnier 19 years ago
parent f0b2c1c4c8
commit 34e3798e9a
  1. 110
      main/newscorm/learnpath.class.php

@ -732,55 +732,30 @@ class learnpath {
}
/**
* Static admin function allowing removal of a learnpath
* @param string Course code
* @param integer Learnpath ID
* @param string Whether to delete data or keep it (default: 'keep', others: 'remove')
* @return boolean True on success, false on failure (might change that to return number of elements deleted)
*/
function delete($course=null,$id=null,$delete='keep')
{
//TODO implement a way of getting this to work when the current object is not set
//In clear: implement this in the item class as well (abstract class) and use the given ID in queries
//if(empty($course)){$course = api_get_course_id();}
//if(empty($id)){$id = $this->get_id();}
//if($this->debug>0){error_log('New LP - In learnpath::delete()',0);}
foreach($this->items as $id => $dummy)
{
$this->items[$id]->delete();
}
$lp = Database::get_course_table('lp');
$lp_view = Database::get_course_table('lp_view');
$sql_del_view = "DELETE FROM $lp_view WHERE lp_id = ".$this->lp_id;
//if($this->debug>2){error_log('New LP - Deleting views bound to lp '.$this->lp_id.': '.$sql_del_view,0);}
$res_del_view = api_sql_query($sql_del_view);
//if($this->debug>2){error_log('New LP - Deleting lp '.$this->lp_id.' of type '.$this->type,0);}
if($this->type == 2 OR $this->type==3){
//this is a scorm learning path, delete the files as well
$sql = "SELECT path FROM $lp WHERE id = ".$this->lp_id;
@ -811,157 +786,72 @@ class learnpath {
}
/**
* Removes all the children of one item - dangerous!
* @param integer Element ID of which children have to be removed
* @return integer Total number of children removed
*/
function delete_children_items($id){
if($this->debug>0){error_log('New LP - In learnpath::delete_children_items('.$id.')',0);}
$num = 0;
if(empty($id) || $id != strval(intval($id))){return false;}
$lp_item = Database::get_course_table('lp_item');
$sql = "SELECT * FROM $lp_item WHERE parent_item_id = $id";
$res = api_sql_query($sql);
while($row = Database::fetch_array($res)){
$num += $this->delete_children_items($row['id']);
$sql_del = "DELETE FROM $lp_item WHERE id = ".$row['id'];
$res_del = api_sql_query($sql_del);
$num++;
}
return $num;
}
/**
* Removes an item from the current learnpath
* @param integer Elem ID (0 if first)
* @param integer Whether to remove the resource/data from the system or leave it (default: 'keep', others 'remove')
* @return integer Number of elements moved
* @todo implement resource removal
*/
function delete_item($id, $remove='keep')
{
if($this->debug>0){error_log('New LP - In learnpath::delete_item()',0);}
//TODO - implement the resource removal
if(empty($id) || $id != strval(intval($id))){return false;}
//first select item to get previous, next, and display order
$lp_item = Database::get_course_table('lp_item');
$sql_sel = "SELECT * FROM $lp_item WHERE id = $id";
$res_sel = api_sql_query($sql_sel,__FILE__,__LINE__);
if(Database::num_rows($res_sel)<1){return false;}
$row = Database::fetch_array($res_sel);
$previous = $row['previous_item_id'];
$next = $row['next_item_id'];
$display = $row['display_order'];
$parent = $row['parent_item_id'];
$lp = $row['lp_id'];
//delete children items
$num = $this->delete_children_items($id);
if($this->debug>2){error_log('New LP - learnpath::delete_item() - deleted '.$num.' children of element '.$id,0);}
//now delete the item
$sql_del = "DELETE FROM $lp_item WHERE id = $id";
if($this->debug>2){error_log('New LP - Deleting item: '.$sql_del,0);}
$res_del = api_sql_query($sql_del,__FILE__,__LINE__);
//now update surrounding items
$sql_upd = "UPDATE $lp_item SET next_item_id = $next WHERE id = $previous";
$res_upd = api_sql_query($sql_upd,__FILE__,__LINE__);
$sql_upd = "UPDATE $lp_item SET previous_item_id = $previous WHERE id = $next";
$res_upd = api_sql_query($sql_upd,__FILE__,__LINE__);
//now update all following items with new display order
$sql_all = "UPDATE $lp_item SET display_order = display_order-1 WHERE lp_id = $lp AND parent_item_id = $parent AND display_order > $display";
$res_all = api_sql_query($sql_all,__FILE__,__LINE__);
}
/**
* Updates an item's content in place
* @param integer Element ID
* @param string New content
* @return boolean True on success, false on error
*/
function old_edit_item($id,$content)
{
if($this->debug>0){error_log('New LP - In learnpath::edit_item()',0);}
if(empty($id) or ($id != strval(intval($id))) or empty($content)){ return false; }
$content = $this->escape_string($content);
$lp_item = Database::get_course_table('lp_item');
$sql_upd = "UPDATE $lp_item SET title = '$content' WHERE id = $id";
$res_upd = api_sql_query($sql_upd,__FILE__,__LINE__);
//TODO update the item object (can be ignored for now because refreshed)
return true;
}
function edit_item($id, $parent, $previous, $title, $description, $prerequisites=0)
{
if($this->debug > 0){error_log('New LP - In learnpath::edit_item()', 0);}

Loading…
Cancel
Save