32                $this->objective_id = $a_objective_id;
 
   33                if($this->objective_id)
 
   59                $query = 
"SELECT crs_id FROM crs_objectives ".
 
   60                        "WHERE objective_id = ".$ilDB->quote($a_objective_id ,
'integer');
 
   87                $query = 
'SELECT passes from crs_objectives '.
 
   88                                'WHERE objective_id = '.$ilDB->quote($a_objective_id,
'integer');
 
   92                        return (
int) 
$row->passes;
 
  101                $query = 
'SELECT title,description from crs_objectives '.
 
  102                                'WHERE objective_id = '.$ilDB->quote($a_objective_id,
'integer');
 
  106                        if(!$a_add_description)
 
  108                                return $row[
'title'];                           
 
  127        public function ilClone($a_target_id,$a_copy_id)
 
  133                $query = 
"SELECT * FROM crs_objectives ".
 
  134                        "WHERE crs_id  = ".$this->db->quote($this->course_obj->getId() ,
'integer').
' '.
 
  135                        "ORDER BY position ";
 
  151                        $new_objective->setTitle(
$row->title);
 
  152                        $new_objective->setDescription(
$row->description);
 
  153                        $new_objective->setActive(
$row->active);
 
  158                        include_once(
'Modules/Course/classes/class.ilCourseObjectiveQuestion.php');
 
  162                        include_once 
'./Modules/Course/classes/Objectives/class.ilLORandomTestQuestionPools.php';
 
  163                        include_once 
'./Modules/Course/classes/Objectives/class.ilLOSettings.php';
 
  169                        $random_i->copy($a_copy_id, $new_course->getId(), 
$objective_id);
 
  176                        $random_q->copy($a_copy_id, $new_course->getId(), 
$objective_id);
 
  178                        include_once 
'./Modules/Course/classes/Objectives/class.ilLOTestAssignments.php';
 
  183                                $assignment_it->cloneSettings($a_copy_id, $new_course->getId(), 
$objective_id);
 
  189                                $assignment_qt->cloneSettings($a_copy_id, $new_course->getId(), 
$objective_id);
 
  195                        include_once(
'Modules/Course/classes/class.ilCourseObjectiveMaterials.php');
 
  197                        $objective_material->cloneDependencies(
$objective_id,$a_copy_id);
 
  205                $this->active = $a_stat;
 
  215                $this->passes = $a_passes;
 
  225                return $this->passes > 0;
 
  231                $this->title = $a_title;
 
  239                $this->description = $a_description;
 
  243                return $this->description;
 
  247                $this->objective_id = $a_objective_id;
 
  257                $this->position = $a_pos;
 
  266                $next_id = 
$ilDB->nextId(
'crs_objectives');
 
  267                $query = 
"INSERT INTO crs_objectives (crs_id,objective_id,active,title,description,position,created,passes) ".
 
  269                        $ilDB->quote($this->course_obj->getId() ,
'integer').
", ".
 
  270                        $ilDB->quote($next_id,
'integer').
", ".
 
  272                        $ilDB->quote($this->
getTitle() ,
'text').
", ".
 
  275                        $ilDB->quote(time() ,
'integer').
", ".
 
  282                include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
 
  285                return $this->objective_id = $next_id;
 
  293                $query = 
"UPDATE crs_objectives ".
 
  294                        "SET title = ".$ilDB->quote($this->
getTitle() ,
'text').
", ".
 
  295                        'active = '.$ilDB->quote($this->
isActive(),
'integer').
', '.
 
  296                        "description = ".$ilDB->quote($this->
getDescription() ,
'text').
", ".
 
  297                        'passes = '.$ilDB->quote($this->
getPasses(),
'integer').
' '.
 
  298                        "WHERE objective_id = ".$ilDB->quote($this->
getObjectiveId() ,
'integer').
" ".
 
  299                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  317                $query = 
"UPDATE crs_objectives ".
 
  318                        "SET position = ".$this->db->quote((
string) $a_position ,
'integer').
" ".
 
  319                        "WHERE objective_id = ".$this->db->quote($this->
getObjectiveId() ,
'integer').
" ";
 
  332                return (
bool) strlen($this->
getTitle());
 
  339                include_once 
'./Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
 
  342                $tmp_obj_qst->deleteAll();
 
  344                include_once 
'./Modules/Course/classes/class.ilCourseObjectiveMaterials.php';
 
  347                $tmp_obj_lm->deleteAll();
 
  350                $query = 
"DELETE FROM crs_objectives ".
 
  351                        "WHERE crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ".
 
  352                        "AND objective_id = ".$ilDB->quote($this->
getObjectiveId() ,
'integer').
" ";
 
  356                include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
 
  376                $query = 
"UPDATE crs_objectives ".
 
  377                        "SET position = position + 1 ".
 
  378                        "WHERE position = ".$ilDB->quote($this->
__getPosition() - 1 ,
'integer').
" ".
 
  379                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  382                $query = 
"UPDATE crs_objectives ".
 
  383                        "SET position = position - 1 ".
 
  384                        "WHERE objective_id = ".$ilDB->quote($this->
getObjectiveId() ,
'integer').
" ".
 
  385                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  407                $query = 
"UPDATE crs_objectives ".
 
  408                        "SET position = position - 1 ".
 
  409                        "WHERE position = ".$ilDB->quote($this->
__getPosition() + 1 ,
'integer').
" ".
 
  410                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  413                $query = 
"UPDATE crs_objectives ".
 
  414                        "SET position = position + 1 ".
 
  415                        "WHERE objective_id = ".$ilDB->quote($this->
getObjectiveId() ,
'integer').
" ".
 
  416                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  427                $this->position = $a_position;
 
  431                return $this->position;
 
  435                $this->created = $a_created;
 
  439                return $this->created;
 
  449                        $query = 
"SELECT * FROM crs_objectives ".
 
  450                                "WHERE crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ".
 
  451                                "AND objective_id = ".$ilDB->quote($this->
getObjectiveId() ,
'integer').
" ";
 
  474                switch($this->course_obj->getOrderType())
 
  477                                return 'ORDER BY position';
 
  480                                return 'ORDER BY title';
 
  483                                return 'ORDER BY create';
 
  492                $query = 
"UPDATE crs_objectives ".
 
  493                        "SET position = position - 1 ".
 
  494                        "WHERE position > ".$ilDB->quote($this->
__getPosition() ,
'integer').
" ".
 
  495                        "AND crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  505                $query = 
"SELECT MAX(position) pos FROM crs_objectives ".
 
  506                        "WHERE crs_id = ".$ilDB->quote($this->course_obj->getId() ,
'integer').
" ";
 
  522                if($a_activated_only)
 
  524                        $query = 
"SELECT objective_id FROM crs_objectives ".
 
  525                                "WHERE crs_id = ".$ilDB->quote($course_id ,
'integer').
" ".
 
  526                                'AND active = '.$ilDB->quote(1,
'integer').
' '.
 
  531                        $query = 
"SELECT objective_id FROM crs_objectives ".
 
  532                                "WHERE crs_id = ".$ilDB->quote($course_id ,
'integer').
" ".
 
  539                        $ids[] = 
$row->objective_id;
 
  542                return $ids ? $ids : array();
 
  558                $in = 
$ilDB->in(
'objective_id',$ids,
false,
'integer');
 
  561                $query = 
"DELETE FROM crs_objective_lm WHERE  ".$in;
 
  564                $query = 
"DELETE FROM crs_objective_tst WHERE ".$in;
 
  567                $query = 
"DELETE FROM crs_objective_qst WHERE ".$in;
 
  570                $query = 
"DELETE FROM crs_objectives WHERE crs_id = ".$ilDB->quote($course_id ,
'integer');
 
  574                include_once(
"./Services/Tracking/classes/class.ilLPStatusWrapper.php");
 
  590                                'online' => (
int) $this->
isActive(),
 
  591                                'position' => (
int) $this->position,
 
  599                include_once 
'./Modules/Course/classes/class.ilCourseObjectiveMaterials.php';
 
  601                $materials->toXml($writer);
 
  604                include_once 
'./Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
 
  606                $test->toXml($writer);
 
  608                include_once 
'./Modules/Course/classes/Objectives/class.ilLOTestAssignments.php';
 
  612                include_once 
'./Modules/Course/classes/Objectives/class.ilLORandomTestQuestionPools.php';
 
const DB_FETCHMODE_OBJECT
class ilCourseObjectiveMaterials
class ilcourseobjectiveQuestion
static lookupObjectiveTitle($a_objective_id, $a_add_description=false)
__setPosition($a_position)
static _lookupContainerIdByObjectiveId($a_objective_id)
Get container of object.
ilCourseObjective(&$course_obj, $a_objective_id=0)
static _getCountObjectives($a_obj_id, $a_activated_only=false)
get count objectives
static lookupMaxPasses($a_objective_id)
static _getObjectiveIds($course_id, $a_activated_only=false)
setDescription($a_description)
toXml(ilXmlWriter $writer)
write objective xml
writePosition($a_position)
write position
setObjectiveId($a_objective_id)
ilClone($a_target_id, $a_copy_id)
clone objectives
static toXml(ilXmlWriter $writer, $a_objective_id)
const TYPE_TEST_QUALIFIED
static getInstance($a_container_id)
Get instance by container id.
_refreshStatus($a_obj_id, $a_users=null)
Set dirty.
static getLogger($a_component_id)
Get component logger.
getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
xmlEndTag($tag)
Writes an endtag.
xmlStartTag($tag, $attrs=NULL, $empty=FALSE, $encode=TRUE, $escape=TRUE)
Writes a starttag.
xmlElement($tag, $attrs=NULL, $data=Null, $encode=TRUE, $escape=TRUE)
Writes a basic element (no children, just textual content)