[svn r22200] logi changes-added glossary en course copy

skala
Isaac Flores 16 years ago
parent 0a55e46f9f
commit 89a60b0d29
  1. 24
      main/coursecopy/classes/CourseBuilder.class.php
  2. 23
      main/coursecopy/classes/CourseRestorer.class.php
  3. 3
      main/coursecopy/classes/CourseSelectForm.class.php
  4. 5
      main/coursecopy/classes/Resource.class.php

@ -1,4 +1,4 @@
<?php // $Id: CourseBuilder.class.php 19948 2009-04-21 17:27:59Z juliomontoya $
<?php // $Id: CourseBuilder.class.php 22200 2009-07-17 19:47:58Z iflorespaz $
/*
==============================================================================
Dokeos - elearning and course management software
@ -39,6 +39,7 @@ require_once ('QuizQuestion.class.php');
require_once ('Learnpath.class.php');
require_once ('Survey.class.php');
require_once ('SurveyQuestion.class.php');
require_once ('Glossary.class.php');
/**
* Class which can build a course-object from a Dokeos-course.
* @author Bart Mollet <bart.mollet@hogent.be>
@ -85,7 +86,7 @@ class CourseBuilder
$this->build_quizzes();
$this->build_learnpaths();
$this->build_surveys();
$this->build_glossarys();
//TABLE_LINKED_RESOURCES is the "resource" course table, which is deprecated, apparently
$table = Database :: get_course_table(TABLE_LINKED_RESOURCES);
foreach ($this->course->resources as $type => $resources)
@ -482,5 +483,24 @@ class CourseBuilder
closedir($dir);
}
}
/**
* Build the glossarys
*/
function build_glossarys() {
$table_glossary = Database :: get_course_table(TABLE_GLOSSARY);
if (!empty($this->course->type) && $this->course->type=='partial')
$sql = 'SELECT * FROM '.$table_glossary.' g ';
else
$sql = 'SELECT * FROM '.$table_glossary.' g ';
$db_result = api_sql_query($sql, __FILE__, __LINE__);
while ($obj = Database::fetch_object($db_result))
{
$doc = new Glossary($obj->glossary_id, $obj->name, $obj->description, $obj->display_order);
$this->course->add_resource($doc);
}
}
}
?>

@ -1,4 +1,4 @@
<?php // $Id: CourseRestorer.class.php 21814 2009-07-06 16:37:11Z iflorespaz $
<?php // $Id: CourseRestorer.class.php 22200 2009-07-17 19:47:58Z iflorespaz $
/*
==============================================================================
Dokeos - elearning and course management software
@ -37,6 +37,7 @@ require_once ('Survey.class.php');
require_once ('SurveyQuestion.class.php');
require_once ('mkdirr.php');
require_once ('rmdirr.php');
require_once ('Glossary.class.php');
include_once(api_get_path(LIBRARY_PATH) . 'fileUpload.lib.php');
define('FILE_SKIP', 1);
@ -104,6 +105,7 @@ class CourseRestorer
$this->restore_learnpaths();
$this->restore_surveys();
$this->restore_student_publication();
$this->restore_glossary();
// Restore the item properties
$table = Database :: get_course_table(TABLE_ITEM_PROPERTY, $this->course->destination_db);
foreach ($this->course->resources as $type => $resources) {
@ -113,6 +115,7 @@ class CourseRestorer
{
// First check if there isn't allready a record for this resource
$sql = "SELECT * FROM $table WHERE tool = '".$property['tool']."' AND ref = '".$resource->destination_id."'";
$res = api_sql_query($sql,__FILE__,__LINE__);
if( Database::num_rows($res) == 0) {
// The to_group_id and to_user_id are set to default values as users/groups possibly not exist in the target course
@ -1192,5 +1195,23 @@ class CourseRestorer
}
return '';
}
/**
* Restore glossary
*/
function restore_glossary()
{
if ($this->course->has_resources(RESOURCE_GLOSSARY))
{
$table_glossary = Database :: get_course_table(TABLE_GLOSSARY, $this->course->destination_db);
$t_item_propery = Database :: get_course_table(TABLE_ITEM_PROPERTY, $this->course->destination_db);
$resources = $this->course->resources;
foreach ($resources[RESOURCE_GLOSSARY] as $id => $glossary) {
$this->course->resources[RESOURCE_GLOSSARY][$id]->destination_id = $glossary->glossary_id;
$sql = "INSERT INTO ".$table_glossary." SET glossary_id = '".Database::escape_string($glossary->glossary_id)."', name = '".Database::escape_string($glossary->name)."', description = '".Database::escape_string($glossary->description)."', display_order='".Database::escape_string($glossary->display_order)."'";
Database::query($sql, __FILE__, __LINE__);
}
}
}
}
?>

@ -1,5 +1,5 @@
<?php
// $Id: CourseSelectForm.class.php 19948 2009-04-21 17:27:59Z juliomontoya $
// $Id: CourseSelectForm.class.php 22200 2009-07-17 19:47:58Z iflorespaz $
/*
==============================================================================
Dokeos - elearning and course management software
@ -49,6 +49,7 @@ class CourseSelectForm
$resource_titles[RESOURCE_SCORM] = 'SCORM';
$resource_titles[RESOURCE_TOOL_INTRO] = get_lang('ToolIntro');
$resource_titles[RESOURCE_SURVEY] = get_lang('Survey');
$resource_titles[RESOURCE_GLOSSARY] = get_lang('Glossary');
?>
<script language="JavaScript" type="text/javascript">
function exp(item) {

@ -1,5 +1,5 @@
<?php
// $Id: Resource.class.php 11784 2007-03-29 14:45:54Z yannoo $
// $Id: Resource.class.php 22200 2009-07-17 19:47:58Z iflorespaz $
/*
==============================================================================
Dokeos - elearning and course management software
@ -27,6 +27,7 @@
* All possible resource-types
*/
define('RESOURCE_DOCUMENT', 'document');
define('RESOURCE_GLOSSARY', 'glossary');
define('RESOURCE_EVENT', 'calendar_event');
define('RESOURCE_LINK', 'link');
define('RESOURCE_COURSEDESCRIPTION', 'course_description');
@ -176,6 +177,8 @@ class Resource
// return TOOL_SURVEY_QUESTION;
//case RESOURCE_SURVEYINVITATION:
// return TOOL_SURVEY_INVITATION;
case RESOURCE_GLOSSARY:
return TOOL_GLOSSARY;
default:
return null;
}

Loading…
Cancel
Save