2012-01-11 3 views
1

私は数年前からすぐにosTicketを使用してきました。私は現在、私がサポートしている診療所のいくつかにこのシステムを使用しています。私は、ユーザーが自分がいる診療所の名前を入力する必要がある追加のフィールドを追加しました。osTicket変数を追加

それも機能していますが、新しいチケットが開かれていることを私のスタッフに知らせる自動メールに診療所名を入力する方法はわかりません。私は新しいベースvarialbeを追加する必要があると思うが、これを行う方法を知らない?何か案は?

答えて

0

私はライン32 class.msgtpl.phpのを見つけ、この旨(\ \ class.msgtpl.php含む)でした

$sql='SELECT * FROM '.EMAIL_TEMPLATE_TABLE.' WHERE tpl_id='.db_input($id); 

は、カスタム変数を利用することができますテンプレートに何がありますか?そうでない場合は、おそらく単なるpreg_replaceなので、あなた自身で書くことができます。 include/class.ticket.php

5

、ライン422

彼らは、この機能ですべてです。したがって、$search & $replaceに追加してください。

function replaceTemplateVars($text){ 
    global $cfg; 

    $dept = $this->getDept(); 
    $staff= $this->getStaff(); 

    $search = array('/%id/','/%ticket/','/%email/','/%name/','/%subject/','/%topic/','/%phone/','/%status/','/%priority/', 
        '/%dept/','/%assigned_staff/','/%createdate/','/%duedate/','/%closedate/','/%url/'); 
    $replace = array($this->getId(), 
        $this->getExtId(), 
        $this->getEmail(), 
        $this->getName(), 
        $this->getSubject(), 
        $this->getHelpTopic(), 
        $this->getPhoneNumber(), 
        $this->getStatus(), 
        $this->getPriority(), 
        ($dept?$dept->getName():''), 
        ($staff?$staff->getName():''), 
        Format::db_daydatetime($this->getCreateDate()), 
        Format::db_daydatetime($this->getDueDate()), 
        Format::db_daydatetime($this->getCloseDate()), 
        $cfg->getBaseUrl()); 
    return preg_replace($search,$replace,$text); 
} 
+0

ようこそstackoverflow!コードで質問に答えるときは、詳細を追加することを検討してください(特に、このコードは既に質問に答えるために改善されているのではなく、ソースコードからコピーされているようです)。 – Gijs