Пример #1
0
 function getTemplateInfo()
 {
     header("Content-Type: text/plain; charset=UTF-8");
     jincimport('core.messagefactory');
     jincimport('utility.jsonresponse');
     $tem_id = JRequest::getInt('id', 0);
     $minstance = MessageFactory::getInstance();
     if (!($template = $minstance->loadTemplate($tem_id))) {
         $template = new MessageTemplate(0);
     }
     // Building JSON response
     $response = new JSONResponse();
     $response->set('subject', $template->get('subject'));
     $response->set('body', $template->get('body'));
     echo $response->toString();
 }
    public function afterSave(){
        $_model = new AuctionEmails();
        $_model->message = strtr(MessageTemplate::MessageTemplate(DatabaseHelper::DEALER_REGISTRATION_TEMPLATE),['{name}' => $this->name]);
        $_model->to = $this->email;
        $_model->subject = 'Auction :: Company Registration';
        $_model->from = 'Auction';
        $_model->status = DatabaseHelper::SEND_MAIL;

        if($_model->save()){
            Auction::info('Company Registration Email registered');
        }
        else {
            $message= Auction::loggerMessageFormat('Email is not send to user due to following errors',$_model->getErrors());
            Auction::error($message);
        }
    }
Пример #3
0
 /**
  * Load template from database.
  *
  * @access	public
  * @return  MessageTemplate the default template, false if something wrong.
  * @since	0.6
  */
 function loadTemplate($tem_id)
 {
     jincimport('utility.servicelocator');
     $servicelocator = ServiceLocator::getInstance();
     $logger = $servicelocator->getLogger();
     $query = 'SELECT name, subject, body, cssfile ' . 'FROM #__jinc_template ' . 'WHERE id = ' . (int) $tem_id;
     $logger->debug('MessageFactory: Executing query: ' . $query);
     $dbo = JFactory::getDBO();
     $dbo->setQuery($query);
     if (!($template_list = $dbo->loadAssocList())) {
         return false;
     }
     if (empty($template_list)) {
         return false;
     }
     $template_info = $template_list[0];
     $template = new MessageTemplate($tem_id);
     $template->set('name', $template_info['name']);
     $template->set('subject', $template_info['subject']);
     $template->set('body', $template_info['body']);
     $template->set('cssfile', $template_info['cssfile']);
     return $template;
 }
Пример #4
0
	/**
	 * 调用应用
	 * @return
	 */
	private static function _callApp()
	{
		$wxApp = C('WX_APP');

		if (! $wxApp) {
			self::_errorLog('WX_APP param is null');
			return false;
		}

		$execType = $wxApp['EXEC_TYPE'];
		$filePath = $wxApp['FILE_PATH'];
		$className = $wxApp['CLASS_NAME'];
		$methodName = $wxApp['METHOD_NAME'];
		$classType = $wxApp['CLASS_TYPE'];

		$return = false;

		switch ($execType) {
			//本地加载插件方式
			case 'local':
				if (! $filePath || ! $className || ! $methodName || ! $classType) {
					self::_errorLog('WX_APP param error:'.$filePath.'=='.$className.'=='.$methodName .'=='.$classType, $wxApp);
					return false;
				}
				if (! file_exists($filePath)) {
					self::_errorLog('WX_APP filePath error', $filePath);
					return false;
				}

				include_once $filePath;

				if (! class_exists($className, false) || ! method_exists($className, $methodName)) {
					self::_errorLog('class or method not exist');
					return false;
				}

				if ('instance' == $classType) {
					$obj = new $className();
					$return = $obj->$methodName(self::$_message, self::$_msgStr);
				} else if ('static' == $classType) {
					$return = call_user_func(array($className, $methodName), self::$_message, self::$_msgStr);
				}

				break;
			case 'http':
				if (strrpos($filePath, 'http://') === false || strrpos($filePath, 'https://') === false) {
					self::_errorLog('remote url error', $filePath);
					return false;
				}
				$return = self::_thirdApp($filePath, self::$_msgStr);
				break;
		}

		if (! $return) {
			return false;
		}

		if (isset($return['message_body']) && $return['message_body']) {
			$messageBody = $return['message_body'];
			if (! in_array($messageBody->type, self::$_noThreadMsgType)) {
				Logger::debug('需要API发送消息,非5秒响应');
			} else if($messageBody->transfer == 1) {						//做转发功能把原来的消息转到客服服务上
				include_once SUISHI_PHP_PATH . '/CPU/MessageTemplate.class.php';
				$messageBody->type = "transfer_customer_service";
				$messageXML = MessageTemplate::get(self::$_message->ent_weixin, $messageBody);
				Logger::info("echo message xml:", $messageXML);
				echo $messageXML;
			}else {
				include_once SUISHI_PHP_PATH . '/CPU/MessageTemplate.class.php';
				$messageXML = MessageTemplate::get(self::$_message->ent_weixin, $messageBody);
				Logger::info("echo message xml:", $messageXML);
				echo $messageXML;
			}
		}
	}