• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

Services/Tracking/classes/class.ilLPStatusFactory.php

Go to the documentation of this file.
00001 <?php
00002 /*
00003         +-----------------------------------------------------------------------------+
00004         | ILIAS open source                                                           |
00005         +-----------------------------------------------------------------------------+
00006         | Copyright (c) 1998-2001 ILIAS open source, University of Cologne            |
00007         |                                                                             |
00008         | This program is free software; you can redistribute it and/or               |
00009         | modify it under the terms of the GNU General Public License                 |
00010         | as published by the Free Software Foundation; either version 2              |
00011         | of the License, or (at your option) any later version.                      |
00012         |                                                                             |
00013         | This program is distributed in the hope that it will be useful,             |
00014         | but WITHOUT ANY WARRANTY; without even the implied warranty of              |
00015         | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               |
00016         | GNU General Public License for more details.                                |
00017         |                                                                             |
00018         | You should have received a copy of the GNU General Public License           |
00019         | along with this program; if not, write to the Free Software                 |
00020         | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. |
00021         +-----------------------------------------------------------------------------+
00022 */
00023 
00038 class ilLPStatusFactory
00039 {
00040         function _getClassById($a_obj_id)
00041         {
00042                 include_once 'Services/Tracking/classes/class.ilLPObjSettings.php';
00043                 
00044                 switch(ilLPObjSettings::_lookupMode($a_obj_id))
00045                 {
00046                         case LP_MODE_VISITS:
00047                                 include_once 'Services/Tracking/classes/class.ilLPStatusVisits.php';
00048                                 return 'ilLPStatusVisits';
00049                                 
00050                         case LP_MODE_COLLECTION:
00051                                 include_once 'Services/Tracking/classes/class.ilLPStatusCollection.php';
00052                                 return 'ilLPStatusCollection';
00053 
00054                         case LP_MODE_TLT:
00055                                 include_once 'Services/Tracking/classes/class.ilLPStatusTypicalLearningTime.php';
00056                                 return 'ilLPStatusTypicalLearningTime';
00057 
00058                         case LP_MODE_SCORM:
00059                                 include_once 'Services/Tracking/classes/class.ilLPStatusSCORM.php';
00060                                 return 'ilLPStatusSCORM';
00061 
00062                         case LP_MODE_DEACTIVATED:
00063                                 include_once 'Services/Tracking/classes/class.ilLPStatus.php';
00064                                 return 'ilLPStatus';
00065 
00066                         case LP_MODE_TEST_FINISHED:
00067                                 include_once 'Services/Tracking/classes/class.ilLPStatusTestFinished.php';
00068                                 return 'ilLPStatusTestFinished';
00069 
00070                         case LP_MODE_TEST_PASSED:
00071                                 include_once 'Services/Tracking/classes/class.ilLPStatusTestPassed.php';
00072                                 return 'ilLPStatusTestPassed';
00073 
00074                         case LP_MODE_MANUAL:
00075                                 include_once 'Services/Tracking/classes/class.ilLPStatusManual.php';
00076                                 return 'ilLPStatusManual';
00077 
00078                         case LP_MODE_EXERCISE_RETURNED:
00079                                 include_once 'Services/Tracking/classes/class.ilLPStatusExerciseReturned.php';
00080                                 return 'ilLPStatusExerciseReturned';
00081 
00082                         case LP_MODE_OBJECTIVES:
00083                                 include_once 'Services/Tracking/classes/class.ilLPStatusObjectives.php';
00084                                 return 'ilLPStatusObjectives';
00085 
00086                         default:
00087                                 echo "ilLPStatusFactory: unknown type ".ilLPObjSettings::_lookupMode($a_obj_id);
00088                                 exit;
00089                 }
00090         }
00091 
00092         function _getClassByIdAndType($a_obj_id,$a_type)
00093         {
00094                 // id is ignored in the moment
00095                 switch($a_type)
00096                 {
00097                         case 'event':
00098                                 include_once 'Services/Tracking/classes/class.ilLPStatusEvent.php';
00099                                 return 'ilLPStatusEvent';
00100 
00101                         default:
00102                                 echo "ilLPStatusFactory: unknown type: ".$a_type;
00103                                 exit;
00104                 }
00105         }
00106 
00107         function &_getInstance()
00108         {
00109                 include_once 'Services/Tracking/classes/class.ilLPObjSettings.php';
00110                 
00111                 switch(ilLPObjSettings::_lookupMode($a_obj_id))
00112                 {
00113                         case LP_MODE_VISITS:
00114                                 include_once 'Services/Tracking/classes/class.ilLPStatusVisits.php';
00115                                 return new ilLPStatusVisits($a_obj_id);
00116 
00117                         case LP_MODE_COLLECTION:
00118                                 include_once 'Services/Tracking/classes/class.ilLPStatusCollection.php';
00119                                 return new ilLPStatusCollection($a_obj_id);
00120 
00121                         case LP_MODE_TLT:
00122                                 include_once 'Services/Tracking/classes/class.ilLPStatusTypicalLearningTime.php';
00123 
00124                                 return new ilLPStatusTypicalLearningTime($a_obj_id);
00125 
00126                         case LP_MODE_SCORM:
00127                                 include_once 'Services/Tracking/classes/class.ilLPStatusSCORM.php';
00128                                 
00129                                 return new ilLPStatusSCORM($a_obj_id);
00130 
00131                         case LP_MODE_TEST_FINISHED:
00132                                 include_once 'Services/Tracking/classes/class.ilLPStatusTestFinished.php';
00133                                 
00134                                 return new ilLPStatusTestFinished($a_obj_id);
00135 
00136                         case LP_MODE_TEST_PASSED:
00137                                 include_once 'Services/Tracking/classes/class.ilLPStatusTestPassed.php';
00138                                 
00139                                 return new ilLPStatusTestPassed($a_obj_id);
00140 
00141                         case LP_MODE_MANUAL:
00142                                 include_once 'Services/Tracking/classes/class.ilLPStatusManual.php';
00143                                 
00144                                 return new ilLPStatusManual($a_obj_id);
00145 
00146                         case LP_MODE_EXERCISE_RETURNED:
00147                                 include_once 'Services/Tracking/classes/class.ilLPStatusExerciseReturned.php';
00148 
00149                                 return new ilLPStatusExerciseReturned($a_obj_id);
00150 
00151                         case LP_MODE_OBJECTIVES:
00152                                 include_once 'Services/Tracking/classes/class.ilLPStatusObjectives.php';
00153 
00154                                 return new ilLPStatusObjectives($a_obj_id);
00155 
00156                         default:
00157                                 echo "ilLPStatusFactory: unknown type ".ilLPObjSettings::_lookupMode($a_obj_id);
00158                                 exit;
00159                 }
00160         }
00161 }
00162 ?>

Generated on Fri Dec 13 2013 13:52:12 for ILIAS Release_3_7_x_branch .rev 46817 by  doxygen 1.7.1