本文整理汇总了PHP中Shineisp_Commons_Utilities::getEmailTemplate方法的典型用法代码示例。如果您正苦于以下问题:PHP Shineisp_Commons_Utilities::getEmailTemplate方法的具体用法?PHP Shineisp_Commons_Utilities::getEmailTemplate怎么用?PHP Shineisp_Commons_Utilities::getEmailTemplate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Shineisp_Commons_Utilities
的用法示例。
在下文中一共展示了Shineisp_Commons_Utilities::getEmailTemplate方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: importAction
/**
* importAcetion
* Import all templates from disks
* @return unknown_type
*/
public function importAction()
{
$controller = Zend_Controller_Front::getInstance()->getRequest()->getControllerName();
$importOK = 0;
$arrDeleted = array();
/*
* Cycle all template and all languages
*/
$arrLanguages = Languages::getActiveLanguageList();
if (is_array($arrLanguages) && !empty($arrLanguages)) {
foreach ($arrLanguages as $lang) {
if (empty($lang['locale'])) {
continue;
}
$dir = PUBLIC_PATH . "/languages/emails/" . $lang['locale'];
foreach (scandir($dir) as $file) {
if (!preg_match('/^([a-z0-9A-Z\\-\\_]+)\\.htm$/', $file, $out)) {
continue;
}
if (empty($out[1])) {
continue;
}
// Import
$outArray = Shineisp_Commons_Utilities::getEmailTemplate($out[1], $lang['language_id']);
if (!empty($outArray)) {
$importOK++;
}
}
}
}
if ($importOK > 0) {
$this->_helper->redirector('list', $controller, 'admin', array('mex' => $this->translator->translate('Template imported successfully'), 'status' => 'success'));
}
$this->_helper->redirector('list', $controller, 'admin', array('mex' => $this->translator->translate('An error occurred'), 'status' => 'success'));
}
示例2: send_queue
/**
* Send the newsletter to the queue
*/
public static function send_queue($test = FALSE, $id = NULL)
{
$queue = NewslettersHistory::get_active_queue($test, $id);
$isp = Isp::getActiveISP();
try {
// Get the template from the main email template folder
$retval = Shineisp_Commons_Utilities::getEmailTemplate('newsletter');
if (!empty($retval) && !empty($queue)) {
$contents = Newsletters::fill_content();
$subject = $retval['subject'];
$template = $retval['template'];
$subject = str_replace("[subject]", $queue[0]['Newsletters']['subject'], $subject);
$template = str_replace("[subject]", $queue[0]['Newsletters']['subject'], $template);
$template = str_replace("[body]", $queue[0]['Newsletters']['message'], $template);
foreach ($contents as $name => $content) {
$template = str_replace("[" . $name . "]", $content, $template);
}
foreach ($isp as $field => $value) {
$template = str_replace("[" . $field . "]", $value, $template);
}
$template = str_replace("[url]", "http://" . $_SERVER['HTTP_HOST'] . "/media/newsletter/", $template);
foreach ($queue as $item) {
// Send a test of the newsletter to the default isp email otherwise send an email to the queue
if ($test) {
$body = str_replace("[optout]", "#", $template);
Shineisp_Commons_Utilities::SendEmail($isp['email'], $isp['email'], null, "<!--TEST --> " . $subject, $body, true);
break;
} else {
// Create the optout link to be added in the email
$body = str_replace("[optout]", '<a href="http://' . $_SERVER['HTTP_HOST'] . "/newsletter/optout/id/" . MD5($item['NewslettersSubscribers']['email']) . '" >Unsubscribe</a>', $template);
$result = Shineisp_Commons_Utilities::SendEmail($isp['email'], $item['NewslettersSubscribers']['email'], null, $subject, $body, true);
if ($result === true) {
NewslettersHistory::set_status($item['subscriber_id'], $item['newsletter_id'], 1, "Mail Sent");
} else {
NewslettersHistory::set_status($item['subscriber_id'], $item['newsletter_id'], 0, $result['message']);
}
Newsletters::set_sending_date($item['news_id']);
}
}
}
} catch (Exception $e) {
echo $e->getMessage();
return false;
}
return true;
}
示例3: saveAll
/**
* saveAll
* Save all the data in the database
* @param array $params
* @param integer $id
*/
public static function saveAll($params, $id = "")
{
$orders = new Orders();
$translator = Shineisp_Registry::getInstance()->Zend_Translate;
$currentStatus = "";
try {
// Set the new values
if (is_numeric($id)) {
$orders = Doctrine::getTable('Orders')->find($id);
$currentStatus = $orders->status_id;
// used to detect status changes
}
if (!empty($params) && is_array($params)) {
$params['date_start'] = !empty($params['date_start']) ? $params['date_start'] : new Zend_Date();
$params['order_date'] = !empty($params['order_date']) ? $params['order_date'] : new Zend_Date();
$customer = Customers::getAllInfo($params['customer_id']);
$isp_id = $customer['isp_id'];
$orders->order_date = Shineisp_Commons_Utilities::formatDateIn($params['order_date']);
$orders->customer_id = $params['customer_id'];
$orders->isp_id = $isp_id;
$orders->status_id = $params['status_id'];
$orders->invoice_id = !empty($params['invoice_id']) ? $params['invoice_id'] : null;
$orders->note = $params['note'];
$orders->is_renewal = $params['is_renewal'] == 1 ? 1 : 0;
$orders->expiring_date = Shineisp_Commons_Utilities::formatDateIn($params['expiring_date']);
$orders->vat = $params['vat'];
$orders->total = $params['total'];
$orders->grandtotal = $params['total'] + $params['vat'];
// Save the data
$orders->save();
$id = is_numeric($id) ? $id : $orders->getIncremented();
// Status changed? Let's call set_status. This is needed to properly log all status change.
if (isset($params['status_id']) && $params['status_id'] != $currentStatus) {
self::logStatusChange($id, $params['status_id']);
}
// Add a fastlink to a order
$link_exist = Fastlinks::findlinks($id, 'orders');
$link = new Fastlinks();
if (count($link_exist) == 0) {
$link->controller = "orders";
$link->action = "edit";
$link->params = json_encode(array('id' => $id));
$link->customer_id = $params['customer_id'];
$link->sqltable = "orders";
$link->id = $id;
$link->code = Shineisp_Commons_Utilities::GenerateRandomString();
} else {
$link = Doctrine::getTable('Fastlinks')->find($link_exist[0]['fastlink_id']);
$link->code = $params['fastlink'];
}
$link->save();
// Save the message note and send an alert
if (!empty($params['message'])) {
$order = self::getAllInfo($id, null, true);
$link = Fastlinks::findlinks($id, $params['customer_id'], 'orders');
$isp = Isp::find($isp_id);
$retval = Shineisp_Commons_Utilities::getEmailTemplate('order_message');
if ($retval) {
$in_reply_to = md5($id);
// Save the message written by the ISP owner
Messages::addMessage($params['message'], null, null, $id, null, $isp_id);
// Create the array with all the placeholders
$placeholders['fullname'] = $order[0]['Customers']['firstname'] . " " . $order[0]['Customers']['lastname'];
$placeholders['url'] = "http://" . $_SERVER['HTTP_HOST'] . "/index/link/id/" . $link[0]['code'];
$placeholders['orderid'] = sprintf("%03s", $id) . " - " . Shineisp_Commons_Utilities::formatDateOut($order[0]['order_date']);
$placeholders['messagetype'] = $translator->translate('Order Details');
$placeholders['message'] = $params['message'];
Shineisp_Commons_Utilities::sendEmailTemplate(Contacts::getEmails($order[0]['Customers']['customer_id']), 'order_message', $placeholders, $in_reply_to, null, null, null, $order[0]['Customers']['language_id']);
// Change the URL for the administrator
$placeholders['url'] = "http://" . $_SERVER['HTTP_HOST'] . "/admin/login/link/id/" . $link[0]['code'] . "/keypass/" . Shineisp_Commons_Hasher::hash_string($isp->email);
// Send a message to the administrator
Shineisp_Commons_Utilities::sendEmailTemplate($isp->email, 'order_message_admin', $placeholders, $in_reply_to);
}
}
// Saving the domain
if (!empty($params['domains_selected'])) {
self::SaveDomainsDetails($params, $id);
} else {
if (!empty($params['products'])) {
$date_end = null;
// Get the product information
$product = Products::getAllInfo($params['products']);
// Manage the details of the order
if (!empty($params['billingcycle_id'])) {
$months = BillingCycle::getMonthsNumber($params['billingcycle_id']);
// Add months to the starting date
if ($months > 0) {
$params['date_end'] = Shineisp_Commons_Utilities::add_date($params['date_start'], null, $months);
}
}
// Format the dates before to save them in the database
$params['date_end'] = Shineisp_Commons_Utilities::formatDateIn($params['date_end']);
$params['date_start'] = Shineisp_Commons_Utilities::formatDateIn($params['date_start']);
if (!empty($product['Taxes']['tax_id'])) {
//.........这里部分代码省略.........
示例4: processAction
/**
* processAction
* Update the record previously selected
* @return unknown_type
*/
public function processAction()
{
$redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');
$form = $this->getForm("/profile/process");
$request = $this->getRequest();
// Check if we have a POST request
if (!$request->isPost()) {
return $this->_helper->redirector('index', 'index', 'default');
}
if ($form->isValid($request->getPost())) {
// Get the id
$id = $this->getRequest()->getParam('customer_id');
try {
// Set the new values
if (is_numeric($id)) {
$customer = Doctrine::getTable('Customers')->find($id);
$oldCustomer = $customer->toArray();
// Get the values posted
$params = $form->getValues();
$customer->company = $params['company'];
$customer->firstname = $params['firstname'];
$customer->lastname = $params['lastname'];
$customer->email = $params['email'];
$customer->birthdate = Shineisp_Commons_Utilities::formatDateIn($params['birthdate']);
if (!empty($params['password'])) {
$customer->password = MD5($params['password']);
}
$customer->birthplace = $params['birthplace'];
$customer->birthdistrict = $params['birthdistrict'];
$customer->birthcountry = $params['birthcountry'];
$customer->birthnationality = $params['birthnationality'];
$customer->vat = $params['vat'];
$customer->taxpayernumber = $params['taxpayernumber'];
$customer->type_id = !empty($params['company_type_id']) ? $params['company_type_id'] : NULL;
$customer->legalform_id = $params['legalform'];
$customer->gender = $params['gender'];
// Save the data
$customer->save();
$id = is_numeric($id) ? $id : $customer->getIncremented();
// Manage the address of the customer
$address = new Addresses();
$mainAddress = $address->findOneByUserId($id);
if ($mainAddress) {
$address = $mainAddress;
}
$address->address = $params['address'];
$address->city = $params['city'];
$address->code = $params['code'];
$address->country_id = $params['country_id'];
$address->area = $params['area'];
$address->customer_id = $id;
$address->save();
if (!empty($params['contact'])) {
$contacts = new Contacts();
$contacts->contact = $params['contact'];
$contacts->type_id = $params['contacttypes'];
$contacts->customer_id = $id;
$contacts->save();
}
// Add or Remove the customer email in the newsletter list
Customers::newsletter_subscription($id, $params['newsletter']);
$retval = Shineisp_Commons_Utilities::getEmailTemplate('profile_changed');
if ($retval) {
$subject = $retval['subject'];
$subject = str_replace("[user]", $params['firstname'] . " " . $params['lastname'], $retval['subject']);
// Alert the administrator about the changing of the customer information
$body = $retval['template'];
$body = str_replace("[user]", $params['firstname'] . " " . $params['lastname'], $body);
$body = str_replace("[old]", print_r($oldCustomer, true), $body);
$body = str_replace("[new]", print_r($customer->toArray(), true), $body);
$isp = Shineisp_Registry::get('ISP');
Shineisp_Commons_Utilities::SendEmail($isp->email, $isp->email, null, $subject, $body);
}
}
} catch (Exception $e) {
echo $e->getMessage();
die;
}
return $this->_helper->redirector('account', 'profile', 'default', array('mex' => 'The task requested has been executed successfully.', 'status' => 'success'));
} else {
$this->view->form = $form;
$this->view->title = $this->translator->translate("Profile details");
$this->view->description = $this->translator->translate("Update here your details filling the applicant form with all the information about you.");
return $this->_helper->viewRenderer('applicantform');
}
}
示例5: renewdomains
/**
* renewdomainAction
* Renew a group of domains selected
* @param $items
* @return void
*/
private function renewdomains($items)
{
$mex = "";
if (is_array($items)) {
try {
$Orderid = Orders::createOrderWithMultiProducts($items, $this->customer['customer_id']);
$isp = Shineisp_Registry::get('ISP');
$order = Orders::getAllInfo($Orderid, null, true);
$link = Fastlinks::findlinks($Orderid, $this->customer['customer_id'], 'orders');
$retval = Shineisp_Commons_Utilities::getEmailTemplate('new_order');
if ($retval) {
$subject = $retval['subject'];
$subject = str_replace("[orderid]", sprintf("%03s", $Orderid) . " - " . Shineisp_Commons_Utilities::formatDateOut($order[0]['order_date']), $subject);
$orderbody = $retval['template'];
$orderbody = str_replace("[fullname]", $order[0]['Customers']['firstname'] . " " . $order[0]['Customers']['lastname'], $orderbody);
$orderbody = str_replace("[bank]", $isp->bankname . "\nc/c:" . $isp->bankaccount . "\nIBAN: " . $isp->iban . "\nBIC: " . $isp->bic, $orderbody);
$orderbody = str_replace("[orderid]", $Orderid . "/" . date('Y'), $orderbody);
$orderbody = str_replace("[email]", $isp->email, $orderbody);
$orderbody = str_replace("[signature]", $isp->company . "\n" . $isp->email, $orderbody);
if (!empty($link[0])) {
$orderbody = str_replace("[url]", "http://" . $_SERVER['HTTP_HOST'] . "/index/link/id/" . $link[0]['code'], $orderbody);
} else {
$orderbody = str_replace("[url]", "http://" . $_SERVER['HTTP_HOST'], $orderbody);
}
if (!empty($order[0]['Customers']['email'])) {
Shineisp_Commons_Utilities::SendEmail($isp->email, $order[0]['Customers']['email'], $isp->email, $subject, $orderbody);
}
}
die(json_encode(array('reload' => '/orders/edit/id/' . $Orderid)));
} catch (Exception $e) {
die(json_encode(array('mex' => $e->getMessage())));
}
}
return false;
}
示例6: dopasswordAction
/**
* Execute the request of the admin user to change the password
*/
public function dopasswordAction()
{
$code = $this->getRequest()->getParam('id');
$user = AdminUser::checkMD5CredencialsByIspEmail($code);
$translator = Shineisp_Registry::getInstance()->Zend_Translate;
$form = new Admin_Form_PasswordForm(array('action' => '/admin/login/password', 'method' => 'post'));
if (!empty($user)) {
$isp = Isp::getActiveISP();
// Get the template from the main email template folder
$retval = Shineisp_Commons_Utilities::getEmailTemplate('isp_password_changed');
$newpassword = AdminUser::resetPassword($user['user_id']);
if (!empty($retval)) {
$subject = $retval['subject'];
$template = $retval['template'];
$subject = str_replace("[lastname]", $user['lastname'], $subject);
$template = str_replace("[lastname]", $user['lastname'], $template);
$template = str_replace("[admin_url]", "http://" . $_SERVER['HTTP_HOST'] . "/admin/", $template);
$template = str_replace("[email]", $user['email'], $template);
$template = str_replace("[password]", $newpassword, $template);
$template = str_replace("[signature]", $isp['company'], $template);
Shineisp_Commons_Utilities::SendEmail($user['email'], $user['email'], null, $subject, $template);
$this->view->message = $translator->translate('An email has been sent with the new login credentials');
}
}
$this->view->passwordform = $form;
return $this->render('password');
// re-render the login form
}
示例7: checkTickets
/**
* This batch has been created in order to remind customers
* that one or more tickets are still open.
*/
public static function checkTickets()
{
$isp = Isp::getActiveISP();
$tickets = Tickets::getWaitingReply();
// Get the template from the main email template folder
$retval = Shineisp_Commons_Utilities::getEmailTemplate('ticket_waitreply');
foreach ($tickets as $ticket) {
$customer = $ticket['Customers'];
// Get the fastlink attached
$link_exist = Fastlinks::findlinks($ticket['ticket_id'], $customer['customer_id'], 'tickets');
if (count($link_exist) > 0) {
$fastlink = $link_exist[0]['code'];
} else {
$fastlink = Fastlinks::CreateFastlink('tickets', 'edit', json_encode(array('id' => $ticket['ticket_id'])), 'tickets', $ticket['ticket_id'], $customer['customer_id']);
}
$customer_url = "http://" . $_SERVER['HTTP_HOST'] . "/index/link/id/{$fastlink}";
if ($retval) {
$subject = $retval['subject'];
$Template = nl2br($retval['template']);
$subject = str_replace("[subject]", $ticket['subject'], $subject);
$Template = str_replace("[subject]", $ticket['subject'], $Template);
$Template = str_replace("[lastname]", $customer['lastname'], $Template);
$Template = str_replace("[issue_number]", $ticket['ticket_id'], $Template);
$Template = str_replace("[date_open]", Shineisp_Commons_Utilities::formatDateOut($ticket['date_open']), $Template);
$Template = str_replace("[link]", $customer_url, $Template);
$Template = str_replace("[signature]", $isp['company'] . "<br/>" . $isp['website'], $Template);
Shineisp_Commons_Utilities::SendEmail($isp['email'], Contacts::getEmails($customer['customer_id']), null, $subject, $Template, true);
}
}
return true;
}
示例8: optIn
public static function optIn($email)
{
if (Shineisp_Commons_Utilities::isEmail($email)) {
// Check if the email is already registered
$retval = Doctrine::getTable('NewslettersSubscribers')->findOneBy('email', $email);
if (empty($retval)) {
// Save the new email address
$subscriber = new NewslettersSubscribers();
$subscriber->email = $email;
$subscriber->subscriptiondate = date('Y-m-d H:i:s');
if ($subscriber->trySave()) {
// Send the email to confirm the subscription
$retval = Shineisp_Commons_Utilities::getEmailTemplate('new_subscriber');
if ($retval) {
$subject = $retval['subject'];
$template = $retval['template'];
$isp = Isp::getActiveISP();
$template = str_replace("[signature]", $isp['company'], $template);
Shineisp_Commons_Utilities::SendEmail($isp['email'], $email, null, $subject, $template);
}
return true;
}
}
}
return false;
}