⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resource.class.php

📁 完美的在线教育系统
💻 PHP
字号:
<?php// $Id: Resource.class.php 11784 2007-03-29 14:45:54Z yannoo $/*==============================================================================	Dokeos - elearning and course management software	Copyright (c) 2004 Dokeos S.A.	Copyright (c) 2003 Ghent University (UGent)	Copyright (c) 2001 Universite catholique de Louvain (UCL)	Copyright (c) Bart Mollet (bart.mollet@hogent.be)	For a full list of contributors, see "credits.txt".	The full license can be read in "license.txt".	This program is free software; you can redistribute it and/or	modify it under the terms of the GNU General Public License	as published by the Free Software Foundation; either version 2	of the License, or (at your option) any later version.	See the GNU General Public License for more details.	Contact address: Dokeos, 44 rue des palais, B-1030 Brussels, Belgium	Mail: info@dokeos.com==============================================================================*//** * All possible resource-types */define('RESOURCE_DOCUMENT', 'document');define('RESOURCE_EVENT', 'calendar_event');define('RESOURCE_LINK', 'link');define('RESOURCE_COURSEDESCRIPTION', 'course_description');define('RESOURCE_LEARNPATH', 'learnpath');define('RESOURCE_ANNOUNCEMENT', 'announcement');define('RESOURCE_FORUM', 'forum');define('RESOURCE_FORUMTOPIC', 'thread');define('RESOURCE_FORUMPOST', 'post');define('RESOURCE_QUIZ', 'quiz');define('RESOURCE_QUIZQUESTION', 'Exercise_Question');define('RESOURCE_TOOL_INTRO', 'Tool introduction');define('RESOURCE_LINKCATEGORY', 'Link_Category');define('RESOURCE_FORUMCATEGORY', 'Forum_Category');define('RESOURCE_SCORM', 'Scorm');define('RESOURCE_SURVEY','survey');define('RESOURCE_SURVEYQUESTION','survey_question');define('RESOURCE_SURVEYINVITATION','survey_invitation');/** * Representation of a resource in a Dokeos-course. * This is a base class of which real resource-classes (for Links, * Documents,...) should be derived. * @author Bart Mollet <bart.mollet@hogent.be>s * @package  dokeos.backup * @todo Use the gloabaly defined constants voor tools and remove the RESOURCE_* * constants */class Resource{	/**	 * The id from this resource in the source course	 */	var $source_id;	/**	 * The id from this resource in the destination course	 */	var $destination_id;	/**	 * The type of this resource	 */	var $type;	/**	 * Linked resources	 */	var $linked_resources;	/**	 * The properties of this resource	 */	var $item_properties;	/**	 * Create a new Resource	 * @param int $id The id of this resource in the source course.	 * @param constant $type The type of this resource.	 */	function Resource($id, $type)	{		$this->source_id = $id;		$this->type = $type;		$this->destination_id = -1;		$this->linked_resources = array ();		$this->item_properties = array ();	}	/**	 * Add linked resource	 */	function add_linked_resource($type, $id)	{		$this->linked_resources[$type][] = $id;	}	/**	 * Get linked resources	 */	function get_linked_resources()	{		return $this->linked_resources;	}	/**	 * Checks if this resource links to a given resource	 */	function links_to(& $resource)	{		if (is_array($this->linked_resources[$resource->get_type()]))		{			return in_array($resource->get_id(), $this->linked_resources[$resource->get_type()]);		}		return false;	}	/**	 * Returns the id of this resource.	 * @return int The id of this resource in the source course.	 */	function get_id()	{		return $this->source_id;	}	/**	 * Resturns the type of this resource	 * @return constant The type.	 */	function get_type()	{		return $this->type;	}	/**	 * Get the constant which defines the tool of this resource. This is	 * used in the item_properties table.	 * @todo once the RESOURCE_* constants are replaced by the globally	 * defined TOOL_* constants, this function will be replaced by get_type()	 */	function get_tool()	{		switch($this->get_type())		{			case RESOURCE_DOCUMENT:				return TOOL_DOCUMENT;			case RESOURCE_LINK:				return TOOL_LINK;			case RESOURCE_EVENT:				return TOOL_CALENDAR_EVENT;			case RESOURCE_COURSEDESCRIPTION:				return TOOL_COURSE_DESCRIPTION;			case RESOURCE_LEARNPATH:				return TOOL_LEARNPATH;			case RESOURCE_ANNOUNCEMENT:				return TOOL_ANNOUNCEMENT;			case RESOURCE_FORUM:				return TOOL_FORUM;			case RESOURCE_FORUMTOPIC:				return TOOL_THREAD;			case RESOURCE_FORUMPOST:				return TOOL_POST;			case RESOURCE_QUIZ:				return TOOL_QUIZ;			//case RESOURCE_QUIZQUESTION: //no corresponding global constant			//	return TOOL_QUIZ_QUESTION;			//case RESOURCE_TOOL_INTRO:			//	return TOOL_INTRO;			//case RESOURCE_LINKCATEGORY:			//	return TOOL_LINK_CATEGORY;			//case RESOURCE_TOOL_FORUMCATEGORY:			//	return TOOL_FORUM_CATEGORY;			//case RESOURCE_SCORM:			//	return TOOL_SCORM_DOCUMENT;			case RESOURCE_SURVEY:				return TOOL_SURVEY;			//case RESOURCE_SURVEYQUESTION:			//	return TOOL_SURVEY_QUESTION;			//case RESOURCE_SURVEYINVITATION:			//	return TOOL_SURVEY_INVITATION;			default:				return null;		}	}	/**	 * Set the destination id	 * @param int $id The id of this resource in the destination course.	 */	function set_new_id($id)	{		$this->destination_id = $id;	}	/**	 * Check if this resource is allready restored in the destination course.	 * @return bool true if allready restored (i.e. destination_id is set).	 */	function is_restored()	{		return $this->destination_id > -1;	}	/**	 * Show this resource	 */	function show()	{		//echo 'RESOURCE: '.$this->get_id().' '.$type[$this->get_type()].' ';	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -