@ -19,8 +19,8 @@ class Plugin
{
{
protected $version = '';
protected $version = '';
protected $author = '';
protected $author = '';
protected $fields = array() ;
protected $fields = [] ;
private $settings = null ;
private $settings = [] ;
// Translation strings.
// Translation strings.
private $strings = null;
private $strings = null;
public $isCoursePlugin = false;
public $isCoursePlugin = false;
@ -70,6 +70,7 @@ class Plugin
public function get_info()
public function get_info()
{
{
$result = array();
$result = array();
$result['obj'] = $this;
$result['title'] = $this->get_title();
$result['title'] = $this->get_title();
$result['comment'] = $this->get_comment();
$result['comment'] = $this->get_comment();
$result['version'] = $this->get_version();
$result['version'] = $this->get_version();
@ -321,7 +322,7 @@ class Plugin
$interfaceLanguageId = api_get_language_id($language_interface);
$interfaceLanguageId = api_get_language_id($language_interface);
$interfaceLanguageInfo = api_get_language_info($interfaceLanguageId);
$interfaceLanguageInfo = api_get_language_info($interfaceLanguageId);
$languageParentId = ( !empty($interfaceLanguageInfo['parent_id'])?intval($interfaceLanguageInfo['parent_id']):0) ;
$languageParentId = !empty($interfaceLanguageInfo['parent_id']) ? (int) $interfaceLanguageInfo['parent_id'] : 0 ;
//1. Loading english if exists
//1. Loading english if exists
$english_path = $root.$plugin_name."/lang/english.php";
$english_path = $root.$plugin_name."/lang/english.php";
@ -333,8 +334,7 @@ class Plugin
}
}
$path = $root.$plugin_name."/lang/$language_interface.php";
$path = $root.$plugin_name."/lang/$language_interface.php";
// 2. Loading the system language
//2. Loading the system language
if (is_readable($path)) {
if (is_readable($path)) {
include $path;
include $path;
if (!empty($strings)) {
if (!empty($strings)) {
@ -391,9 +391,10 @@ class Plugin
{
{
$plugin_name = $this->get_name();
$plugin_name = $this->get_name();
$t_course = Database::get_course_table(TABLE_COURSE_SETTING);
$t_course = Database::get_course_table(TABLE_COURSE_SETTING);
$courseId = intval($courseId) ;
$courseId = (int) $courseId ;
if (empty($courseId)) {
if (empty($courseId)) {
return false;
return false;
}
}
@ -428,7 +429,8 @@ class Plugin
'subkey' => $variable,
'subkey' => $variable,
'value' => $value,
'value' => $value,
'category' => 'plugins',
'category' => 'plugins',
'type' => $type
'type' => $type,
'title' => ''
];
];
Database::insert($t_course, $params);
Database::insert($t_course, $params);
}
}
@ -444,7 +446,8 @@ class Plugin
'subkey' => $plugin_name,
'subkey' => $plugin_name,
'value' => $value,
'value' => $value,
'category' => 'plugins',
'category' => 'plugins',
'type' => $type
'type' => $type,
'title' => ''
];
];
Database::insert($t_course, $params);
Database::insert($t_course, $params);
}
}
@ -464,8 +467,6 @@ class Plugin
$result = Database::query($sql);
$result = Database::query($sql);
if (!Database::num_rows($result)) {
if (!Database::num_rows($result)) {
$tool_link = "$plugin_name/start.php";
$tool_link = "$plugin_name/start.php";
//$visibility = AddCourse::string2binary(api_get_setting('course_create_active_tools', $plugin_name));
$cToolId = AddCourse::generateToolId($courseId);
$cToolId = AddCourse::generateToolId($courseId);
Database::insert(
Database::insert(
@ -498,7 +499,9 @@ class Plugin
public function uninstall_course_fields($courseId)
public function uninstall_course_fields($courseId)
{
{
$courseId = intval($courseId);
$courseId = intval($courseId);
if (empty($courseId)) {
if (empty($courseId)) {
return false;
return false;
}
}
$plugin_name = $this->get_name();
$plugin_name = $this->get_name();
@ -627,6 +630,7 @@ class Plugin
$checkDuplicate = Database::select('*', 'settings_current', $checkCondition);
$checkDuplicate = Database::select('*', 'settings_current', $checkCondition);
if (!empty($checkDuplicate)) {
if (!empty($checkDuplicate)) {
return false;
return false;
}
}
@ -759,4 +763,13 @@ class Plugin
{
{
return true;
return true;
}
}
/**
* @param string $region
* @return string
*/
public function renderRegion($region)
{
return '';
}
}
}