+ $prefs = array('addressees' => $this->addressees,
+ 'attachments' => $this->attachments,
+ 'id_prefix' => $this->id_prefix,
+ 'maxchars' => $this->maxchars,
+ 'options' => $this->options);
+ return new NoticeListItem($notice, $this->out, $prefs);
+ }
+
+ static function prefill(array &$notices)
+ {
+ $scoped = Profile::current();
+ $notice_ids = Notice::_idsOf($notices);
+
+ if (Event::handle('StartNoticeListPrefill', array(&$notices, $notice_ids, $scoped))) {
+
+ // Prefill attachments
+ Notice::fillAttachments($notices);
+ // Prefill repeat data
+ Notice::fillRepeats($notices);
+ // Prefill the profiles
+ $profiles = Notice::fillProfiles($notices);
+
+ if ($scoped instanceof Profile) {
+ Notice::pivotGet('repeat_of', $notice_ids, array('profile_id' => $scoped->id));
+ }
+
+ Event::handle('EndNoticeListPrefill', array(&$notices, &$profiles, $notice_ids, $scoped));
+ }