src/CourseBundle/Component/CourseCopy/Resources/CourseCopyLearnpath.php
<?php
/* For licensing terms, see /license.txt */
namespace Chamilo\CourseBundle\Component\CourseCopy\Resources;
/**
* Class CourseCopyLearnpath.
*
* @author Bart Mollet <bart.mollet@hogent.be>
*/
class CourseCopyLearnpath extends Resource
{
/**
* Type of learnpath (can be dokeos (1), scorm (2), aicc (3)).
*/
public $lp_type;
/**
* The name.
*/
public $name;
/**
* The reference.
*/
public $ref;
/**
* The description.
*/
public $description;
/**
* Path to the learning path files.
*/
public $path;
/**
* Whether additional commits should be forced or not.
*/
public $force_commit;
/**
* View mode by default ('embedded' or 'fullscreen').
*/
public $default_view_mod;
/**
* Default character encoding.
*/
public $default_encoding;
/**
* Display order.
*/
public $display_order;
/**
* Content editor/publisher.
*/
public $content_maker;
/**
* Location of the content (local or remote).
*/
public $content_local;
/**
* License of the content.
*/
public $content_license;
/**
* Whether to prevent reinitialisation or not.
*/
public $prevent_reinit;
/**
* JavaScript library used.
*/
public $js_lib;
/**
* Debug level for this lp.
*/
public $debug;
/**
* The items.
*/
public $items;
/**
* The learnpath visibility on the homepage.
*/
public $visibility;
/**
* Author info.
*/
public $author;
/**
* Create a new learnpath.
*
* @param int $id ID
* @param int $type Type (1,2,3,...)
* @param string $name
* @param string $path
* @param string $ref
* @param string $description
* @param string $content_local
* @param string $default_encoding
* @param string $default_view_mode
* @param bool $prevent_reinit
* @param bool $force_commit
* @param string $content_maker
* @param int $display_order
* @param string $js_lib
* @param string $content_license
* @param int $debug
* @param string $visibility
* @param int $categoryId
* @param array $items
*/
public function __construct(
$id,
$type,
$name,
$path,
$ref,
$description,
$content_local,
$default_encoding,
$default_view_mode,
$prevent_reinit,
$force_commit,
$content_maker,
$display_order,
$js_lib,
$content_license,
$debug,
$visibility,
$author,
//$preview_image,
$use_max_score,
$autolaunch,
$created_on,
$modified_on,
$published_on,
$expired_on,
$session_id,
$categoryId,
$items
) {
parent::__construct($id, RESOURCE_LEARNPATH);
$this->lp_type = $type;
$this->name = $name;
$this->path = $path;
$this->ref = $ref;
$this->description = $description;
$this->content_local = $content_local;
$this->default_encoding = $default_encoding;
$this->default_view_mod = $default_view_mode;
$this->prevent_reinit = $prevent_reinit;
$this->force_commit = $force_commit;
$this->content_maker = $content_maker;
$this->display_order = $display_order;
$this->js_lib = $js_lib;
$this->content_license = $content_license;
$this->debug = $debug;
$this->visibility = $visibility;
$this->use_max_score = $use_max_score;
$this->autolaunch = $autolaunch;
$this->created_on = $created_on;
$this->modified_on = $modified_on;
$this->published_on = $published_on;
$this->expired_on = $expired_on;
$this->session_id = $session_id;
$this->author = $author;
//$this->preview_image = $preview_image;
$this->categoryId = $categoryId;
$this->items = $items;
}
/**
* Get the items.
*/
public function get_items()
{
return $this->items;
}
/**
* Check if a given resource is used as an item in this chapter.
*/
public function has_item($resource)
{
foreach ($this->items as $item) {
if ($item['id'] == $resource->get_id() &&
isset($item['type']) && $item['type'] == $resource->get_type()
) {
return true;
}
}
return false;
}
/**
* Show this learnpath.
*/
public function show()
{
parent::show();
echo $this->name;
}
}