1<?php 2/* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */ 3 4include_once "Services/Object/classes/class.ilObjectLP.php"; 5 6/** 7 * Survey to lp connector 8 * 9 * @author Jörg Lützenkirchen <luetzenkirchen@leifos.com> 10 * @version $Id: class.ilLPStatusPlugin.php 43734 2013-07-29 15:27:58Z jluetzen $ 11 * @package ModulesSurvey 12 */ 13class ilSurveyLP extends ilObjectLP 14{ 15 public static function getDefaultModes($a_lp_active) 16 { 17 return array( 18 ilLPObjSettings::LP_MODE_DEACTIVATED, 19 ilLPObjSettings::LP_MODE_SURVEY_FINISHED 20 ); 21 } 22 23 public function getDefaultMode() 24 { 25 return ilLPObjSettings::LP_MODE_DEACTIVATED; // :TODO: 26 } 27 28 public function getValidModes() 29 { 30 return array( 31 ilLPObjSettings::LP_MODE_DEACTIVATED, 32 ilLPObjSettings::LP_MODE_SURVEY_FINISHED 33 ); 34 } 35 36 public function isAnonymized() 37 { 38 include_once './Modules/Survey/classes/class.ilObjSurveyAccess.php'; 39 return (bool) ilObjSurveyAccess::_lookupAnonymize($this->obj_id); 40 } 41 42 protected static function isLPMember(array &$a_res, $a_usr_id, $a_obj_ids) 43 { 44 global $DIC; 45 46 $ilDB = $DIC->database(); 47 48 // if active id 49 $set = $ilDB->query("SELECT ss.obj_fi" . 50 " FROM svy_finished sf" . 51 " JOIN svy_svy ss ON (ss.survey_id = sf.survey_fi)" . 52 " WHERE " . $ilDB->in("ss.obj_fi", $a_obj_ids, "", "integer") . 53 " AND sf.user_fi = " . $ilDB->quote($a_usr_id, "integer")); 54 while ($row = $ilDB->fetchAssoc($set)) { 55 $a_res[$row["obj_fi"]] = true; 56 } 57 58 return true; 59 } 60} 61