mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2026-01-06 00:53:00 +01:00
ajout commentaire doxygen
This commit is contained in:
@@ -42,115 +42,116 @@
|
||||
00065 {
|
||||
00066 $this->subject = $subject;
|
||||
00067 $this->addr_to = $to;
|
||||
00068 $this->smtp_headers = $this->write_smtpheaders($from,$addr_cc);
|
||||
00069 $this->text_body = $this->write_body($msg, $filename_list);
|
||||
00068 $this->smtp_headers = $this-><a class="code" href="classCMailFile.html#a6">write_smtpheaders</a>($from,$addr_cc);
|
||||
00069 $this->text_body = $this-><a class="code" href="classCMailFile.html#a4">write_body</a>($msg, $filename_list);
|
||||
00070 <span class="keywordflow">if</span> (count($filename_list)) {
|
||||
00071 $this->mime_headers = $this->write_mimeheaders($filename_list, $mimefilename_list);
|
||||
00072 $this->text_encoded = $this->attach_file($filename_list,$mimetype_list,$mimefilename_list);
|
||||
00071 $this->mime_headers = $this-><a class="code" href="classCMailFile.html#a5">write_mimeheaders</a>($filename_list, $mimefilename_list);
|
||||
00072 $this->text_encoded = $this-><a class="code" href="classCMailFile.html#a1">attach_file</a>($filename_list,$mimetype_list,$mimefilename_list);
|
||||
00073 }
|
||||
00074 }
|
||||
00075
|
||||
00076 function attach_file($filename_list,$mimetype_list,$mimefilename_list)
|
||||
00077 {
|
||||
00078 <span class="keywordflow">for</span> ($i = 0; $i < count($filename_list); $i++) {
|
||||
00079 $encoded = $this->encode_file($filename_list[$i]);
|
||||
00080 <span class="keywordflow">if</span> ($mimefilename_list[$i]) $filename_list[$i] = $mimefilename_list[$i];
|
||||
00081 $out = $out . <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"\n"</span>;
|
||||
00082 <span class="keywordflow">if</span> (! $mimetype_list[$i]) { $mimetype_list[$i] = <span class="stringliteral">"application/octet-stream"</span>; }
|
||||
00083 $out = $out . <span class="stringliteral">"Content-type: "</span> . $mimetype_list[$i] . <span class="stringliteral">"; name=\"$filename_list[$i]\";\n"</span>;
|
||||
00084 $out = $out . <span class="stringliteral">"Content-Transfer-Encoding: base64\n"</span>;
|
||||
00085 $out = $out . <span class="stringliteral">"Content-disposition: attachment; filename=\"$filename_list[$i]\"\n\n"</span>;
|
||||
00086 $out = $out . $encoded . <span class="stringliteral">"\n"</span>;
|
||||
00087 }
|
||||
00088 $out = $out . <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"--"</span> . <span class="stringliteral">"\n"</span>;
|
||||
00089 <span class="keywordflow">return</span> $out;
|
||||
00090 <span class="comment">// added -- to notify email client attachment is done</span>
|
||||
00091 }
|
||||
00092
|
||||
00093 function encode_file($sourcefile)
|
||||
00094 {
|
||||
00095 <span class="comment">// print "<pre> on encode $sourcefile </pre>\n";</span>
|
||||
00096 <span class="keywordflow">if</span> (is_readable($sourcefile))
|
||||
00097 {
|
||||
00098 $fd = fopen($sourcefile, <span class="stringliteral">"r"</span>);
|
||||
00099 $contents = fread($fd, filesize($sourcefile));
|
||||
00100 $encoded = my_chunk_split(base64_encode($contents));
|
||||
00101 fclose($fd);
|
||||
00102 }
|
||||
00103 <span class="keywordflow">return</span> $encoded;
|
||||
00104 }
|
||||
00105
|
||||
00106 function sendfile()
|
||||
00107 {
|
||||
00108 $headers .= $this->smtp_headers . $this->mime_headers;
|
||||
00109 $message = $this->text_body . $this->text_encoded;
|
||||
00110 <span class="keywordflow">return</span> mail($this->addr_to,$this->subject,stripslashes($message),$headers);
|
||||
00111 }
|
||||
00112
|
||||
00113 function write_body($msgtext, $filename_list)
|
||||
00114 {
|
||||
00115 <span class="keywordflow">if</span> (count($filename_list))
|
||||
00116 {
|
||||
00117 $out = <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"\n"</span>;
|
||||
00118 $out = $out . <span class="stringliteral">"Content-Type: text/plain; charset=\"iso8859-15\"\n\n"</span>;
|
||||
00119 <span class="comment">// $out = $out . "Content-Type: text/plain; charset=\"us-ascii\"\n\n";</span>
|
||||
00120 }
|
||||
00121 $out = $out . $msgtext . <span class="stringliteral">"\n"</span>;
|
||||
00122 <span class="keywordflow">return</span> $out;
|
||||
00123 }
|
||||
00124
|
||||
00125 function write_mimeheaders($filename_list, $mimefilename_list) {
|
||||
00126 $out = <span class="stringliteral">"MIME-version: 1.0\n"</span>;
|
||||
00127 $out = $out . <span class="stringliteral">"Content-type: multipart/mixed; "</span>;
|
||||
00128 $out = $out . <span class="stringliteral">"boundary=\"$this->mime_boundary\"\n"</span>;
|
||||
00129 $out = $out . <span class="stringliteral">"Content-transfer-encoding: 7BIT\n"</span>;
|
||||
00130 <span class="keywordflow">for</span>($i = 0; $i < count($filename_list); $i++) {
|
||||
00131 <span class="keywordflow">if</span> ($mimefilename_list[$i]) $filename_list[$i] = $mimefilename_list[$i];
|
||||
00132 $out = $out . <span class="stringliteral">"X-attachments: $filename_list[$i];\n\n"</span>;
|
||||
00133 }
|
||||
00134 <span class="keywordflow">return</span> $out;
|
||||
00135 }
|
||||
00136
|
||||
00137 function write_smtpheaders($addr_from,$addr_cc)
|
||||
00138 {
|
||||
00139 $out = <span class="stringliteral">"From: $addr_from\n"</span>;
|
||||
00140 <span class="keywordflow">if</span>($addr_cc != <span class="stringliteral">""</span>)
|
||||
00141 $out = $out . <span class="stringliteral">"Cc: $addr_cc\n"</span>;
|
||||
00142 $out = $out . <span class="stringliteral">"Reply-To: $addr_from\n"</span>;
|
||||
00143 $out = $out . <span class="stringliteral">"X-Mailer: Dolibarr version "</span> . DOL_VERSION .<span class="stringliteral">"\n"</span>;
|
||||
00144 $out = $out . <span class="stringliteral">"X-Sender: $addr_from\n"</span>;
|
||||
00145 <span class="keywordflow">return</span> $out;
|
||||
00146 }
|
||||
00147 }
|
||||
00148
|
||||
00149 <span class="comment">// usage - mimetype example "image/gif"</span>
|
||||
00150 <span class="comment">// $mailfile = new CMailFile($subject,$sendto,$replyto,$message,$filename,$mimetype);</span>
|
||||
00151 <span class="comment">// $mailfile->sendfile();</span>
|
||||
00152
|
||||
00153 <span class="comment">// Splits a string by RFC2045 semantics (76 chars per line, end with \r\n).</span>
|
||||
00154 <span class="comment">// This is not in all PHP versions so I define one here manuall.</span>
|
||||
00155 function my_chunk_split($str)
|
||||
00156 {
|
||||
00157 $stmp = $str;
|
||||
00158 $len = strlen($stmp);
|
||||
00159 $out = <span class="stringliteral">""</span>;
|
||||
00160 <span class="keywordflow">while</span> ($len > 0) {
|
||||
00161 <span class="keywordflow">if</span> ($len >= 76) {
|
||||
00162 $out = $out . substr($stmp, 0, 76) . <span class="stringliteral">"\r\n"</span>;
|
||||
00163 $stmp = substr($stmp, 76);
|
||||
00164 $len = $len - 76;
|
||||
00165 }
|
||||
00166 <span class="keywordflow">else</span> {
|
||||
00167 $out = $out . $stmp . <span class="stringliteral">"\r\n"</span>;
|
||||
00168 $stmp = <span class="stringliteral">""</span>; $len = 0;
|
||||
00169 }
|
||||
00170 }
|
||||
00171 <span class="keywordflow">return</span> $out;
|
||||
00172 }
|
||||
00173
|
||||
00174 <span class="comment">// end script</span>
|
||||
00175 ?>
|
||||
</div></pre><hr size="1"><address style="align: right;"><small>G<EFBFBD>n<EFBFBD>r<EFBFBD> le Fri Jul 16 00:31:06 2004 pour dolibarr par
|
||||
<a name="l00083"></a><a class="code" href="classCMailFile.html#a1">00083</a> function <a class="code" href="classCMailFile.html#a1">attach_file</a>($filename_list,$mimetype_list,$mimefilename_list)
|
||||
00084 {
|
||||
00085 <span class="keywordflow">for</span> ($i = 0; $i < count($filename_list); $i++) {
|
||||
00086 $encoded = $this-><a class="code" href="classCMailFile.html#a2">encode_file</a>($filename_list[$i]);
|
||||
00087 <span class="keywordflow">if</span> ($mimefilename_list[$i]) $filename_list[$i] = $mimefilename_list[$i];
|
||||
00088 $out = $out . <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"\n"</span>;
|
||||
00089 <span class="keywordflow">if</span> (! $mimetype_list[$i]) { $mimetype_list[$i] = <span class="stringliteral">"application/octet-stream"</span>; }
|
||||
00090 $out = $out . <span class="stringliteral">"Content-type: "</span> . $mimetype_list[$i] . <span class="stringliteral">"; name=\"$filename_list[$i]\";\n"</span>;
|
||||
00091 $out = $out . <span class="stringliteral">"Content-Transfer-Encoding: base64\n"</span>;
|
||||
00092 $out = $out . <span class="stringliteral">"Content-disposition: attachment; filename=\"$filename_list[$i]\"\n\n"</span>;
|
||||
00093 $out = $out . $encoded . <span class="stringliteral">"\n"</span>;
|
||||
00094 }
|
||||
00095 $out = $out . <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"--"</span> . <span class="stringliteral">"\n"</span>;
|
||||
00096 <span class="keywordflow">return</span> $out;
|
||||
00097 <span class="comment">// added -- to notify email client attachment is done</span>
|
||||
00098 }
|
||||
00099
|
||||
<a name="l00105"></a><a class="code" href="classCMailFile.html#a2">00105</a> function <a class="code" href="classCMailFile.html#a2">encode_file</a>($sourcefile)
|
||||
00106 {
|
||||
00107 <span class="comment">// print "<pre> on encode $sourcefile </pre>\n";</span>
|
||||
00108 <span class="keywordflow">if</span> (is_readable($sourcefile))
|
||||
00109 {
|
||||
00110 $fd = fopen($sourcefile, <span class="stringliteral">"r"</span>);
|
||||
00111 $contents = fread($fd, filesize($sourcefile));
|
||||
00112 $encoded = <a class="code" href="CMailFile_8class_8php.html#a0">my_chunk_split</a>(base64_encode($contents));
|
||||
00113 fclose($fd);
|
||||
00114 }
|
||||
00115 <span class="keywordflow">return</span> $encoded;
|
||||
00116 }
|
||||
00117
|
||||
<a name="l00122"></a><a class="code" href="classCMailFile.html#a3">00122</a> function <a class="code" href="classCMailFile.html#a3">sendfile</a>()
|
||||
00123 {
|
||||
00124 $headers .= $this->smtp_headers . $this->mime_headers;
|
||||
00125 $message = $this->text_body . $this->text_encoded;
|
||||
00126 <span class="keywordflow">return</span> mail($this->addr_to,$this->subject,stripslashes($message),$headers);
|
||||
00127 }
|
||||
00128
|
||||
<a name="l00135"></a><a class="code" href="classCMailFile.html#a4">00135</a> function <a class="code" href="classCMailFile.html#a4">write_body</a>($msgtext, $filename_list)
|
||||
00136 {
|
||||
00137 <span class="keywordflow">if</span> (count($filename_list))
|
||||
00138 {
|
||||
00139 $out = <span class="stringliteral">"--"</span> . $this->mime_boundary . <span class="stringliteral">"\n"</span>;
|
||||
00140 $out = $out . <span class="stringliteral">"Content-Type: text/plain; charset=\"iso8859-15\"\n\n"</span>;
|
||||
00141 <span class="comment">// $out = $out . "Content-Type: text/plain; charset=\"us-ascii\"\n\n";</span>
|
||||
00142 }
|
||||
00143 $out = $out . $msgtext . <span class="stringliteral">"\n"</span>;
|
||||
00144 <span class="keywordflow">return</span> $out;
|
||||
00145 }
|
||||
00146
|
||||
<a name="l00153"></a><a class="code" href="classCMailFile.html#a5">00153</a> function <a class="code" href="classCMailFile.html#a5">write_mimeheaders</a>($filename_list, $mimefilename_list) {
|
||||
00154 $out = <span class="stringliteral">"MIME-version: 1.0\n"</span>;
|
||||
00155 $out = $out . <span class="stringliteral">"Content-type: multipart/mixed; "</span>;
|
||||
00156 $out = $out . <span class="stringliteral">"boundary=\"$this->mime_boundary\"\n"</span>;
|
||||
00157 $out = $out . <span class="stringliteral">"Content-transfer-encoding: 7BIT\n"</span>;
|
||||
00158 <span class="keywordflow">for</span>($i = 0; $i < count($filename_list); $i++) {
|
||||
00159 <span class="keywordflow">if</span> ($mimefilename_list[$i]) $filename_list[$i] = $mimefilename_list[$i];
|
||||
00160 $out = $out . <span class="stringliteral">"X-attachments: $filename_list[$i];\n\n"</span>;
|
||||
00161 }
|
||||
00162 <span class="keywordflow">return</span> $out;
|
||||
00163 }
|
||||
00164
|
||||
<a name="l00171"></a><a class="code" href="classCMailFile.html#a6">00171</a> function <a class="code" href="classCMailFile.html#a6">write_smtpheaders</a>($addr_from,$addr_cc)
|
||||
00172 {
|
||||
00173 $out = <span class="stringliteral">"From: $addr_from\n"</span>;
|
||||
00174 <span class="keywordflow">if</span>($addr_cc != <span class="stringliteral">""</span>)
|
||||
00175 $out = $out . <span class="stringliteral">"Cc: $addr_cc\n"</span>;
|
||||
00176 $out = $out . <span class="stringliteral">"Reply-To: $addr_from\n"</span>;
|
||||
00177 $out = $out . <span class="stringliteral">"X-Mailer: Dolibarr version "</span> . DOL_VERSION .<span class="stringliteral">"\n"</span>;
|
||||
00178 $out = $out . <span class="stringliteral">"X-Sender: $addr_from\n"</span>;
|
||||
00179 <span class="keywordflow">return</span> $out;
|
||||
00180 }
|
||||
00181 }
|
||||
00182
|
||||
00190 <span class="comment">// usage - mimetype example "image/gif"</span>
|
||||
00191 <span class="comment">// $mailfile = new CMailFile($subject,$sendto,$replyto,$message,$filename,$mimetype);</span>
|
||||
00192 <span class="comment">// $mailfile->sendfile();</span>
|
||||
00193
|
||||
00194 <span class="comment">// Splits a string by RFC2045 semantics (76 chars per line, end with \r\n).</span>
|
||||
00195 <span class="comment">// This is not in all PHP versions so I define one here manuall.</span>
|
||||
00196
|
||||
<a name="l00197"></a><a class="code" href="CMailFile_8class_8php.html#a0">00197</a> function <a class="code" href="CMailFile_8class_8php.html#a0">my_chunk_split</a>($str)
|
||||
00198 {
|
||||
00199 $stmp = $str;
|
||||
00200 $len = strlen($stmp);
|
||||
00201 $out = <span class="stringliteral">""</span>;
|
||||
00202 <span class="keywordflow">while</span> ($len > 0) {
|
||||
00203 <span class="keywordflow">if</span> ($len >= 76) {
|
||||
00204 $out = $out . substr($stmp, 0, 76) . <span class="stringliteral">"\r\n"</span>;
|
||||
00205 $stmp = substr($stmp, 76);
|
||||
00206 $len = $len - 76;
|
||||
00207 }
|
||||
00208 <span class="keywordflow">else</span> {
|
||||
00209 $out = $out . $stmp . <span class="stringliteral">"\r\n"</span>;
|
||||
00210 $stmp = <span class="stringliteral">""</span>; $len = 0;
|
||||
00211 }
|
||||
00212 }
|
||||
00213 <span class="keywordflow">return</span> $out;
|
||||
00214 }
|
||||
00215
|
||||
00216 <span class="comment">// end script</span>
|
||||
00217 ?>
|
||||
</div></pre><hr size="1"><address style="align: right;"><small>G<EFBFBD>n<EFBFBD>r<EFBFBD> le Fri Jul 16 08:51:51 2004 pour dolibarr par
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.7 </small></address>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user