public function showAttachments()
 {
     /**
      * @var $ilToolbar ilToolbarGUI
      */
     global $ilToolbar;
     $this->tpl->setTitle($this->lng->txt('mail'));
     require_once 'Services/Form/classes/class.ilFileInputGUI.php';
     $attachment = new ilFileInputGUI($this->lng->txt('upload'), 'userfile');
     $attachment->setRequired(true);
     $attachment->setSize(20);
     $ilToolbar->setFormAction($this->ctrl->getFormAction($this, 'uploadFile'), true);
     $ilToolbar->addInputItem($attachment);
     $ilToolbar->addFormButton($this->lng->txt('upload'), 'uploadFile');
     require_once 'Services/Mail/classes/class.ilMailAttachmentTableGUI.php';
     $table = new ilMailAttachmentTableGUI($this, 'showAttachments');
     $mailData = $this->umail->getSavedData();
     $files = $this->mfile->getUserFilesData();
     $data = array();
     $counter = 0;
     foreach ($files as $file) {
         $checked = false;
         if (is_array($mailData['attachments']) && in_array($file['name'], $mailData['attachments'])) {
             $checked = true;
         }
         $data[$counter] = array('checked' => $checked, 'filename' => $file['name'], 'filesize' => (int) $file['size'], 'filecreatedate' => (int) $file['ctime']);
         ++$counter;
     }
     $table->setData($data);
     $this->tpl->setContent($table->getHtml());
     $this->tpl->show();
 }
 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");
 }
 function __sendMail()
 {
     global $ilUser;
     if (!count($notify = $this->__getNotifyLinks())) {
         // Nothing to do
         return true;
     }
     if (!$this->getMailStatus()) {
         return true;
     }
     include_once './Services/LinkChecker/classes/class.ilLinkCheckNotify.php';
     foreach (ilLinkCheckNotify::_getAllNotifiers($this->db) as $usr_id => $obj_ids) {
         if (!is_object($tmp_user =& ilObjectFactory::getInstanceByObjId($usr_id, false))) {
             $this->__appendLogMessage('LinkChecker: Cannot find user with id: ' . $usr_id);
             continue;
         }
         $counter = 0;
         foreach ($obj_ids as $obj_id) {
             if (!isset($notify[$obj_id])) {
                 continue;
             }
             ++$counter;
             switch ($this->__getType()) {
                 case 'webr':
                     $body .= $this->__txt($tmp_user->getLanguage(), 'obj_webr');
                     break;
                 case 'lm':
                 default:
                     $body .= $this->__txt($tmp_user->getLanguage(), 'lo');
                     break;
             }
             $body .= ': ';
             $body .= $this->__getTitle($obj_id) . "\r\n";
             // Print all invalid
             foreach ($notify[$obj_id] as $data) {
                 $body .= $data['url'] . "\r\n";
             }
             $body .= "\r\n";
         }
         if ($counter) {
             include_once "Services/Mail/classes/class.ilFormatMail.php";
             $umail = new ilFormatMail($tmp_user->getId());
             $subject = $this->__txt($tmp_user->getLanguage(), 'link_check_subject');
             $umail->sendMail($tmp_user->getLogin(), "", "", $subject, $body, array(), array("normal"));
             $this->__appendLogMessage('LinkChecker: Sent mail to ' . $tmp_user->getEmail());
         }
     }
 }
 /**
  * send  bookmarks as attachment
  */
 function sendmail()
 {
     global $ilUser;
     include_once './Services/Mail/classes/class.ilFileDataMail.php';
     require_once "Services/Mail/classes/class.ilFormatMail.php";
     $mfile = new ilFileDataMail($ilUser->getId());
     $umail = new ilFormatMail($ilUser->getId());
     $html_content = $this->export(false);
     $tempfile = ilUtil::ilTempnam();
     $fp = fopen($tempfile, 'w');
     fwrite($fp, $html_content);
     fclose($fp);
     $filename = 'bookmarks.html';
     $mfile->copyAttachmentFile($tempfile, $filename);
     $umail->savePostData($ilUser->getId(), array($filename), '', '', '', '', '', '', '', 0);
     require_once 'Services/Mail/classes/class.ilMailFormCall.php';
     ilUtil::redirect(ilMailFormCall::getRedirectTarget($this, '', array(), array('type' => 'attach')));
 }