当前位置: 首页>>代码示例>>PHP>>正文


PHP make_substitutions函数代码示例

本文整理汇总了PHP中make_substitutions函数的典型用法代码示例。如果您正苦于以下问题:PHP make_substitutions函数的具体用法?PHP make_substitutions怎么用?PHP make_substitutions使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了make_substitutions函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: makeSubstitution

 /**
  * Make substitution
  *
  * @param	$object				Adherent Object
  * @return  string      		Value of input text string with substitutions done
  */
 function makeSubstitution($object)
 {
     global $conf, $langs;
     $text = $this->body;
     $birthday = dol_print_date($object->naiss, 'day');
     $msgishtml = 0;
     if (dol_textishtml($text, 1)) {
         $msgishtml = 1;
     }
     $infos = '';
     // Specific for Photo
     $photoName = $object->photo;
     $photoType = $object->_attachments->{$photoName}->content_type;
     $photoBase64 = $object->getFileBase64($object->photo);
     $photo = '<img src="data:' . $PhotoType . ';base64,' . $photoBase64 . '"/>';
     // Substitutions
     $substitutionarray = array('__DOL_MAIN_URL_ROOT__' => DOL_MAIN_URL_ROOT, '__ID__' => $msgishtml ? dol_htmlentitiesbr($object->login) : $object->login, '__CIVILITE__' => $object->getCivilityLabel($msgishtml ? 0 : 1), '__FIRSTNAME__' => $msgishtml ? dol_htmlentitiesbr($object->Firstname) : $object->Firstname, '__LASTNAME__' => $msgishtml ? dol_htmlentitiesbr($object->Lastname) : $object->Lastname, '__FULLNAME__' => $msgishtml ? dol_htmlentitiesbr($object->getFullName($langs)) : $object->getFullName($langs), '__COMPANY__' => $msgishtml ? dol_htmlentitiesbr($object->societe) : $object->societe, '__ADDRESS__' => $msgishtml ? dol_htmlentitiesbr($object->address) : $object->address, '__ZIP__' => $msgishtml ? dol_htmlentitiesbr($object->zip) : $object->zip, '__TOWN__' => $msgishtml ? dol_htmlentitiesbr($object->town) : $object->town, '__COUNTRY__' => $msgishtml ? dol_htmlentitiesbr($object->country) : $object->country, '__EMAIL__' => $msgishtml ? dol_htmlentitiesbr($object->email) : $object->email, '__NAISS__' => $msgishtml ? dol_htmlentitiesbr($birthday) : $birthday, '__PHOTO__' => $photo, '__LOGIN__' => $msgishtml ? dol_htmlentitiesbr($object->login) : $object->login, '__PASSWORD__' => $msgishtml ? dol_htmlentitiesbr($object->pass) : $object->pass, '__STATUS__' => $object->getLibStatus(), '__INFOS__' => $msgishtml ? dol_htmlentitiesbr($infos) : $infos, '__PRENOM__' => $msgishtml ? dol_htmlentitiesbr($object->Firstname) : $object->Firstname, '__NOM__' => $msgishtml ? dol_htmlentitiesbr($object->Lastname) : $object->Lastname, '__SOCIETE__' => $msgishtml ? dol_htmlentitiesbr($object->societe) : $object->societe, '__ADRESSE__' => $msgishtml ? dol_htmlentitiesbr($object->address) : $object->address, '__CP__' => $msgishtml ? dol_htmlentitiesbr($object->zip) : $object->zip, '__VILLE__' => $msgishtml ? dol_htmlentitiesbr($object->town) : $object->town, '__PAYS__' => $msgishtml ? dol_htmlentitiesbr($object->country) : $object->country);
     complete_substitutions_array($substitutionarray, $langs);
     $this->body = make_substitutions($text, $substitutionarray);
     return 1;
 }
开发者ID:nrjacker4,项目名称:crm-php,代码行数:27,代码来源:adherent_card.class.php

示例2: complete_substitutions_array

        $error++;
    }
    if (empty($smsfrom) || !str_replace('+', '', $smsfrom)) {
        $message = '<div class="error">' . $langs->trans("ErrorFieldRequired", $langs->transnoentities("SmsFrom")) . '</div>';
        $action = 'test';
        $error++;
    }
    if (empty($sendto) || !str_replace('+', '', $sendto)) {
        $message = '<div class="error">' . $langs->trans("ErrorFieldRequired", $langs->transnoentities("SmsTo")) . '</div>';
        $action = 'test';
        $error++;
    }
    if (!$error) {
        // Make substitutions into message
        complete_substitutions_array($substitutionarrayfortest, $langs);
        $body = make_substitutions($body, $substitutionarrayfortest);
        require_once DOL_DOCUMENT_ROOT . "/core/class/CSMSFile.class.php";
        $smsfile = new CSMSFile($sendto, $smsfrom, $body, $deliveryreceipt, $deferred, $priority, $class);
        // This define OvhSms->login, pass, session and account
        $result = $smsfile->sendfile();
        // This send SMS
        if ($result) {
            $message = '<div class="ok">' . $langs->trans("SmsSuccessfulySent", $smsfrom, $sendto) . '</div>';
        } else {
            $message = '<div class="error">' . $langs->trans("ResultKo") . '<br>' . $smsfile->error . ' ' . $result . '</div>';
        }
        $action = '';
    }
}
/*
 * View
开发者ID:nrjacker4,项目名称:crm-php,代码行数:31,代码来源:sms.php

示例3: show_form


//.........这里部分代码省略.........
                        }
                    } catch (Exception $e) {
                        dol_print_error('', 'Error to get list of senders: ' . $e->getMessage());
                    }
                } else {
                    dol_syslog("Warning: The SMS sending method has not been defined into MAIN_SMS_SENDMODE", LOG_WARNING);
                    $resultsender[0]->number = $this->fromsms;
                }
                if (is_array($resultsender) && count($resultsender) > 0) {
                    print '<select name="fromsms" id="valid" class="flat">';
                    foreach ($resultsender as $obj) {
                        print '<option value="' . $obj->number . '">' . $obj->number . '</option>';
                    }
                    print '</select>';
                } else {
                    print '<span class="error">' . $langs->trans("SmsNoPossibleRecipientFound") . '</span>';
                }
                print '</td>';
                print "</tr>\n";
            }
        }
        // To
        if ($this->withto || is_array($this->withto)) {
            print '<tr><td width="180">';
            //$moretext=$langs->trans("YouCanUseCommaSeparatorForSeveralRecipients");
            $moretext = '';
            print $form->textwithpicto($langs->trans("SmsTo"), $moretext);
            print '</td><td>';
            if ($this->withtoreadonly) {
                print !is_array($this->withto) && !is_numeric($this->withto) ? $this->withto : "";
            } else {
                print "<input size=\"16\" id=\"sendto\" name=\"sendto\" value=\"" . (!is_array($this->withto) && $this->withto != '1' ? isset($_REQUEST["sendto"]) ? $_REQUEST["sendto"] : $this->withto : "+") . "\">";
                if (!empty($this->withtosocid) && $this->withtosocid > 0) {
                    $liste = array();
                    foreach ($soc->thirdparty_and_contact_phone_array() as $key => $value) {
                        $liste[$key] = $value;
                    }
                    print " " . $langs->trans("or") . " ";
                    //var_dump($_REQUEST);exit;
                    print $form->selectarray("receiver", $liste, GETPOST("receiver"), 1);
                }
                print ' ' . $langs->trans("SmsInfoNumero");
            }
            print "</td></tr>\n";
        }
        // Message
        if ($this->withbody) {
            $defaultmessage = '';
            if ($this->param["models"] == 'body') {
                $defaultmessage = $this->withbody;
            }
            $defaultmessage = make_substitutions($defaultmessage, $this->substit, $langs);
            if (isset($_POST["message"])) {
                $defaultmessage = $_POST["message"];
            }
            $defaultmessage = str_replace('\\n', "\n", $defaultmessage);
            print "<tr>";
            print "<td width=\"180\" valign=\"top\">" . $langs->trans("SmsText") . "</td>";
            print "<td>";
            if ($this->withbodyreadonly) {
                print nl2br($defaultmessage);
                print '<input type="hidden" name="message" value="' . $defaultmessage . '">';
            } else {
                print '<textarea cols="40" name="message" id="message" rows="4" onkeyup="limitChars(this, 160, \'charlimitinfo\')">' . $defaultmessage . '</textarea>';
                print '<div id="charlimitinfo">' . $langs->trans("SmsInfoCharRemain") . ': <span id="charlimitinfospan">' . (160 - dol_strlen($defaultmessage)) . '</span></div></td>';
            }
            print "</td></tr>\n";
        }
        print '
           <tr>
            <td>' . $langs->trans("DelayBeforeSending") . ':</td>
            <td> <input name="deferred" id="deferred" size="4" value="0"></td></tr>

           <tr><td>' . $langs->trans("Priority") . ' :</td><td>
           <select name="priority" id="valid" class="flat">
           <option value="0">0</option>
           <option value="1">1</option>
           <option value="2">2</option>
           <option value="3" selected="selected">3</option>
           </select></td></tr>

           <tr><td>' . $langs->trans("Type") . ' :</td><td>
           <select name="class" id="valid" class="flat">
           <option value="0">Flash</option>
           <option value="1" selected="selected">Standard</option>
           <option value="2">SIM</option>
           <option value="3">ToolKit</option>
           </select></td></tr>';
        print '<tr><td align="center" colspan="2"><center>';
        print "<input class=\"button\" type=\"submit\" name=\"sendmail\" value=\"" . $langs->trans("SendSms") . "\"";
        print ">";
        if ($this->withcancel) {
            print " &nbsp; &nbsp; ";
            print "<input class=\"button\" type=\"submit\" name=\"cancel\" value=\"" . $langs->trans("Cancel") . "\">";
        }
        print "</center></td></tr>\n";
        print "</table>\n";
        print "</form>\n";
        print "<!-- Fin form SMS -->\n";
    }
开发者ID:netors,项目名称:dolibarr,代码行数:101,代码来源:html.formsms.class.php

示例4: get_exdir

 $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id, 2, 0, 1);
 $object->sendto = $_POST["sendto"];
 if (!$object->sendto) {
     $mesg = '<div class="error">' . $langs->trans("ErrorFieldRequired", $langs->trans("MailTo")) . '</div>';
     $error++;
 }
 if (!$error) {
     // Le message est-il en html
     $msgishtml = -1;
     // Inconnu par defaut
     if (preg_match('/[\\s\\t]*<html>/i', $object->body)) {
         $msgishtml = 1;
     }
     // Pratique les substitutions sur le sujet et message
     $tmpsujet = make_substitutions($object->sujet, $object->substitutionarrayfortest);
     $tmpbody = make_substitutions($object->body, $object->substitutionarrayfortest);
     $arr_file = array();
     $arr_mime = array();
     $arr_name = array();
     $arr_css = array();
     // Ajout CSS
     if (!empty($object->bgcolor)) {
         $arr_css['bgcolor'] = (preg_match('/^#/', $object->bgcolor) ? '' : '#') . $object->bgcolor;
     }
     if (!empty($object->bgimage)) {
         $arr_css['bgimage'] = $object->bgimage;
     }
     // Attached files
     $listofpaths = dol_dir_list($upload_dir, 'all', 0, '', '', 'name', SORT_ASC, 0);
     if (count($listofpaths)) {
         foreach ($listofpaths as $key => $val) {
开发者ID:LionSystemsSolutions,项目名称:El-Canelo-ERP,代码行数:31,代码来源:fiche.php

示例5: _sendByMail

function _sendByMail(&$db, &$conf, &$user, &$langs, &$facture, &$societe, $label)
{
    $filename_list = array();
    $mimetype_list = array();
    $mimefilename_list = array();
    $ref = dol_sanitizeFileName($facture->ref);
    $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref, preg_quote($ref, '/') . '([^\\-])+');
    $file = $fileparams['fullname'];
    // Build document if it not exists
    if (!$file || !is_readable($file)) {
        $result = $facture->generateDocument($facture->modelpdf, $langs, 0, 0, 0);
        if ($result <= 0) {
            $error = 1;
            return $error;
        }
    }
    $label = !empty($conf->global->SENDINVOICETOADHERENT_SUBJECT) ? $conf->global->SENDINVOICETOADHERENT_SUBJECT : $label;
    $substitutionarray = array('__NAME__' => $societe->name, '__REF__' => $facture->ref);
    $message = $conf->global->SENDINVOICETOADHERENT_MESSAGE;
    $message = make_substitutions($message, $substitutionarray);
    $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref, preg_quote($ref, '/') . '([^\\-])+');
    $file = $fileparams['fullname'];
    $filename = basename($file);
    $mimefile = dol_mimetype($file);
    $filename_list[] = $file;
    $mimetype_list[] = $mimefile;
    $mimefilename_list[] = $filename;
    $CMail = new CMailFile($label, $societe->email, $conf->global->MAIN_MAIL_EMAIL_FROM, $message, $filename_list, $mimetype_list, $mimefilename_list, '', '', '', '', $errors_to = $conf->global->MAIN_MAIL_ERRORS_TO);
    // Send mail
    return $CMail->sendfile();
}
开发者ID:ATM-Consulting,项目名称:dolibarr_module_sendinvoicetoadherent,代码行数:31,代码来源:sendinvoicetoadherent.php

示例6: preg_replace

         }
         //echo "[".$html."]";
         // post-processing cleanup
         $html = preg_replace('!<p>[\\s\\h\\v]*</p>!u', '', $html);
         if ($links == 'remove') {
             $html = preg_replace('!</?a[^>]*>!', '', $html);
         }
         //echo "[". $html ."]";
         // get text sample for language detection
         $text_sample = strip_tags(substr($html, 0, 500));
         if (!$valid_key) {
             $html = make_substitutions($options->message_to_prepend) . $html;
             $html .= make_substitutions($options->message_to_append);
         } else {
             $html = make_substitutions($options->message_to_prepend_with_key) . $html;
             $html .= make_substitutions($options->message_to_append_with_key);
         }
     }
 }
 /*
 if ($format == 'atom') {
 	$newitem->addElement('content', $html);
 	$newitem->setDate((int)$item->get_date('U'));
 	if ($author = $item->get_author()) {
 		$newitem->addElement('author', array('name'=>$author->get_name()));
 	}
 } else { 
 */
 if ($valid_key && isset($_GET['pubsub'])) {
     // used only on fivefilters.org at the moment
     $newitem->addElement('guid', 'http://fivefilters.org/content-only/redirect.php?url=' . urlencode($item->get_permalink()), array('isPermaLink' => 'false'));
开发者ID:oxmcvusd,项目名称:full-text-rss-1,代码行数:31,代码来源:makefulltextfeed.php

示例7: make_substitutions

         $textfooter = make_substitutions($conf->global->ADHERENT_CARD_FOOTER_TEXT, $substitutionarray);
         $textright = make_substitutions($conf->global->ADHERENT_CARD_TEXT_RIGHT, $substitutionarray);
         if (is_numeric($foruserid) || $foruserlogin) {
             for ($j = 0; $j < 100; $j++) {
                 $arrayofmembers[] = array('textleft' => $textleft, 'textheader' => $textheader, 'textfooter' => $textfooter, 'textright' => $textright, 'id' => $objp->rowid, 'photo' => $objp->photo);
             }
         } else {
             $arrayofmembers[] = array('textleft' => $textleft, 'textheader' => $textheader, 'textfooter' => $textfooter, 'textright' => $textright, 'id' => $objp->rowid, 'photo' => $objp->photo);
         }
     }
     // For labels
     if ($mode == 'label') {
         if (empty($conf->global->ADHERENT_ETIQUETTE_TEXT)) {
             $conf->global->ADHERENT_ETIQUETTE_TEXT = "%FULLNAME%\n%ADDRESS%\n%ZIP% %TOWN%\n%COUNTRY%";
         }
         $textleft = make_substitutions($conf->global->ADHERENT_ETIQUETTE_TEXT, $substitutionarray);
         $textheader = '';
         $textfooter = '';
         $textright = '';
         $arrayofmembers[] = array('textleft' => $textleft, 'textheader' => $textheader, 'textfooter' => $textfooter, 'textright' => $textright, 'id' => $objp->rowid, 'photo' => $objp->photo);
     }
     $i++;
 }
 // Build and output PDF
 if (empty($mode) || $mode == 'card' || $mode == 'cardlogin') {
     if (!count($arrayofmembers)) {
         $mesg = $langs->trans("ErrorRecordNotFound");
     }
     if (empty($model) || $model == '-1') {
         $mesg = $langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("DescADHERENT_CARD_TYPE"));
     }
开发者ID:Samara94,项目名称:dolibarr,代码行数:31,代码来源:carte.php

示例8: array

         //convert to TCPDF compatible encoding types
         $is2d = $module->is2d;
     }
 }
 if (!$error) {
     // List of values to scan for a replacement
     $substitutionarray = array('%LOGIN%' => $user->login, '%COMPANY%' => $mysoc->name, '%ADDRESS%' => $mysoc->address, '%ZIP%' => $mysoc->zip, '%TOWN%' => $mysoc->town, '%COUNTRY%' => $mysoc->country, '%COUNTRY_CODE%' => $mysoc->country_code, '%EMAIL%' => $mysoc->email, '%YEAR%' => $year, '%MONTH%' => $month, '%DAY%' => $day, '%DOL_MAIN_URL_ROOT%' => DOL_MAIN_URL_ROOT, '%SERVER%' => "http://" . $_SERVER["SERVER_NAME"] . "/");
     complete_substitutions_array($substitutionarray, $langs);
     // For labels
     if ($mode == 'label') {
         $txtforsticker = "%PHOTO%";
         // Photo will be barcode image, %BARCODE% posible when using TCPDF generator
         $textleft = make_substitutions(empty($conf->global->BARCODE_LABEL_LEFT_TEXT) ? $txtforsticker : $conf->global->BARCODE_LABEL_LEFT_TEXT, $substitutionarray);
         $textheader = make_substitutions(empty($conf->global->BARCODE_LABEL_HEADER_TEXT) ? '' : $conf->global->BARCODE_LABEL_HEADER_TEXT, $substitutionarray);
         $textfooter = make_substitutions(empty($conf->global->BARCODE_LABEL_FOOTER_TEXT) ? '' : $conf->global->BARCODE_LABEL_FOOTER_TEXT, $substitutionarray);
         $textright = make_substitutions(empty($conf->global->BARCODE_LABEL_RIGHT_TEXT) ? '' : $conf->global->BARCODE_LABEL_RIGHT_TEXT, $substitutionarray);
         $forceimgscalewidth = empty($conf->global->BARCODE_FORCEIMGSCALEWIDTH) ? 1 : $conf->global->BARCODE_FORCEIMGSCALEWIDTH;
         $forceimgscaleheight = empty($conf->global->BARCODE_FORCEIMGSCALEHEIGHT) ? 1 : $conf->global->BARCODE_FORCEIMGSCALEHEIGHT;
         for ($i = 0; $i < $numberofsticker; $i++) {
             $arrayofrecords[] = array('textleft' => $textleft, 'textheader' => $textheader, 'textfooter' => $textfooter, 'textright' => $textright, 'code' => $code, 'encoding' => $encoding, 'is2d' => $is2d, 'photo' => $barcodeimage);
         }
     }
     $i++;
     $mesg = '';
     // Build and output PDF
     if ($mode == 'label') {
         if (!count($arrayofrecords)) {
             $mesg = $langs->trans("ErrorRecordNotFound");
         }
         if (empty($modellabel) || $modellabel == '-1') {
             $mesg = $langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("DescADHERENT_ETIQUETTE_TYPE"));
开发者ID:NoisyBoy86,项目名称:Dolibarr_test,代码行数:31,代码来源:printsheet.php

示例9: pdf_pagefoot

/**
 *  Show footer of page for PDF generation
 *
 *	@param	PDF			&$pdf     		The PDF factory
 *  @param  Translate	$outputlangs	Object lang for output
 * 	@param	string		$paramfreetext	Constant name of free text
 * 	@param	Societe		$fromcompany	Object company
 * 	@param	int			$marge_basse	Margin bottom
 * 	@param	int			$marge_gauche	Margin left
 * 	@param	int			$page_hauteur	Page height
 * 	@param	Object		$object			Object shown in PDF
 * 	@param	int			$showdetails	Show company details
 * 	@return	void
 */
function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_basse, $marge_gauche, $page_hauteur, $object, $showdetails = 0)
{
    global $conf, $user;
    $outputlangs->load("dict");
    $line = '';
    // Line of free text
    if (!empty($conf->global->{$paramfreetext})) {
        // Make substitution
        $substitutionarray = array('__FROM_NAME__' => $fromcompany->nom, '__FROM_EMAIL__' => $fromcompany->email, '__TOTAL_TTC__' => $object->total_ttc, '__TOTAL_HT__' => $object->total_ht, '__TOTAL_VAT__' => $object->total_vat);
        complete_substitutions_array($substitutionarray, $outputlangs, $object);
        $newfreetext = make_substitutions($conf->global->{$paramfreetext}, $substitutionarray);
        $line .= $outputlangs->convToOutputCharset($newfreetext);
    }
    // First line of company infos
    if ($showdetails) {
        $line1 = "";
        // Company name
        if ($fromcompany->name) {
            $line1 .= ($line1 ? " - " : "") . $outputlangs->transnoentities("RegisteredOffice") . ": " . $fromcompany->name;
        }
        // Address
        if ($fromcompany->address) {
            $line1 .= ($line1 ? " - " : "") . $fromcompany->address;
        }
        // Zip code
        if ($fromcompany->zip) {
            $line1 .= ($line1 ? " - " : "") . $fromcompany->zip;
        }
        // Town
        if ($fromcompany->town) {
            $line1 .= ($line1 ? " " : "") . $fromcompany->town;
        }
        // Phone
        if ($fromcompany->phone) {
            $line1 .= ($line1 ? " - " : "") . $outputlangs->transnoentities("Phone") . ": " . $fromcompany->phone;
        }
        // Fax
        if ($fromcompany->fax) {
            $line1 .= ($line1 ? " - " : "") . $outputlangs->transnoentities("Fax") . ": " . $fromcompany->fax;
        }
        $line2 = "";
        // URL
        if ($fromcompany->url) {
            $line2 .= ($line2 ? " - " : "") . $fromcompany->url;
        }
        // Email
        if ($fromcompany->email) {
            $line2 .= ($line2 ? " - " : "") . $fromcompany->email;
        }
    }
    // Line 3 of company infos
    $line3 = "";
    // Juridical status
    if ($fromcompany->forme_juridique_code) {
        $line3 .= ($line3 ? " - " : "") . $outputlangs->convToOutputCharset(getFormeJuridiqueLabel($fromcompany->forme_juridique_code));
    }
    // Capital
    if ($fromcompany->capital) {
        $line3 .= ($line3 ? " - " : "") . $outputlangs->transnoentities("CapitalOf", $fromcompany->capital) . " " . $outputlangs->transnoentities("Currency" . $conf->currency);
    }
    // Prof Id 1
    if ($fromcompany->idprof1 && ($fromcompany->country_code != 'FR' || !$fromcompany->idprof2)) {
        $field = $outputlangs->transcountrynoentities("ProfId1", $fromcompany->country_code);
        if (preg_match('/\\((.*)\\)/i', $field, $reg)) {
            $field = $reg[1];
        }
        $line3 .= ($line3 ? " - " : "") . $field . ": " . $outputlangs->convToOutputCharset($fromcompany->idprof1);
    }
    // Prof Id 2
    if ($fromcompany->idprof2) {
        $field = $outputlangs->transcountrynoentities("ProfId2", $fromcompany->country_code);
        if (preg_match('/\\((.*)\\)/i', $field, $reg)) {
            $field = $reg[1];
        }
        $line3 .= ($line3 ? " - " : "") . $field . ": " . $outputlangs->convToOutputCharset($fromcompany->idprof2);
    }
    // Line 4 of company infos
    $line4 = "";
    // Prof Id 3
    if ($fromcompany->idprof3) {
        $field = $outputlangs->transcountrynoentities("ProfId3", $fromcompany->country_code);
        if (preg_match('/\\((.*)\\)/i', $field, $reg)) {
            $field = $reg[1];
        }
        $line4 .= ($line4 ? " - " : "") . $field . ": " . $outputlangs->convToOutputCharset($fromcompany->idprof3);
    }
//.........这里部分代码省略.........
开发者ID:nrjacker4,项目名称:crm-php,代码行数:101,代码来源:pdf.lib.php

示例10: array

	$mil->sendto = $_POST["sendto"];
	if (! $mil->sendto)
	{
		$message='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->trans("MailTo")).'</div>';
		$error++;
	}

	if (! $error)
	{
		// Le message est-il en html
		$msgishtml=-1;	// Inconnu par defaut
		if (preg_match('/[\s\t]*<html>/i',$message)) $msgishtml=1;

		// Pratique les substitutions sur le sujet et message
		$mil->sujet=make_substitutions($mil->sujet,$substitutionarrayfortest,$langs);
		$mil->body=make_substitutions($mil->body,$substitutionarrayfortest,$langs);

		$arr_file = array();
		$arr_mime = array();
		$arr_name = array();
		$arr_css  = array();

        // Ajout CSS
        if (!empty($mil->bgcolor)) $arr_css['bgcolor'] = (preg_match('/^#/',$mil->bgcolor)?'':'#').$mil->bgcolor;
        if (!empty($mil->bgimage)) $arr_css['bgimage'] = $mil->bgimage;

        // Attached files
		$listofpaths=dol_dir_list($upload_dir,'all',0,'','','name',SORT_ASC,0);
		if (sizeof($listofpaths))
		{
			foreach($listofpaths as $key => $val)
开发者ID:remyyounes,项目名称:dolibarr,代码行数:31,代码来源:fiche.php

示例11: get_form


//.........这里部分代码省略.........
                $out .= "</td></tr>\n";
            }
            // Ask delivery receipt
            if (!empty($this->withdeliveryreceipt)) {
                $out .= '<tr><td width="180">' . $langs->trans("DeliveryReceipt") . '</td><td>';
                if (!empty($this->withdeliveryreceiptreadonly)) {
                    $out .= yn($this->withdeliveryreceipt);
                } else {
                    $defaultvaluefordeliveryreceipt = 0;
                    if (!empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_PROPAL) && !empty($this->param['models']) && $this->param['models'] == 'propal_send') {
                        $defaultvaluefordeliveryreceipt = 1;
                    }
                    if (!empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_ASKPRICESUPPLIER) && !empty($this->param['models']) && $this->param['models'] == 'askpricesupplier_send') {
                        $defaultvaluefordeliveryreceipt = 1;
                    }
                    if (!empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_ORDER) && !empty($this->param['models']) && $this->param['models'] == 'order_send') {
                        $defaultvaluefordeliveryreceipt = 1;
                    }
                    if (!empty($conf->global->MAIL_FORCE_DELIVERY_RECEIPT_INVOICE) && !empty($this->param['models']) && $this->param['models'] == 'facture_send') {
                        $defaultvaluefordeliveryreceipt = 1;
                    }
                    $out .= $form->selectyesno('deliveryreceipt', isset($_POST["deliveryreceipt"]) ? $_POST["deliveryreceipt"] : $defaultvaluefordeliveryreceipt, 1);
                }
                $out .= "</td></tr>\n";
            }
            // Topic
            if (!empty($this->withtopic)) {
                $defaulttopic = "";
                if (count($arraydefaultmessage) > 0 && $arraydefaultmessage['topic']) {
                    $defaulttopic = $arraydefaultmessage['topic'];
                } elseif (!is_numeric($this->withtopic)) {
                    $defaulttopic = $this->withtopic;
                }
                $defaulttopic = make_substitutions($defaulttopic, $this->substit);
                $out .= '<tr>';
                $out .= '<td width="180">' . $langs->trans("MailTopic") . '</td>';
                $out .= '<td>';
                if ($this->withtopicreadonly) {
                    $out .= $defaulttopic;
                    $out .= '<input type="hidden" size="60" id="subject" name="subject" value="' . $defaulttopic . '" />';
                } else {
                    $out .= '<input type="text" size="60" id="subject" name="subject" value="' . (isset($_POST["subject"]) && !$_POST['modelselected'] ? $_POST["subject"] : ($defaulttopic ? $defaulttopic : '')) . '" />';
                }
                $out .= "</td></tr>\n";
            }
            // Attached files
            if (!empty($this->withfile)) {
                $out .= '<tr>';
                $out .= '<td width="180">' . $langs->trans("MailFile") . '</td>';
                $out .= '<td>';
                if (is_numeric($this->withfile)) {
                    // TODO Trick to have param removedfile containing nb of image to delete. But this does not works without javascript
                    $out .= '<input type="hidden" class="removedfilehidden" name="removedfile" value="">' . "\n";
                    $out .= '<script type="text/javascript" language="javascript">';
                    $out .= 'jQuery(document).ready(function () {';
                    $out .= '    jQuery(".removedfile").click(function() {';
                    $out .= '        jQuery(".removedfilehidden").val(jQuery(this).val());';
                    $out .= '    });';
                    $out .= '})';
                    $out .= '</script>' . "\n";
                    if (count($listofpaths)) {
                        foreach ($listofpaths as $key => $val) {
                            $out .= '<div id="attachfile_' . $key . '">';
                            $out .= img_mime($listofnames[$key]) . ' ' . $listofnames[$key];
                            if (!$this->withfilereadonly) {
                                $out .= ' <input type="image" style="border: 0px;" src="' . DOL_URL_ROOT . '/theme/' . $conf->theme . '/img/delete.png" value="' . ($key + 1) . '" class="removedfile" id="removedfile_' . $key . '" name="removedfile_' . $key . '" />';
开发者ID:TAASA,项目名称:Dolibarr-ERP-3.8.1,代码行数:67,代码来源:html.formmail.class.php

示例12: sendOrderByMail

 /**
  *
  * @param unknown $object
  */
 static function sendOrderByMail(&$object)
 {
     global $conf, $langs, $user, $db;
     if (empty($object->thirdparty)) {
         $object->fetch_thirdparty();
     }
     $sendto = $object->thirdparty->email;
     $sendtocc = '';
     $from = empty($user->email) ? $conf->global->MAIN_MAIL_EMAIL_FROM : $user->email;
     $id = $object->id;
     $_POST['receiver'] = '-1';
     $_POST['frommail'] = $_POST['replytomail'] = $from;
     $_POST['fromname'] = $_POST['replytoname'] = $user->getFullName($langs);
     dol_include_once('/core/class/html.formmail.class.php');
     $formmail = new Formmail($db);
     $outputlangs = clone $langs;
     $id_template = (int) $conf->global->GRAPEFRUIT_SEND_BILL_BY_MAIL_ON_VALIDATE_MODEL;
     $formmail->fetchAllEMailTemplate('facture_send', $user, $outputlangs);
     foreach ($formmail->lines_model as &$model) {
         if ($model->id == $id_template) {
             break;
         }
     }
     if (empty($model)) {
         setEventMessage($langs->trans('ModelRequire'), 'errors');
     }
     // Make substitution
     $substit['__REF__'] = $object->ref;
     $substit['__SIGNATURE__'] = $user->signature;
     $substit['__REFCLIENT__'] = $object->ref_client;
     $substit['__THIRDPARTY_NAME__'] = $object->thirdparty->name;
     $substit['__PROJECT_REF__'] = is_object($object->projet) ? $object->projet->ref : '';
     $substit['__PROJECT_NAME__'] = is_object($object->projet) ? $object->projet->title : '';
     $substit['__PERSONALIZED__'] = '';
     $substit['__CONTACTCIVNAME__'] = '';
     // Find the good contact adress
     $custcontact = '';
     $contactarr = array();
     $contactarr = $object->liste_contact(-1, 'external');
     if (is_array($contactarr) && count($contactarr) > 0) {
         foreach ($contactarr as $contact) {
             dol_syslog(get_class($this) . '::' . __METHOD__ . ' lib=' . $contact['libelle']);
             dol_syslog(get_class($this) . '::' . __METHOD__ . ' trans=' . $langs->trans('TypeContact_commande_external_BILLING'));
             if ($contact['libelle'] == $langs->trans('TypeContact_commande_external_BILLING')) {
                 require_once DOL_DOCUMENT_ROOT . '/contact/class/contact.class.php';
                 $contactstatic = new Contact($db);
                 $contactstatic->fetch($contact['id']);
                 $custcontact = $contactstatic->getFullName($langs, 1);
                 dol_syslog(get_class($this) . '::' . __METHOD__ . ' email=' . $contactstatic->email);
             }
         }
         if (!empty($custcontact)) {
             $substit['__CONTACTCIVNAME__'] = $custcontact;
         }
         if (!empty($contactstatic->email)) {
             $sendto = $contactstatic->email;
         }
     }
     $topic = make_substitutions($model->topic, $substit);
     $message = make_substitutions($model->content, $substit);
     $_POST['message'] = $message;
     $_POST['subject'] = $topic;
     require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php';
     // Add attached files
     $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $object->ref, preg_quote($object->ref, '/') . '[^\\-]+');
     if (is_array($fileparams) && array_key_exists('fullname', $fileparams) && !empty($fileparams['fullname'])) {
         $_SESSION["listofpaths"] = $fileparams['fullname'];
         $_SESSION["listofnames"] = basename($fileparams['fullname']);
         $_SESSION["listofmimes"] = dol_mimetype($fileparams['fullname']);
     } else {
         // generate invoice
         $result = $object->generateDocument($object->modelpdf, $outputlangs, 0, 0, 0);
         if ($result <= 0) {
             $this->error = $object->error;
         }
         $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $object->ref, preg_quote($object->ref, '/') . '[^\\-]+');
         if (is_array($fileparams) && array_key_exists('fullname', $fileparams) && !empty($fileparams['fullname'])) {
             $_SESSION["listofpaths"] = $fileparams['fullname'];
             $_SESSION["listofnames"] = basename($fileparams['fullname']);
             $_SESSION["listofmimes"] = dol_mimetype($fileparams['fullname']);
         }
     }
     $action = 'send';
     $actiontypecode = 'AC_FAC';
     $trigger_name = 'BILL_SENTBYMAIL';
     $paramname = 'id';
     $mode = 'emailfrominvoice';
     if (!empty($sendto)) {
         require_once __DIR__ . '/../tpl/actions_sendmails.inc.php';
     }
 }
开发者ID:ATM-Consulting,项目名称:dolibarr_module_grapefruit,代码行数:95,代码来源:grapefruit.class.php

示例13: write_file

 /**
  *	Function to build a document on disk using the generic odt module.
  *
  *	@param	Facture		$object					Object source to build document
  *	@param	Translate	$outputlangs			Lang output object
  * 	@param	string		$srctemplatepath	    Full path of source filename for generator using a template file
  *	@return	int         						1 if OK, <=0 if KO
  */
 function write_file($object, $outputlangs, $srctemplatepath)
 {
     global $user, $langs, $conf, $mysoc;
     if (empty($srctemplatepath)) {
         dol_syslog("doc_generic_odt::write_file parameter srctemplatepath empty", LOG_WARNING);
         return -1;
     }
     if (!is_object($outputlangs)) {
         $outputlangs = $langs;
     }
     $sav_charset_output = $outputlangs->charset_output;
     $outputlangs->charset_output = 'UTF-8';
     $outputlangs->load("main");
     $outputlangs->load("dict");
     $outputlangs->load("companies");
     $outputlangs->load("bills");
     if ($conf->facture->dir_output) {
         // If $object is id instead of object
         if (!is_object($object)) {
             $id = $object;
             $object = new Facture($this->db);
             $result = $object->fetch($id);
             if ($result < 0) {
                 dol_print_error($this->db, $object->error);
                 return -1;
             }
         }
         $dir = $conf->facture->dir_output;
         $objectref = dol_sanitizeFileName($object->ref);
         if (!preg_match('/specimen/i', $objectref)) {
             $dir .= "/" . $objectref;
         }
         $file = $dir . "/" . $objectref . ".odt";
         if (!file_exists($dir)) {
             if (dol_mkdir($dir) < 0) {
                 $this->error = $langs->transnoentities("ErrorCanNotCreateDir", $dir);
                 return -1;
             }
         }
         if (file_exists($dir)) {
             //print "srctemplatepath=".$srctemplatepath;exit;	// Src filename
             $newfile = basename($srctemplatepath);
             $newfiletmp = preg_replace('/\\.odt/i', '', $newfile);
             $newfiletmp = preg_replace('/template_/i', '', $newfiletmp);
             $newfiletmp = preg_replace('/modele_/i', '', $newfiletmp);
             $newfiletmp = $objectref . '_' . $newfiletmp;
             //$file=$dir.'/'.$newfiletmp.'.'.dol_print_date(dol_now(),'%Y%m%d%H%M%S').'.odt';
             $file = $dir . '/' . $newfiletmp . '.odt';
             //print "newdir=".$dir;
             //print "newfile=".$newfile;
             //print "file=".$file;
             //print "conf->societe->dir_temp=".$conf->societe->dir_temp;
             dol_mkdir($conf->facture->dir_temp);
             // If BILLING contact defined on invoice, we use it
             $usecontact = false;
             $arrayidcontact = $object->getIdContact('external', 'BILLING');
             if (count($arrayidcontact) > 0) {
                 $usecontact = true;
                 $result = $object->fetch_contact($arrayidcontact[0]);
             }
             // Recipient name
             if (!empty($usecontact)) {
                 // On peut utiliser le nom de la societe du contact
                 if ($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT) {
                     $socobject = $object->contact;
                 } else {
                     $socobject = $object->client;
                 }
             } else {
                 $socobject = $object->client;
             }
             // Make substitution
             $substitutionarray = array('__FROM_NAME__' => $this->emetteur->nom, '__FROM_EMAIL__' => $this->emetteur->email, '__TOTAL_TTC__' => $object->total_ttc, '__TOTAL_HT__' => $object->total_ht, '__TOTAL_VAT__' => $object->total_vat);
             complete_substitutions_array($substitutionarray, $langs, $object);
             // Line of free text
             $newfreetext = '';
             $paramfreetext = 'FACTURE_FREE_TEXT';
             if (!empty($conf->global->{$paramfreetext})) {
                 $newfreetext = make_substitutions($conf->global->{$paramfreetext}, $substitutionarray);
             }
             // Open and load template
             require_once ODTPHP_PATH . 'odf.php';
             $odfHandler = new odf($srctemplatepath, array('PATH_TO_TMP' => $conf->facture->dir_temp, 'ZIP_PROXY' => 'PclZipProxy', 'DELIMITER_LEFT' => '{', 'DELIMITER_RIGHT' => '}'));
             // After construction $odfHandler->contentXml contains content and
             // [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
             // [!-- BEGIN lines --]*[!-- END lines --]
             //print html_entity_decode($odfHandler->__toString());
             //print exit;
             // Make substitutions into odt of freetext
             try {
                 $odfHandler->setVars('free_text', $newfreetext, true, 'UTF-8');
             } catch (OdfException $e) {
//.........这里部分代码省略.........
开发者ID:nrjacker4,项目名称:crm-php,代码行数:101,代码来源:doc_generic_invoice_odt.modules.php

示例14: complete_head_from_modules

/**
 *  Complete or removed entries into a head array (used to build tabs) with value added by external modules.
 *  Such values are declared into $conf->modules_parts['tab'].
 *
 *  @param	Conf			$conf           Object conf
 *  @param  Translate		$langs          Object langs
 *  @param  object|null		$object         Object object
 *  @param  array			$head          	Object head
 *  @param  int				$h				New position to fill
 *  @param  string			$type           Value for object where objectvalue can be
 *                              			'thirdparty'       to add a tab in third party view
 *		                        	      	'intervention'     to add a tab in intervention view
 *     		                    	     	'supplier_order'   to add a tab in supplier order view
 *          		            	        'supplier_invoice' to add a tab in supplier invoice view
 *                  		    	        'invoice'          to add a tab in customer invoice view
 *                          			    'order'            to add a tab in customer order view
 *                      			        'product'          to add a tab in product view
 *                              			'propal'           to add a tab in propal view
 *                              			'user'             to add a tab in user view
 *                              			'group'            to add a tab in group view
 * 		        	               	     	'member'           to add a tab in fundation member view
 *      		                        	'categories_x'	   to add a tab in category view ('x': type of category (0=product, 1=supplier, 2=customer, 3=member)
 *      									'ecm'			   to add a tab for another ecm view
 *  @param  string		$mode  	        	'add' to complete head, 'remove' to remove entries
 *	@return	void
 */
function complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type, $mode = 'add')
{
    if (isset($conf->modules_parts['tabs'][$type]) && is_array($conf->modules_parts['tabs'][$type])) {
        foreach ($conf->modules_parts['tabs'][$type] as $value) {
            $values = explode(':', $value);
            if ($mode == 'add' && !preg_match('/^\\-/', $values[1])) {
                if (count($values) == 6) {
                    if ($values[0] != $type) {
                        continue;
                    }
                    if (verifCond($values[4])) {
                        if ($values[3]) {
                            $langs->load($values[3]);
                        }
                        if (preg_match('/SUBSTITUTION_([^_]+)/i', $values[2], $reg)) {
                            $substitutionarray = array();
                            complete_substitutions_array($substitutionarray, $langs, $object);
                            $label = make_substitutions($reg[1], $substitutionarray);
                        } else {
                            $label = $langs->trans($values[2]);
                        }
                        $head[$h][0] = dol_buildpath(preg_replace('/__ID__/i', is_object($object) && !empty($object->id) ? $object->id : '', $values[5]), 1);
                        $head[$h][1] = $label;
                        $head[$h][2] = str_replace('+', '', $values[1]);
                        $h++;
                    }
                } else {
                    if (count($values) == 5) {
                        if ($values[0] != $type) {
                            continue;
                        }
                        if ($values[3]) {
                            $langs->load($values[3]);
                        }
                        if (preg_match('/SUBSTITUTION_([^_]+)/i', $values[2], $reg)) {
                            $substitutionarray = array();
                            complete_substitutions_array($substitutionarray, $langs, $object);
                            $label = make_substitutions($reg[1], $substitutionarray);
                        } else {
                            $label = $langs->trans($values[2]);
                        }
                        $head[$h][0] = dol_buildpath(preg_replace('/__ID__/i', is_object($object) && !empty($object->id) ? $object->id : '', $values[4]), 1);
                        $head[$h][1] = $label;
                        $head[$h][2] = str_replace('+', '', $values[1]);
                        $h++;
                    }
                }
            } else {
                if ($mode == 'remove' && preg_match('/^\\-/', $values[1])) {
                    if ($values[0] != $type) {
                        continue;
                    }
                    $tabname = str_replace('-', '', $values[1]);
                    foreach ($head as $key => $val) {
                        $condition = !empty($values[3]) ? verifCond($values[3]) : 1;
                        if ($head[$key][2] == $tabname && $condition) {
                            unset($head[$key]);
                            break;
                        }
                    }
                }
            }
        }
    }
}
开发者ID:ADDAdev,项目名称:Dolibarr,代码行数:91,代码来源:functions.lib.php

示例15: setEventMessage

             $error++;
             setEventMessage('Failed to generate image file of barcode for code=' . $code . ' encoding=' . $encoding . ' file=' . basename($barcodeimage), 'errors');
         }
     } else {
         $error++;
         setEventMessage("Error, encoding " . $encoding . " is not supported by encoder " . $generator . '. You must choose another barcode type or install a barcode generation engine that support ' . $encoding, 'errors');
     }
 }
 if (!$error) {
     // List of values to scan for a replacement
     $substitutionarray = array('%LOGIN%' => $user->login, '%COMPANY%' => $mysoc->name, '%ADDRESS%' => $mysoc->address, '%ZIP%' => $mysoc->zip, '%TOWN%' => $mysoc->town, '%COUNTRY%' => $mysoc->country, '%COUNTRY_CODE%' => $mysoc->country_code, '%EMAIL%' => $mysoc->email, '%YEAR%' => $year, '%MONTH%' => $month, '%DAY%' => $day, '%DOL_MAIN_URL_ROOT%' => DOL_MAIN_URL_ROOT, '%SERVER%' => "http://" . $_SERVER["SERVER_NAME"] . "/");
     complete_substitutions_array($substitutionarray, $langs);
     // For labels
     if ($mode == 'label') {
         $txtforsticker = "%PHOTO%";
         $textleft = make_substitutions($txtforsticker, $substitutionarray);
         $textheader = '';
         $textfooter = '';
         $textright = '';
         $forceimgscalewidth = empty($conf->global->BARCODE_FORCEIMGSCALEWIDTH) ? 1 : $conf->global->BARCODE_FORCEIMGSCALEWIDTH;
         $forceimgscaleheight = empty($conf->global->BARCODE_FORCEIMGSCALEHEIGHT) ? 1 : $conf->global->BARCODE_FORCEIMGSCALEHEIGHT;
         for ($i = 0; $i < $numberofsticker; $i++) {
             $arrayofmembers[] = array('textleft' => $textleft, 'textheader' => $textheader, 'textfooter' => $textfooter, 'textright' => $textright, 'photo' => $barcodeimage);
         }
     }
     $i++;
     $mesg = '';
     // Build and output PDF
     if ($mode == 'label') {
         if (!count($arrayofmembers)) {
             $mesg = $langs->trans("ErrorRecordNotFound");
开发者ID:ADDAdev,项目名称:Dolibarr,代码行数:31,代码来源:printsheet.php


注:本文中的make_substitutions函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。