ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilExAssTypeWikiTeam Class Reference

Team wiki type. More...

+ Inheritance diagram for ilExAssTypeWikiTeam:
+ Collaboration diagram for ilExAssTypeWikiTeam:

Public Member Functions

 __construct (ilLanguage $a_lng=null)
 Constructor. More...
 
 isActive ()
 Is assignment type active?
Returns
bool
More...
 
 usesTeams ()
 Uses teams.
Returns
bool
More...
 
 usesFileUpload ()
 Uses file upload.
Returns
bool
More...
 
 getTitle ()
 Get title of type.
Returns
string
More...
 
 getSubmissionType ()
 Get submission type.
Returns
string
More...
 
 isSubmissionAssignedToTeam ()
 Get submission type.
Returns
string
More...
 
 submitWiki ($a_ass_id, $a_user_id, $a_wiki_ref_id)
 Submit wiki. More...
 
 cloneSpecificProperties (ilExAssignment $source, ilExAssignment $target)
 Clone type specific properties of an assignment.
Parameters
ilExAssignment$source
ilExAssignment$target
More...
 
 isActive ()
 Is assignment type active? More...
 
 usesTeams ()
 Uses teams. More...
 
 usesFileUpload ()
 Uses file upload. More...
 
 getTitle ()
 Get title of type. More...
 
 getSubmissionType ()
 Get submission type. More...
 
 isSubmissionAssignedToTeam ()
 Get submission type. More...
 
 cloneSpecificProperties (ilExAssignment $source, ilExAssignment $target)
 Clone type specific properties of an assignment. More...
 

Protected Member Functions

 handleNewUpload (ilExAssignment $ass, ilExSubmission $submission, $a_no_notifications=false)
 

Protected Attributes

 $lng
 

Detailed Description

Team wiki type.

Author
Alex Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 12 of file class.ilExAssTypeWikiTeam.php.

Constructor & Destructor Documentation

◆ __construct()

ilExAssTypeWikiTeam::__construct ( ilLanguage  $a_lng = null)

Constructor.

Parameters
ilLanguage | null$a_lng

Definition at line 24 of file class.ilExAssTypeWikiTeam.php.

25 {
26 global $DIC;
27
28 $this->lng = ($a_lng)
29 ? $a_lng
30 : $DIC->language();
31 }
global $DIC
Definition: saml.php:7

References $DIC.

Member Function Documentation

◆ cloneSpecificProperties()

ilExAssTypeWikiTeam::cloneSpecificProperties ( ilExAssignment  $source,
ilExAssignment  $target 
)

Clone type specific properties of an assignment.

Parameters
ilExAssignment$source
ilExAssignment$target

Implements ilExAssignmentTypeInterface.

Definition at line 169 of file class.ilExAssTypeWikiTeam.php.

170 {
171 include_once("./Modules/Exercise/AssignmentTypes/classes/class.ilExAssWikiTeamAR.php");
172 $source_ar = new ilExAssWikiTeamAR($source->getId());
173 $target_ar = new ilExAssWikiTeamAR();
174 $target_ar->setId($target->getId());
175 $target_ar->setTemplateRefId($source_ar->getTemplateRefId());
176 $target_ar->setContainerRefId($source_ar->getContainerRefId());
177 $target_ar->save();
178 }
$source
Definition: linkback.php:22
Item group active record class.
$target
Definition: test.php:19

References $source, and $target.

◆ getSubmissionType()

ilExAssTypeWikiTeam::getSubmissionType ( )

Get submission type.

Returns
string

Implements ilExAssignmentTypeInterface.

Definition at line 70 of file class.ilExAssTypeWikiTeam.php.

References ilExSubmission\TYPE_REPO_OBJECT.

◆ getTitle()

ilExAssTypeWikiTeam::getTitle ( )

Get title of type.

Returns
string

Implements ilExAssignmentTypeInterface.

Definition at line 60 of file class.ilExAssTypeWikiTeam.php.

61 {
63 $lng->loadLanguageModule("wiki");
64 return $lng->txt("wiki_type_wiki_team");
65 }

References $lng.

◆ handleNewUpload()

ilExAssTypeWikiTeam::handleNewUpload ( ilExAssignment  $ass,
ilExSubmission  $submission,
  $a_no_notifications = false 
)
protected

Definition at line 128 of file class.ilExAssTypeWikiTeam.php.

132 {
133 $has_submitted = $submission->hasSubmitted();
134
135 // we need one ref id here
136 $exc_ref_ids = ilObject::_getAllReferences($ass->getExerciseId());
137 $exc_ref_id = current($exc_ref_ids);
138
139 $exc = new ilObjExercise($ass->getExerciseId(), false);
140
141 $exc->processExerciseStatus(
142 $ass,
143 $submission->getUserIds(),
144 $has_submitted,
145 $submission->validatePeerReviews()
146 );
147
148 if ($has_submitted &&
149 !$a_no_notifications) {
150 include_once "./Services/Notification/classes/class.ilNotification.php";
153 $exc->getId()
154 );
155
156 include_once "./Modules/Exercise/classes/class.ilExerciseMailNotification.php";
157 $not = new ilExerciseMailNotification();
159 $not->setAssignmentId($ass->getId());
160 $not->setRefId($exc_ref_id);
161 $not->setRecipients($users);
162 $not->send();
163 }
164 }
$users
Definition: authpage.php:44
getExerciseId()
Get exercise id.
getId()
Get assignment id.
static getNotificationsForObject($type, $id, $page_id=null, $ignore_threshold=false)
Get all users for given object.
Class ilObjExercise.
static _getAllReferences($a_id)
get all reference ids of object

References $users, ilObject\_getAllReferences(), ilExAssignment\getExerciseId(), ilExAssignment\getId(), ilNotification\getNotificationsForObject(), ilExSubmission\getUserIds(), ilExSubmission\hasSubmitted(), ilNotification\TYPE_EXERCISE_SUBMISSION, ilExerciseMailNotification\TYPE_SUBMISSION_UPLOAD, and ilExSubmission\validatePeerReviews().

Referenced by submitWiki().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isActive()

ilExAssTypeWikiTeam::isActive ( )

Is assignment type active?

Returns
bool

Implements ilExAssignmentTypeInterface.

Definition at line 36 of file class.ilExAssTypeWikiTeam.php.

37 {
38 return true;
39 }

◆ isSubmissionAssignedToTeam()

ilExAssTypeWikiTeam::isSubmissionAssignedToTeam ( )

Get submission type.

Returns
string

Implements ilExAssignmentTypeInterface.

Definition at line 78 of file class.ilExAssTypeWikiTeam.php.

79 {
80 return true;
81 }

◆ submitWiki()

ilExAssTypeWikiTeam::submitWiki (   $a_ass_id,
  $a_user_id,
  $a_wiki_ref_id 
)

Submit wiki.

Parameters
int$a_ass_id
int$a_user_id
int$a_wiki_ref_id

Definition at line 90 of file class.ilExAssTypeWikiTeam.php.

91 {
92 include_once "Modules/Exercise/classes/class.ilObjExercise.php";
93 include_once "Modules/Exercise/classes/class.ilExAssignment.php";
94 include_once "Modules/Exercise/classes/class.ilExSubmission.php";
95
96 $ass = new ilExAssignment($a_ass_id);
97 $submission = new ilExSubmission($ass, $a_user_id);
98
99 if (!$submission->canSubmit()) {
100 return;
101 }
102
103 include_once "Modules/Wiki/classes/class.ilObjWiki.php";
104 $wiki = new ilObjWiki((int) $a_wiki_ref_id);
105 include_once("./Modules/Wiki/classes/class.ilWikiHTMLExport.php");
106 $exp = new ilWikiHTMLExport($wiki);
107 //$exp->setMode(ilWikiHTMLExport::MODE_USER);
108 $file = $exp->buildExportFile();
109
110 $size = filesize($file);
111 if ($size) {
112 $submission->deleteAllFiles();
113
114 $meta = array(
115 "name" => $a_wiki_ref_id,
116 "tmp_name" => $file,
117 "size" => $size
118 );
119 $submission->uploadFile($meta, true);
120
121 $this->handleNewUpload($ass, $submission);
122 return true;
123 }
124 return false;
125 }
$size
Definition: RandomTest.php:84
handleNewUpload(ilExAssignment $ass, ilExSubmission $submission, $a_no_notifications=false)
Exercise assignment.
Exercise submission //TODO: This class has to much static methods related to delivered "files".
Class ilObjWiki.
Wiki HTML exporter class.

References $size, and handleNewUpload().

+ Here is the call graph for this function:

◆ usesFileUpload()

ilExAssTypeWikiTeam::usesFileUpload ( )

Uses file upload.

Returns
bool

Implements ilExAssignmentTypeInterface.

Definition at line 52 of file class.ilExAssTypeWikiTeam.php.

53 {
54 return false;
55 }

◆ usesTeams()

ilExAssTypeWikiTeam::usesTeams ( )

Uses teams.

Returns
bool

Implements ilExAssignmentTypeInterface.

Definition at line 44 of file class.ilExAssTypeWikiTeam.php.

45 {
46 return true;
47 }

Field Documentation

◆ $lng

ilExAssTypeWikiTeam::$lng
protected

Definition at line 17 of file class.ilExAssTypeWikiTeam.php.

Referenced by getTitle().


The documentation for this class was generated from the following file: