本文整理汇总了PHP中ilMail类的典型用法代码示例。如果您正苦于以下问题:PHP ilMail类的具体用法?PHP ilMail怎么用?PHP ilMail使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ilMail类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: notify
public function notify(ilNotificationObject $notification)
{
// use a specific sender or ANONYMOUS
$sender_id = isset($notification->handlerParams['mail']['sender']) ? $notification->handlerParams['mail']['sender'] : ANONYMOUS_USER_ID;
include_once 'Services/Mail/classes/class.ilMail.php';
$mail = new ilMail($sender_id);
$mail->appendInstallationSignature(true);
$mail->sendMail($notification->user->getLogin(), '', '', $notification->title, $notification->longDescription, false, array('normal'));
//mail($notification->user->getEmail(), $notification->title, $notification->longDescription);
}
示例2: _checkGoto
/**
* check whether goto script will succeed
*/
function _checkGoto($a_target)
{
global $rbacsystem;
require_once 'Services/Mail/classes/class.ilMail.php';
$mail = new ilMail($_SESSION["AccountId"]);
if ($rbacsystem->checkAccess('internal_mail', $mail->getMailObjectReferenceId())) {
return true;
}
return false;
}
示例3: getMails
/**
* Get Mails
*/
function getMails()
{
global $ilUser;
// BEGIN MAILS
$umail = new ilMail($_SESSION["AccountId"]);
$mbox = new ilMailBox($_SESSION["AccountId"]);
$inbox = $mbox->getInboxFolder();
//SHOW MAILS FOR EVERY USER
$this->mails = $umail->getMailsOfFolder($inbox, array('status' => 'unread', 'type' => 'system'));
}
示例4: sendAdvancedNotification
/**
* send an advanced notification to the owner of the test
* @param int $owner_id
* @param string $title
* @param sting $usr_data
* @param array $file_names
*/
public function sendAdvancedNotification($owner_id, $title, $usr_data, $file_names)
{
$this->initLanguage($owner_id);
$this->language->loadLanguageModule('assessment');
$this->initMail();
$this->setSubject(sprintf($this->language->txt('tst_user_finished_test'), $title));
$this->setBody(ilMail::getSalutation($owner_id, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->language->txt('user_has_finished_a_test'));
$this->appendBody("\n\n");
$this->appendBody($this->language->txt('title') . ': ' . $title);
$this->appendBody("\n");
$this->appendBody($this->language->txt('username') . ': ' . $usr_data);
$this->appendBody("\n");
ilDatePresentation::setUseRelativeDates(false);
$this->appendBody($this->language->txt('tst_finished') . ': ' . ilDatePresentation::formatDate(new ilDateTime(time(), IL_CAL_UNIX)));
$this->appendBody("\n\n");
$this->appendBody($this->language->txt('tst_attached_xls_file'));
$this->appendBody("\n\n");
$this->appendBody($this->language->txt('tst_notification_explanation_admin'));
$this->appendBody("\n");
$this->setAttachments($file_names);
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($owner_id), array('system'));
}
示例5: send
/**
* Send notifications
* @return
*/
public function send()
{
global $ilUser;
switch ($this->getType()) {
case self::TYPE_USER_BLOCKED:
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject(sprintf($this->getLanguageText('cont_user_blocked'), $this->getObjectTitle(true)));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('cont_user_blocked2'));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('cont_user_blocked3') . " '" . $this->getLanguageText('objs_qst') . "' > '" . $this->getLanguageText('cont_blocked_users') . "'");
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('obj_lm') . ": " . $this->getObjectTitle(true));
$this->appendBody("\n");
include_once "./Services/User/classes/class.ilUserUtil.php";
$this->appendBody($this->getLanguageText('user') . ": " . ilUserUtil::getNamePresentation($ilUser->getId(), false, false, ""));
$this->appendBody("\n");
include_once "./Modules/TestQuestionPool/classes/class.assQuestion.php";
$this->appendBody($this->getLanguageText('question') . ": " . assQuestion::_getTitle($this->getQuestionId()));
$this->appendBody("\n");
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('cont_lm_mail_permanent_link'));
$this->appendBody("\n");
$this->appendBody($this->createPermanentLink(array(), ""));
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($rcp), array('system'));
}
break;
}
return true;
}
示例6: buildBody
private function buildBody()
{
// Salutation
$this->setBody(ilMail::getSalutation($this->getRecipient(), $this->getLanguage()));
$this->appendBody("\n\n");
// Message (What has happened?)
$this->appendBody($this->getLanguageText('tst_notify_manscoring_done_body_msg_topic'));
$this->appendBody("\n\n");
$info = $this->getAdditionalInformation();
$this->appendBody($this->getLanguageText('obj_tst') . ': ' . $info['test_title']);
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('pass') . ': ' . $info['test_pass']);
$this->appendBody("\n\n");
foreach ($info['questions_gui_list'] as $questionId => $questionGui) {
$points = $info['questions_scoring_data'][$questionId]['points'];
$feedback = $info['questions_scoring_data'][$questionId]['feedback'];
$feedback = $this->convertFeedbackForMail($feedback);
$this->appendBody($this->getLanguageText('tst_question') . ': ' . $questionGui->object->getTitle());
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('tst_reached_points') . ': ' . $points);
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('set_manual_feedback') . ":\n" . $feedback);
$this->appendBody("\n\n");
}
// Task (What do I have to do?
/* NOTHING TODO FOR PARTICIPANT */
// Explanation (Why do I receive the following message?)
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('tst_notify_manscoring_done_body_msg_reason'));
// Signature
$this->getMail()->appendInstallationSignature(true);
}
开发者ID:khanhnnvn,项目名称:ilias_E-learning,代码行数:32,代码来源:class.ilTestManScoringParticipantNotification.php
示例7: send
public function send()
{
switch ($this->getType()) {
case self::TYPE_NOTIFICATION_ACTIVATION:
$additional_information = $this->getAdditionalInformation();
/**
* @var $user ilObjUser
*/
$user = $additional_information['usr'];
foreach ($this->getRecipients() as $rcp) {
try {
$this->handleCurrentRecipient($rcp);
} catch (ilMailException $e) {
continue;
}
$this->initMimeMail();
$this->setSubject($this->getLanguage()->txt('reg_mail_subject_confirmation'));
$this->setBody($this->getLanguage()->txt('reg_mail_body_salutation') . ' ' . $user->getFullname() . ',');
$this->appendBody("\n\n");
$this->appendBody($this->getLanguage()->txt('reg_mail_body_confirmation'));
$this->appendBody("\n");
$this->appendBody(ILIAS_HTTP_PATH . '/confirmReg.php?client_id=' . CLIENT_ID . '&rh=' . ilObjUser::_generateRegistrationHash($user->getId()));
$this->appendBody("\n\n");
$this->appendBody(sprintf($this->getLanguage()->txt('reg_mail_body_2_confirmation'), ilFormat::_secondsToString($additional_information['hash_lifetime'])));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguage()->txt('reg_mail_body_3_confirmation'));
$this->appendBody(ilMail::_getInstallationSignature());
$this->sendMimeMail($this->getCurrentRecipient());
}
break;
}
}
示例8: send
public function send()
{
global $lng;
$additional_information = $this->getAdditionalInformation();
$old_val = ilDatePresentation::useRelativeDates();
ilDatePresentation::setUseRelativeDates(false);
foreach ($this->getRecipients() as $rcp) {
try {
$this->handleCurrentRecipient($rcp);
} catch (ilMailException $e) {
continue;
}
$this->initMimeMail();
$this->initLanguageByIso2Code();
ilDatePresentation::setLanguage($this->getLanguage());
$date_for_deletion = ilDatePresentation::formatDate(new ilDate($additional_information["date"], IL_CAL_UNIX));
$this->setSubject($this->getLanguage()->txt('del_mail_subject'));
$body = sprintf($this->getLanguage()->txt("del_mail_body"), $rcp->fullname, "\n\n", $additional_information["www"], $date_for_deletion);
$this->appendBody($body);
$this->appendBody(ilMail::_getInstallationSignature());
$this->sendMimeMail($this->getCurrentRecipient());
}
ilDatePresentation::setUseRelativeDates($old_val);
ilDatePresentation::setLanguage($lng);
}
示例9: _sendNotificationToVATAdministration
/**
* Sends a notification message to all users responsible for vat assignment.
*
* @access public
* @static
* @param ilPaymentObject $oPaymentObject
*/
public static function _sendNotificationToVATAdministration($oPaymentObject)
{
global $ilSetting, $lng, $ilClientIniFile;
$payment_vat_admins = $ilSetting->get('payment_vat_admins');
$users = explode(',', $payment_vat_admins);
$subject = $lng->txt('payment_vat_assignment_notification_subject');
$tmp_obj = ilObjectFactory::getInstanceByRefId($oPaymentObject->getRefId());
$message = sprintf($lng->txt('payment_vat_assignment_notification_body'), $tmp_obj->getTitle()) . "\n\n";
$message .= "------------------------------------------------------------\n";
$message .= sprintf($lng->txt('payment_vat_assignment_notification_intro'), $ilClientIniFile->readVariable('client', 'name'), ILIAS_HTTP_PATH . '/?client_id=' . CLIENT_ID);
include_once 'Services/Mail/classes/class.ilMail.php';
$mail_obj = new ilMail(ANONYMOUS_USER_ID);
foreach ((array) $users as $login) {
if (strlen(trim($login)) && (int) ilObjUser::_lookupId(trim($login))) {
$success = $mail_obj->sendMail(trim($login), '', '', $subject, $message, array(), array("system"));
}
}
}
示例10: __construct
public function __construct($wsp_access_handler = null, $wsp_node_id = null)
{
global $tpl, $ilCtrl, $lng, $ilUser, $rbacsystem;
$this->tpl = $tpl;
$this->ctrl = $ilCtrl;
$this->lng = $lng;
// personal workspace
$this->wsp_access_handler = $wsp_access_handler;
$this->wsp_node_id = $wsp_node_id;
$this->ctrl->saveParameter($this, "mobj_id");
$this->ctrl->saveParameter($this, "ref");
// check if current user may send mails
include_once "Services/Mail/classes/class.ilMail.php";
$mail = new ilMail($_SESSION["AccountId"]);
$this->mailing_allowed = $rbacsystem->checkAccess('internal_mail', $mail->getMailObjectReferenceId());
$this->umail = new ilFormatMail($ilUser->getId());
$this->abook = new ilAddressbook($ilUser->getId());
}
示例11: send
/**
*
* Send notifications
*
* @access public
*
*/
public function send()
{
global $ilDB;
// parent::send();
if (count($this->getRecipients())) {
$res = $ilDB->queryf("SELECT u.usr_id,u.gender,u.firstname,u.lastname,u.login,u.email,u.last_login,u.active," . "u.time_limit_unlimited, " . $ilDB->fromUnixtime("u.time_limit_from") . ", " . $ilDB->fromUnixtime("u.time_limit_until") . "," . "CASE WHEN u.active = 0 THEN '0001-01-01' ELSE CASE WHEN u.time_limit_unlimited=1 THEN '9999-12-31' ELSE " . $ilDB->fromUnixtime("u.time_limit_until") . " END END access_until," . " CASE WHEN " . $ilDB->unixTimestamp() . " BETWEEN u.time_limit_from AND u.time_limit_until THEN 0 ELSE 1 END expired," . "rq.role_disk_quota, system_role.rol_id role_id, " . "p1.value+0 user_disk_quota," . "p2.value+0 disk_usage, " . "p3.value last_update, " . "p5.value language, " . "CASE WHEN rq.role_disk_quota>p1.value+0 OR p1.value IS NULL THEN rq.role_disk_quota ELSE p1.value+0 END disk_quota\t" . "FROM usr_data u " . "JOIN (SELECT u.usr_id usr_id,MAX(rd.disk_quota) role_disk_quota " . "FROM usr_data u " . "JOIN rbac_ua ua ON ua.usr_id=u.usr_id " . "JOIN rbac_fa fa ON fa.rol_id=ua.rol_id AND fa.parent=%s " . "JOIN role_data rd ON rd.role_id=ua.rol_id WHERE u.usr_id=ua.usr_id GROUP BY u.usr_id) rq ON rq.usr_id=u.usr_id " . "LEFT JOIN rbac_ua system_role ON system_role.usr_id=u.usr_id AND system_role.rol_id = %s " . "LEFT JOIN usr_pref p1 ON p1.usr_id=u.usr_id AND p1.keyword = 'disk_quota' " . "LEFT JOIN usr_pref p2 ON p2.usr_id=u.usr_id AND p2.keyword = 'disk_usage' " . "LEFT JOIN usr_pref p3 ON p3.usr_id=u.usr_id AND p3.keyword = 'disk_usage.last_update' " . "LEFT JOIN usr_pref p5 ON p5.usr_id=u.usr_id AND p5.keyword = 'language' " . 'WHERE (((p1.value+0 > rq.role_disk_quota OR rq.role_disk_quota IS NULL) AND p2.value+0 > p1.value+0) OR
((rq.role_disk_quota > p1.value+0 OR p1.value IS NULL) AND p2.value+0 > rq.role_disk_quota)) ' . 'AND (u.active=1 AND (u.time_limit_unlimited = 1 OR ' . $ilDB->unixTimestamp() . ' BETWEEN u.time_limit_from AND u.time_limit_until)) ', array('integer', 'integer'), array(ROLE_FOLDER_ID, SYSTEM_ROLE_ID));
$users = array();
$counter = 0;
while ($row = $ilDB->fetchAssoc($res)) {
$details = ilDiskQuotaChecker::_lookupDiskUsage($row['usr_id']);
$users[$counter]['disk_quota'] = $row['disk_quota'];
$users[$counter]['disk_usage'] = $details['disk_usage'];
$users[$counter]['email'] = $row['email'];
$users[$counter]['firstname'] = $row['firstname'];
$users[$counter]['lastname'] = $row['lastname'];
++$counter;
}
if (count($users)) {
foreach ($this->getRecipients() as $rcp) {
$usrId = ilObjUser::_lookupId($rcp);
$this->initLanguage($usrId);
$this->initMail();
$this->setSubject($this->getLanguage()->txt('disk_quota_summary_subject'));
$this->setBody(ilMail::getSalutation($usrId, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguage()->txt('disk_quota_exceeded_headline'));
$this->appendBody("\n\n");
$first = true;
$counter = 0;
$numUsers = count($users);
foreach ($users as $user) {
if (!$first) {
$this->appendBody("\n---------------------------------------------------\n\n");
}
$this->appendBody($this->getLanguage()->txt('fullname') . ': ' . $user['lastname'] . ', ' . $user['firstname'] . "\n");
$this->appendBody($this->getLanguage()->txt('email') . ': ' . $user['email'] . "\n");
$this->appendBody($this->getLanguage()->txt('disk_quota') . ': ' . ilFormat::formatSize($user['disk_quota'], 'short', $this->getLanguage()) . "\n");
$this->appendBody($this->getLanguage()->txt('currently_used_disk_space') . ': ' . ilFormat::formatSize($user['disk_usage'], 'short', $this->getLanguage()) . "\n");
$this->appendBody($this->getLanguage()->txt('usrf_profile_link') . ': ' . ilUtil::_getHttpPath() . '/goto.php?target=usrf&client_id=' . CLIENT_ID);
if ($counter < $numUsers - 1) {
$this->appendBody("\n");
}
++$counter;
$first = false;
}
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($rcp), array('system'), false);
}
}
}
}
示例12: send
/**
* Parse and send mail
* @return
*/
public function send()
{
switch ($this->getType()) {
case self::TYPE_NOTIFICATION_APPROVERS:
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject($this->getLanguageText('reg_mail_new_user'));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_new_user_body'));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_body_profile'));
$info = $this->getAdditionalInformation();
$this->appendBody("\n\n");
$this->appendBody($info['usr']->getProfileAsString($this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_body_reason'));
$this->getMail()->appendInstallationSignature(true);
$this->getMail()->enableSoap(false);
$this->sendMail(array($rcp), array('system'));
}
break;
case self::TYPE_NOTIFICATION_CONFIRMATION:
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject($this->getLanguageText('reg_mail_new_user_confirmation'));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_new_user_body'));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_body_profile'));
$info = $this->getAdditionalInformation();
$this->appendBody("\n\n");
$this->appendBody($info['usr']->getProfileAsString($this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_body_confirmation'));
$this->appendBody("\n");
// #4527
include_once "Services/Link/classes/class.ilLink.php";
$this->appendBody(ilLink::_getStaticLink($info['usr']->getId(), "usrf"));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('reg_mail_body_reason'));
$this->getMail()->appendInstallationSignature(true);
$this->getMail()->enableSoap(false);
$this->sendMail(array($rcp), array('system'));
}
break;
}
}
示例13: send
/**
* Send notifications
* @return
*/
public function send()
{
global $ilUser;
// parent::send();
include_once "./Modules/Exercise/classes/class.ilExAssignment.php";
switch ($this->getType()) {
case self::TYPE_FEEDBACK_FILE_ADDED:
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject(sprintf($this->getLanguageText('exc_msg_new_feedback_file_uploaded'), $this->getObjectTitle(true)));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('exc_msg_new_feedback_file_uploaded2'));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('obj_exc') . ": " . $this->getObjectTitle(true));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('exc_assignment') . ": " . ilExAssignment::lookupTitle($this->getAssignmentId()));
$this->appendBody("\n\n");
$this->appendBody($this->getLanguageText('exc_mail_permanent_link'));
$this->appendBody("\n");
$this->appendBody($this->createPermanentLink(array(), '_' . $this->getAssignmentId()) . '#fb' . $this->getAssignmentId());
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($rcp), array('system'));
}
break;
case self::TYPE_SUBMISSION_UPLOAD:
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject(sprintf($this->getLanguageText('exc_submission_notification_subject'), $this->getObjectTitle(true)));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody(sprintf($this->getLanguageText('exc_submission_notification_body'), $this->getObjectTitle(true)));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('exc_assignment') . ": " . ilExAssignment::lookupTitle($this->getAssignmentId()));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('user') . ": " . $ilUser->getFullName());
$this->appendBody("\n\n");
$this->appendBody(sprintf($this->getLanguageText('exc_submission_notification_link'), $this->createPermanentLink()));
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($rcp), array('system'));
}
break;
}
return true;
}
示例14: send
public function send()
{
$additional_information = $this->getAdditionalInformation();
foreach ($this->getRecipients() as $rcp) {
try {
$this->handleCurrentRecipient($rcp);
} catch (ilMailException $e) {
continue;
}
$this->initMimeMail();
$this->initLanguageByIso2Code();
$this->setSubject($this->getLanguage()->txt('del_mail_subject'));
$body = sprintf($this->getLanguage()->txt("del_mail_body"), $rcp->fullname, "\n\n", $additional_information["www"], $additional_information["days"]);
$this->appendBody($body);
$this->appendBody(ilMail::_getInstallationSignature());
$this->sendMimeMail($this->getCurrentRecipient());
}
}
示例15: send
public function send()
{
include_once './Services/Link/classes/class.ilLink.php';
$obj = new ilObjectFactory();
$instance = $obj->getInstanceByRefId($_GET['ref_id']);
$link = ilLink::_getLink($_GET['ref_id'], $instance->getType(), array(), '');
global $lng;
foreach ($this->getRecipients() as $rcp) {
$this->initLanguage($rcp);
$this->initMail();
$this->setSubject(sprintf($lng->txt('rubric_exercise_graded') . ' ' . ilObject::_lookupTitle($this->getObjId()) . ' ' . $lng->txt('rubric_is_now_available'), $this->getObjectTitle(true)));
$this->setBody(ilMail::getSalutation($rcp, $this->getLanguage()));
$this->appendBody("\n\n");
$this->appendBody($lng->txt('rubric_exercise_graded') . ' ' . ilObject::_lookupTitle($this->getObjId()) . ' ' . $lng->txt('rubric_is_now_available'));
$this->appendBody("\n");
$this->appendBody($this->getLanguageText('obj_exc') . ": " . $this->getObjectTitle(true));
$this->appendBody("\n");
$this->appendBody("\n\n");
$this->appendBody($link);
$this->getMail()->appendInstallationSignature(true);
$this->sendMail(array($rcp), array('system'));
}
}