public function getAll() { $res = $this->db->queryf(' SELECT * FROM addressbook_mlist WHERE user_id = %s', array('integer'), array($this->user->getId())); $entries = array(); $counter = 0; while ($row = $res->fetchRow(DB_FETCHMODE_OBJECT)) { $tmpObj = new ilMailingList($this->user, 0); $tmpObj->setId($row->ml_id); $tmpObj->setUserId($row->user_id); $tmpObj->setTitle($row->title); $tmpObj->setDescription($row->description); $tmpObj->setCreatedate($row->createdate); $tmpObj->setChangedate($row->changedae); $entries[$counter] = $tmpObj; unset($tmpObj); ++$counter; } return $entries; }
function mailObject() { global $ilUser; $user_ids = $this->getActionUserIds(); if (!$user_ids) { ilUtil::sendFailure($this->lng->txt('select_one')); return $this->viewObject(); } // remove existing (temporary) lists include_once "Services/Contact/classes/class.ilMailingLists.php"; $list = new ilMailingLists($ilUser); $list->deleteTemporaryLists(); // create (temporary) mailing list include_once "Services/Contact/classes/class.ilMailingList.php"; $list = new ilMailingList($ilUser); $list->setMode(ilMailingList::MODE_TEMPORARY); $list->setTitle("-TEMPORARY SYSTEM LIST-"); $list->setDescription("-USER ACCOUNTS MAIL-"); $list->setCreateDate(date("Y-m-d H:i:s")); $list->insert(); $list_id = $list->getId(); // after list has been saved... foreach ($user_ids as $user_id) { $list->assignAddressbookEntry($user_id); } include_once "Services/Mail/classes/class.ilFormatMail.php"; $umail = new ilFormatMail($ilUser->getId()); $mail_data = $umail->getSavedData(); if (!is_array($mail_data)) { $mail_data = array("user_id" => $ilUser->getId()); } // ??? // $mail_data = $umail->appendSearchResult(array('#il_ml_'.$list_id), 'to'); $umail->savePostData($mail_data['user_id'], $mail_data['attachments'], '#il_ml_' . $list_id, $mail_data['rcp_cc'], $mail_data['rcp_bcc'], $mail_data['m_type'], $mail_data['m_email'], $mail_data['m_subject'], $mail_data['m_message'], $mail_data['use_placeholders']); ilUtil::redirect("ilias.php?baseClass=ilMailGUI&type=search_res"); }