本文整理汇总了PHP中Msg::getTemplate方法的典型用法代码示例。如果您正苦于以下问题:PHP Msg::getTemplate方法的具体用法?PHP Msg::getTemplate怎么用?PHP Msg::getTemplate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Msg
的用法示例。
在下文中一共展示了Msg::getTemplate方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: send
public function send(Msg $msg)
{
// Get template file path.
$templatePath = SPrintF('Notifies/SMS/%s.tpl', $msg->getTemplate());
$smarty = JSmarty::get();
if (!$smarty->templateExists($templatePath)) {
throw new jException('Template file not found: ' . $templatePath);
}
$smarty->assign('Config', Config());
foreach (array_keys($msg->getParams()) as $paramName) {
$smarty->assign($paramName, $msg->getParam($paramName));
}
try {
$message = $smarty->fetch($templatePath);
} catch (Exception $e) {
throw new jException(SPrintF("Can't fetch template: %s", $templatePath), $e->getCode(), $e);
}
$recipient = $msg->getParam('User');
if (!$recipient['Params']['NotificationMethods']['SMS']['Address']) {
throw new jException('Mobile phone number not found for user: ' . $recipient['ID']);
}
$taskParams = array('UserID' => $recipient['ID'], 'TypeID' => 'SMS', 'Params' => array($recipient['Params']['NotificationMethods']['SMS']['Address'], $message, $recipient['ID'], $msg->getParam('ChargeFree') ? TRUE : FALSE));
#Debug(SPrintF('[system/classes/SMS.class.php]: msg = %s,',print_r($msg,true)));
$result = Comp_Load('www/Administrator/API/TaskEdit', $taskParams);
switch (ValueOf($result)) {
case 'error':
throw new jException("Couldn't add task to queue: " . $result);
case 'exception':
throw new jException("Couldn't add task to queue: " . $result->String);
case 'array':
return TRUE;
default:
throw new jException("Unexpected error.");
}
}
示例2: send
public function send(Msg $msg)
{
#-------------------------------------------------------------------------------
// Get template file path.
$templatePath = SPrintF('Notifies/ICQ/%s.tpl', $msg->getTemplate());
#-------------------------------------------------------------------------------
$smarty = JSmarty::get();
#-------------------------------------------------------------------------------
if (!$smarty->templateExists($templatePath)) {
throw new jException('Template file not found: ' . $templatePath);
}
#-------------------------------------------------------------------------------
$smarty->assign('Config', Config());
#-------------------------------------------------------------------------------
foreach (array_keys($msg->getParams()) as $paramName) {
$smarty->assign($paramName, $msg->getParam($paramName));
}
#-------------------------------------------------------------------------------
try {
#-------------------------------------------------------------------------------
$message = $smarty->fetch($templatePath);
#-------------------------------------------------------------------------------
} catch (Exception $e) {
#-------------------------------------------------------------------------------
throw new jException(SPrintF("Can't fetch template: %s", $templatePath), $e->getCode(), $e);
#-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
$recipient = $msg->getParam('User');
#-------------------------------------------------------------------------------
if (!$recipient['Params']['NotificationMethods']['ICQ']['Address']) {
throw new jException("ICQ UIN not found for user: " . $recipient['ID']);
}
#-------------------------------------------------------------------------------
$taskParams = array('UserID' => $recipient['ID'], 'TypeID' => 'ICQ', 'Params' => array($recipient['Params']['NotificationMethods']['ICQ']['Address'], $message, $recipient['ID']));
#-------------------------------------------------------------------------------
$result = Comp_Load('www/Administrator/API/TaskEdit', $taskParams);
switch (ValueOf($result)) {
case 'error':
throw new jException("Couldn't add task to queue: " . $result);
case 'exception':
throw new jException("Couldn't add task to queue: " . $result->String);
case 'array':
return TRUE;
default:
throw new jException("Unexpected error.");
}
#-------------------------------------------------------------------------------
}
示例3: sendMsg
public static function sendMsg(Msg $msg, $Methods = array())
{
#-------------------------------------------------------------------------------
$Executor = Comp_Load('www/Administrator/API/ProfileCompile', array('ProfileID' => 100));
#-------------------------------------------------------------------------------
switch (ValueOf($Executor)) {
case 'error':
return ERROR | @Trigger_Error(500);
case 'exception':
# No more...
break;
case 'array':
#-------------------------------------------------------------------------------
$msg->setParam('Executor', $Executor['Attribs']);
#-------------------------------------------------------------------------------
break;
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
default:
return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$User = DB_Select('Users', array('ID', 'Name', 'Sign', 'Email', 'UniqID', 'IsNotifies', 'Params'), array('UNIQ', 'ID' => $msg->getTo()));
#-------------------------------------------------------------------------------
switch (ValueOf($User)) {
case 'error':
return ERROR | @Trigger_Error('[Email_Send]: не удалось выбрать получателя');
case 'exception':
return new gException('EMAIL_RECIPIENT_NOT_FOUND', 'Получатель письма не найден');
case 'array':
#-------------------------------------------------------------------------------
$TypeID = $msg->getTemplate();
#-------------------------------------------------------------------------------
Debug(SPrintF('[system/classes/NotificationManager]: TypeID = %s', $TypeID));
#-------------------------------------------------------------------------------
if ($TypeID != 'UserPasswordRestore') {
if (!$User['IsNotifies']) {
return new gException('NOTIFIES_RECIPIENT_DISABLED', 'Уведомления для получателя отключены');
}
}
#-------------------------------------------------------------------------------
$msg->setParam('User', $User);
#-------------------------------------------------------------------------------
break;
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
default:
return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$From = DB_Select('Users', array('ID', 'Name', 'Sign', 'Email', 'UniqID', 'Params'), array('UNIQ', 'ID' => $msg->getFrom()));
#-------------------------------------------------------------------------------
switch (ValueOf($From)) {
case 'error':
return ERROR | @Trigger_Error('[Email_Send]: не удалось выбрать отправителя');
case 'exception':
return new gException('EMAIL_SENDER_NOT_FOUND', 'Отправитель не найден');
case 'array':
#-------------------------------------------------------------------------------
$msg->setParam('From', $From);
#-------------------------------------------------------------------------------
break;
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
default:
return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Config = Config();
#-------------------------------------------------------------------------------
$Notifies = $Config['Notifies'];
#-------------------------------------------------------------------------------
# вариант когда методы не заданы - значит все доступные
if (SizeOf($Methods) == 0) {
#-------------------------------------------------------------------------------
$Array = array();
#-------------------------------------------------------------------------------
foreach (Array_Keys($Notifies['Methods']) as $MethodID) {
$Array[] = $MethodID;
}
#-------------------------------------------------------------------------------
$Methods = $Array;
#-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$sentMsgCnt = 0;
#-------------------------------------------------------------------------------
foreach (Array_Keys($Notifies['Methods']) as $MethodID) {
#-------------------------------------------------------------------------------
if (!$Notifies['Methods'][$MethodID]['IsActive'] || !In_Array($MethodID, $Methods)) {
continue;
}
#-------------------------------------------------------------------------------
# проверяем контакт, если не мыло - должен быть подтверждён
if ($MethodID != 'Email') {
if (!$User['Params']['NotificationMethods'][$MethodID]['Confirmed']) {
//.........这里部分代码省略.........
示例4: send
public function send(Msg $msg)
{
// Get template file path.
$templatePath = SPrintF('Notifies/Email/%s.tpl', $msg->getTemplate());
$smarty = JSmarty::get();
$smarty->clearAllAssign();
if (!$smarty->templateExists($templatePath)) {
throw new jException('Template file not found: ' . $templatePath);
}
$smarty->assign('Config', Config());
foreach (array_keys($msg->getParams()) as $paramName) {
$smarty->assign($paramName, $msg->getParam($paramName));
}
$message = $smarty->fetch($templatePath);
try {
// Debug("msg->getParam('Theme'): "+ $msg->getParam('Theme'));
if ($msg->getParam('Theme')) {
// Debug("SET THEME FROM PARAMS");
$theme = $msg->getParam('Theme');
} else {
// Debug("SET THEME FROM TEMPLATE");
$theme = $smarty->getTemplateVars('Theme');
}
// Debug("THEME: "+$theme);
if (!$theme) {
$theme = '$Theme';
}
} catch (Exception $e) {
throw new jException(SPrintF("Can't fetch template: %s", $templatePath), $e->getCode(), $e);
}
$recipient = $msg->getParam('User');
if (!$recipient['Email']) {
throw new jException('E-mail address not found for user: ' . $recipient['ID']);
}
$sender = $msg->getParam('From');
$emailHeads = array(SPrintF('From: %s', $sender['Email']), 'MIME-Version: 1.0', 'Content-Transfer-Encoding: 8bit', SPrintF('Content-Type: multipart/mixed; boundary="----==--%s"', HOST_ID));
// added by lissyara 2013-02-13 in 15:45 MSK, for JBS-609
if ($msg->getParam('Message-ID')) {
$emailHeads[] = SPrintF('Message-ID: %s', $msg->getParam('Message-ID'));
}
$Params = array();
if ($msg->getParam('Recipient')) {
$Params[] = $msg->getParam('Recipient');
} else {
$Params[] = $recipient['Email'];
}
$Params[] = $theme;
$Params[] = $message;
$Params[] = Implode("\r\n", $emailHeads);
$Params[] = $recipient['ID'];
if ($msg->getParam('EmailAttachments')) {
$Params[] = $msg->getParam('EmailAttachments');
} else {
$Params[] = 'не определено';
}
$taskParams = array('UserID' => $recipient['ID'], 'TypeID' => 'Email', 'Params' => $Params);
$result = Comp_Load('www/Administrator/API/TaskEdit', $taskParams);
switch (ValueOf($result)) {
case 'error':
throw new jException("Couldn't add task to queue: " . $result);
case 'exception':
throw new jException("Couldn't add task to queue: " . $result->String);
case 'array':
return TRUE;
default:
throw new jException("Unexpected error.");
}
}