Documentation TYPO3 par Ameos

board_submit.inc

00001 <?php
00002 /***************************************************************
00003 *  Copyright notice
00004 *
00005 *  (c) 1999-2005 Kasper Skaarhoj (kasperYYYY@typo3.com)
00006 *  All rights reserved
00007 *
00008 *  This script is part of the TYPO3 project. The TYPO3 project is
00009 *  free software; you can redistribute it and/or modify
00010 *  it under the terms of the GNU General Public License as published by
00011 *  the Free Software Foundation; either version 2 of the License, or
00012 *  (at your option) any later version.
00013 *
00014 *  The GNU General Public License can be found at
00015 *  http://www.gnu.org/copyleft/gpl.html.
00016 *  A copy is found in the textfile GPL.txt and important notices to the license
00017 *  from the author is found in LICENSE.txt distributed with these scripts.
00018 *
00019 *
00020 *  This script is distributed in the hope that it will be useful,
00021 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00022 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023 *  GNU General Public License for more details.
00024 *
00025 *  This copyright notice MUST APPEAR in all copies of the script!
00026 ***************************************************************/
00037 if (is_object($this))   {
00038         if (is_array($this->newData["tt_board"]["NEW"]))        {
00039                         // Plain insert of record:
00040                 $this->execNEWinsert("tt_board", $this->newData["tt_board"]["NEW"]);
00041                 $newId = $GLOBALS['TYPO3_DB']->sql_insert_id();
00042                 $this->clear_cacheCmd(intval($this->newData["tt_board"]["NEW"]["pid"]));
00043 
00044                 $conf = $this->getConf("tt_board");
00045                         // Clear specific cache:
00046                 if ($conf["clearCacheForPids"]) {
00047                         $ccPids=t3lib_div::intExplode(",",$conf["clearCacheForPids"]);
00048                         reset($ccPids);
00049                         while(list(,$pid)=each($ccPids))        {
00050                                 if ($pid > 0)   {$this->clear_cacheCmd($pid);}
00051                         }
00052                 }
00053 
00054 //debug($conf);
00055 
00056                         // Send post to Mailing list ...
00057                 if ($conf["sendToMailingList"] && $conf["sendToMailingList."]["email"]) {
00058 /*
00059         TypoScript for this section (was used for the TYPO3 mailing list.
00060 
00061     sendToMailingList=1
00062     sendToMailingList {
00063       email = typo3@netfielders.de
00064       reply = submitmail@typo3.com
00065       namePrefix = Typo3Forum/
00066       altSubject = Post from www.typo3.com
00067     }
00068 */
00069                         $mConf = $conf["sendToMailingList."];
00070                         $maillist_data = $this->newData["tt_board"]["NEW"];
00071                         $maillist_recip = $mConf["email"];
00072 
00073                         $maillist_header='From: '.$mConf["namePrefix"].$maillist_data["author"].' <'.$mConf["reply"].'>'.chr(10);
00074                         $maillist_header.='Reply-To: '.$mConf["reply"];
00075 
00076 
00077                                 //  Subject
00078                         if ($maillist_data["parent"])   {       // RE:
00079                                 $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 'tt_board', 'uid='.intval($maillist_data['parent']));
00080                                 $row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res);
00081                                 $maillist_subject = "Re: ".$row["subject"]." [#".$maillist_data["parent"]."]";
00082                         } else {        // New:
00083                                 $maillist_subject =  (trim($maillist_data["subject"]) ? trim($maillist_data["subject"]) : $mConf["altSubject"])." [#".$newId."]";
00084                         }
00085 
00086                                 // Message
00087                         $maillist_msg = $maillist_data["subject"].chr(10).chr(10).$maillist_data["message"]."
00088 --
00089 ".$maillist_data["author"];
00090                                 // Send
00091 
00092                         if ($conf["debug"])     {
00093                                 debug($maillist_recip,1);
00094                                 debug($maillist_subject,1);
00095                                 echo nl2br($maillist_msg.chr(10));
00096                                 debug($maillist_header,1);
00097                         } else {
00098                                 mail ($maillist_recip, $maillist_subject, $maillist_msg, $maillist_header);
00099                         }
00100                 }
00101 
00102 
00103                 // Notify me...
00104                 if (t3lib_div::_GP("notify_me") && $conf["notify"])     {
00105                         $notifyMe = t3lib_div::uniqueList(str_replace(",".$maillist_data["email"].",", ",", ",".t3lib_div::_GP("notify_me").","));
00106 
00107                         $markersArray=array();
00108                         $markersArray["###AUTHOR###"] = trim($this->newData["tt_board"]["NEW"][author]);
00109                         $markersArray["###AUTHOR_EMAIL###"] = trim($this->newData["tt_board"]["NEW"][email]);
00110                         $markersArray["###HOST###"] = t3lib_div::getIndpEnv("HTTP_HOST");
00111                         $markersArray["###URL###"] = t3lib_div::getIndpEnv("TYPO3_REQUEST_SCRIPT").'?id='.$GLOBALS["TSFE"]->id.'&type='.$GLOBALS["TSFE"]->type.'&no_cache=1&tt_board_uid='.$newId;
00112 
00113                         if ($maillist_data["parent"])   {               // If reply and not new thread:
00114                                 $msg = t3lib_div::getUrl($GLOBALS["TSFE"]->tmpl->getFileName($conf["newReply."]["msg"]));
00115                                 $markersArray["###DID_WHAT###"]= $conf["newReply."]["didWhat"];
00116                                 $markersArray["###SUBJECT_PREFIX###"]=$conf["newReply."]["subjectPrefix"];
00117                         } else {        // If new thread:
00118                                 $msg = t3lib_div::getUrl($GLOBALS["TSFE"]->tmpl->getFileName($conf["newThread."]["msg"]));
00119                                 $markersArray["###DID_WHAT###"]= $conf["newThread."]["didWhat"];
00120                                 $markersArray["###SUBJECT_PREFIX###"]=$conf["newThread."]["subjectPrefix"];
00121                         }
00122                         $markersArray["###SUBJECT###"] = strtoupper($this->newData["tt_board"]["NEW"][subject]);
00123                         $markersArray["###BODY###"] = t3lib_div::fixed_lgd($this->newData["tt_board"]["NEW"][message],1000);
00124 
00125                         reset($markersArray);
00126                         while(list($marker,$markContent)=each($markersArray))   {
00127                                 $msg=str_replace($marker,$markContent,$msg);
00128                         }
00129 
00130                         $headers=array();
00131                         if ($conf["notify_from"])       {$headers[]="FROM: ".$conf["notify_from"];}
00132 
00133                         $msgParts = split(chr(10),$msg,2);
00134                         if ($conf["debug"])     {
00135                                 debug($notifyMe,1);
00136                                 debug($headers,1);
00137                                 debug($msgParts);
00138                         } else {
00139                                 mail ($notifyMe, $msgParts[0], $msgParts[1], implode($headers,chr(10)));
00140                         }
00141                 }
00142         }
00143 }
00144 
00145 ?>


Généré par Les spécialistes TYPO3 avec  doxygen 1.4.6