ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilFormatMail Class Reference

Class UserMail this class handles user mails. More...

+ Inheritance diagram for ilFormatMail:
+ Collaboration diagram for ilFormatMail:

Public Member Functions

 __construct ($a_user_id)
 Constructor setup an mail object. More...
 
 formatReplyMessage ()
 format a reply message public More...
 
 formatReplySubject ()
 format a reply subject public More...
 
 formatReplyRecipientsForCC ()
 get reply recipients for cc public More...
 
 formatReplyRecipient ()
 get reply recipient public More...
 
 formatForwardSubject ()
 format a forward subject public More...
 
 appendSearchResult ($a_names, $a_type)
 append search result to recipient public More...
 
 formatLinebreakMessage ($a_message)
 format message according to linebreak option More...
 
 appendSignature ()
 append signature to mail body public More...
 
 prependSignature ()
 
- Public Member Functions inherited from ilMail
 existsRecipient ($a_recipient, $a_existing_recipients)
 
 enableSOAP ($a_status)
 Define if external mails should be sent using SOAP client or not. More...
 
 setSaveInSentbox ($a_save_in_sentbox)
 
 getSaveInSentbox ()
 
 getMailObjectReferenceId ()
 
 getPreviousMail ($a_mail_id)
 
 getNextMail ($a_mail_id)
 
 getMailsOfFolder ($a_folder_id, $filter=array())
 
 countMailsOfFolder ($a_folder_id)
 
 deleteMailsOfFolder ($a_folder_id)
 
 getMail ($a_mail_id)
 
 markRead (array $a_mail_ids)
 
 markUnread (array $a_mail_ids)
 
 moveMailsToFolder (array $a_mail_ids, $a_folder_id)
 
 deleteMails (array $a_mail_ids)
 
 getNewDraftId ($usrId, $folderId)
 
 updateDraft ( $a_folder_id, $a_attachments, $a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_m_type, $a_m_email, $a_m_subject, $a_m_message, $a_draft_id=0, $a_use_placeholders=0, $a_tpl_context_id=null, $a_tpl_context_params=array())
 
 sendInternalMail ( $a_folder_id, $a_sender_id, $a_attachments, $a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_status, $a_m_type, $a_m_email, $a_m_subject, $a_m_message, $a_user_id=0, $a_use_placeholders=0, $a_tpl_context_id=null, $a_tpl_context_params=array())
 save mail in folder private More...
 
 savePostData ( $a_user_id, $a_attachments, $a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_m_type, $a_m_email, $a_m_subject, $a_m_message, $a_use_placeholders, $a_tpl_context_id=null, $a_tpl_ctx_params=array())
 save post data in table public More...
 
 getSavedData ()
 
 validateRecipients ($a_rcp_to, $a_rcp_cc, $a_rcp_bc)
 
 sendMimeMail ($a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_m_subject, $a_m_message, $a_attachments, $a_no_soap=false)
 Send mime mail using class.ilMimeMail.php. More...
 
 saveAttachments ($a_attachments)
 
 appendInstallationSignature ($a_flag=null)
 Setter/Getter for appending the installation signarue. More...
 

Additional Inherited Members

- Data Fields inherited from ilMail
const ILIAS_HOST = 'ilias'
 
 $user_id
 
- Protected Member Functions inherited from ilMail
 readMailObjectReferenceId ()
 Read and set the mail object ref id (administration node) More...
 
 fetchMailData ($a_row)
 
 replacePlaceholders ($a_message, $a_user_id=0, $replace_empty=true)
 
 distributeMail ($a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_subject, $a_message, $a_attachments, $sent_mail_id, $a_type, $a_action, $a_use_placeholders=0)
 
 getUserIds ($a_recipients)
 
 checkMail ($a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_m_subject, $a_m_message, $a_type)
 
 checkRecipients ($a_recipients)
 Check if recipients are valid. More...
 
 saveInSentbox ($a_attachment, $a_rcp_to, $a_rcp_cc, $a_rcp_bcc, $a_type, $a_m_subject, $a_m_message)
 Stores a message in the sent bod of the current user. More...
 
 parseAddresses ($addresses)
 Explode recipient string, allowed separators are ',' ';' ' ' Returns an array with recipient ilMailAddress instances. More...
 
 getCountRecipient ($a_recipients, $a_only_email=true)
 
 getCountRecipients ($a_to, $a_cc, $a_bcc, $a_only_email=true)
 
 getEmailRecipients ($a_recipients)
 
- Static Protected Member Functions inherited from ilMail
static getCachedUserInstance ($a_usr_id)
 
- Protected Attributes inherited from ilMail
 $lng
 
 $db
 
 $mfile
 
 $mail_options
 
 $table_mail
 
 $table_mail_saved
 
 $mail_data = array()
 
 $mail_obj_ref_id
 
 $save_in_sentbox
 
 $soap_enabled = true
 
 $mail_to_global_roles = 0
 
 $appendInstallationSignature = false
 
 $properties = array()
 
- Static Protected Attributes inherited from ilMail
static $userInstances = array()
 

Detailed Description

Class UserMail this class handles user mails.

Author
Stefan Meyer meyer.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Version
$Id$

Definition at line 15 of file class.ilFormatMail.php.

Constructor & Destructor Documentation

◆ __construct()

ilFormatMail::__construct (   $a_user_id)

Constructor setup an mail object.

Parameters
intuser_id public

Definition at line 24 of file class.ilFormatMail.php.

25  {
26  parent::__construct($a_user_id);
27  }

Member Function Documentation

◆ appendSearchResult()

ilFormatMail::appendSearchResult (   $a_names,
  $a_type 
)

append search result to recipient public

Parameters
arraynames to append
stringrcp type ('to','cc','bc')
Returns
string

Definition at line 137 of file class.ilFormatMail.php.

References $a_type, and ilMail\$mail_data.

138  {
139  if(empty($this->mail_data))
140  {
141  return false;
142  }
143  $name_str = implode(',',$a_names);
144  switch($a_type)
145  {
146  case 'to':
147  $this->mail_data["rcp_to"] = trim($this->mail_data["rcp_to"]);
148  if($this->mail_data["rcp_to"])
149  {
150  $this->mail_data["rcp_to"] = $this->mail_data["rcp_to"].",";
151  }
152  $this->mail_data["rcp_to"] = $this->mail_data["rcp_to"] . $name_str;
153  break;
154 
155  case 'cc':
156  $this->mail_data["rcp_cc"] = trim($this->mail_data["rcp_cc"]);
157  if($this->mail_data["rcp_cc"])
158  {
159  $this->mail_data["rcp_cc"] = $this->mail_data["rcp_cc"].",";
160  }
161  $this->mail_data["rcp_cc"] = $this->mail_data["rcp_cc"] . $name_str;
162  break;
163 
164  case 'bc':
165  $this->mail_data["rcp_bcc"] = trim($this->mail_data["rcp_bcc"]);
166  if($this->mail_data["rcp_bcc"])
167  {
168  $this->mail_data["rcp_bcc"] = $this->mail_data["rcp_bcc"].",";
169  }
170  $this->mail_data["rcp_bcc"] = $this->mail_data["rcp_bcc"] . $name_str;
171  break;
172 
173  }
174  return $this->mail_data;
175  }
$a_type
Definition: workflow.php:93

◆ appendSignature()

ilFormatMail::appendSignature ( )

append signature to mail body public

Returns
string

Definition at line 213 of file class.ilFormatMail.php.

214  {
215  return $this->mail_data["m_message"] .= chr(13).chr(10).$this->mail_options->getSignature();
216  }

◆ formatForwardSubject()

ilFormatMail::formatForwardSubject ( )

format a forward subject public

Returns
string

Definition at line 121 of file class.ilFormatMail.php.

122  {
123  if(empty($this->mail_data))
124  {
125  return false;
126  }
127  return $this->mail_data["m_subject"] = "[FWD: ".$this->mail_data["m_subject"]."]";
128  }

◆ formatLinebreakMessage()

ilFormatMail::formatLinebreakMessage (   $a_message)

format message according to linebreak option

Parameters
stringmessage public
Returns
string formatted message

Definition at line 182 of file class.ilFormatMail.php.

References array.

183  {
184  $formatted = array();
185 
186 # debug($a_message);
187  $linebreak = $this->mail_options->getLinebreak();
188  // SPLIT INTO LINES returns always an array
189  $lines = explode(chr(10),$a_message);
190  for($i=0;$i<count($lines);$i++)
191  {
192  if(substr($lines[$i],0,1) != '>')
193  {
194  $formatted[] = wordwrap($lines[$i],$linebreak,chr(10));
195  }
196  else
197  {
198  $formatted[] = $lines[$i];
199  }
200  }
201  $formatted = implode(chr(10),$formatted);
202 # debug($formatted);
203  return $formatted;
204  }
Create styles array
The data for the language used.

◆ formatReplyMessage()

ilFormatMail::formatReplyMessage ( )

format a reply message public

Returns
string

Definition at line 34 of file class.ilFormatMail.php.

35  {
36  if(empty($this->mail_data))
37  {
38  return false;
39  }
40 # debug($this->mail_data["m_message"]);
41  $bodylines = explode(chr(13).chr(10), $this->mail_data["m_message"]);
42 # var_dump("<pre>",$bodylines,"</pre");
43  for ($i = 0; $i < count($bodylines); $i++)
44  {
45  $bodylines[$i] = "> ".$bodylines[$i];
46  }
47  return $this->mail_data["m_message"] = implode(chr(13).chr(10), $bodylines);
48  }

◆ formatReplyRecipient()

ilFormatMail::formatReplyRecipient ( )

get reply recipient public

Returns
string

Definition at line 104 of file class.ilFormatMail.php.

105  {
106  if(empty($this->mail_data))
107  {
108  return false;
109  }
110 
111  require_once './Services/User/classes/class.ilObjUser.php';
112 
113  $user = new ilObjUser($this->mail_data["sender_id"]);
114  return $this->mail_data["rcp_to"] = $user->getLogin();
115  }

◆ formatReplyRecipientsForCC()

ilFormatMail::formatReplyRecipientsForCC ( )

get reply recipients for cc public

Returns
string

Definition at line 69 of file class.ilFormatMail.php.

References $ilUser, and array.

70  {
71  global $ilUser;
72 
73  if(empty($this->mail_data))
74  {
75  return '';
76  }
77 
78  $newCC = array();
79 
80  foreach (explode(',', $this->mail_data['rcp_to']) as $to)
81  {
82  if (trim($to) != '' && $ilUser->getLogin() != trim($to))
83  {
84  $newCC[] = trim($to);
85  }
86  }
87 
88  foreach (explode(',', $this->mail_data['rcp_cc']) as $cc)
89  {
90  if (trim($cc) != '' && $ilUser->getLogin() != trim($cc))
91  {
92  $newCC[] = trim($cc);
93  }
94  }
95 
96  return ($this->mail_data['rcp_cc'] = implode(', ', $newCC));
97  }
$ilUser
Definition: imgupload.php:18
Create styles array
The data for the language used.

◆ formatReplySubject()

ilFormatMail::formatReplySubject ( )

format a reply subject public

Returns
string

Definition at line 55 of file class.ilFormatMail.php.

56  {
57  if(empty($this->mail_data))
58  {
59  return false;
60  }
61  return $this->mail_data["m_subject"] = "RE: ".$this->mail_data["m_subject"];
62  }

◆ prependSignature()

ilFormatMail::prependSignature ( )
Returns
string

Definition at line 221 of file class.ilFormatMail.php.

222  {
223  return $this->mail_options->getSignature().chr(13).chr(10).chr(13).chr(10).$this->mail_data["m_message"];
224  }

The documentation for this class was generated from the following file: