private function processSingleAssignment($row) { $assignment = Assignment::firstOrNew(array('assignment_id' => $row->id)); $assignment->assignment_id = $row->id; $assignment->assignment_group_id = $row->assignment_group_id; $assignment->name = $row->name; if ($assignment->description) { $assignment->description = $row->description; } if (isset($row->due_at)) { $due_at = DateTime::createFromFormat(DateTime::ISO8601, $row->due_at); $assignment->due_at = $due_at->format('c'); } if (isset($row->lock_at)) { $lock_at = DateTime::createFromFormat(DateTime::ISO8601, $row->lock_at); $assignment->lock_at = $lock_at->format('c'); } if (isset($row->unlock_at)) { $unlock_at = DateTime::createFromFormat(DateTime::ISO8601, $row->unlock_at); $assignment->unlock_at = $unlock_at->format('c'); } if (isset($row->all_dates)) { $assignment->all_dates = $row->all_dates; } if (isset($row->course_id)) { $assignment->course_id = $row->course_id; } if (isset($row->html_url)) { $assignment->html_url = $row->html_url; } if (isset($row->points_possible)) { $assignment->points_possible = $row->points_possible; } if (isset($row->locked_for_user)) { $assignment->locked_for_user = $row->locked_for_user; } if (isset($row->quiz_id)) { $assignment->quiz_id = $row->quiz_id; } if (isset($row->additional_info)) { $assignment->additional_info = $row->additional_info; } if (isset($row->position)) { $assignment->position = $row->position; } $assignment->save(); return $assignment; }
public function addTagsToAssignment($assignment, $newTagsStr, $courseId) { if (!is_null($assignment->assignment_id)) { $assignment = Assignment::firstOrNew(array('assignment_id' => $assignment->assignment_id, 'course_id' => $courseId)); $assignment->assignment_id = $assignment->assignment_id; } else { if (!is_null($assignment->quiz_id)) { $assignment = Assignment::firstOrNew(array('quiz_id' => $assignment->{$assignment}->quiz_id, 'course_id' => $courseId)); $assignment->quiz_id = $assignment->quiz_id; } } $assignment->course_id = $courseId; if (!is_null($assignment)) { $newTags = explode(', ', $newTagsStr); $tagString = $this->mergeTagsUnique($newTagsStr, $assignment->tags); $assignment->tags = $tagString; $assignment->save(); $this->updateAvailableTags($courseId, $newTags); return $assignment->tags; } else { return null; } }