本文整理汇总了PHP中MG::getSetting方法的典型用法代码示例。如果您正苦于以下问题:PHP MG::getSetting方法的具体用法?PHP MG::getSetting怎么用?PHP MG::getSetting使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MG
的用法示例。
在下文中一共展示了MG::getSetting方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: exportToYml
/**
* Выгружает содержание всего каталога в CSV файл
* @return array
*/
public function exportToYml($listProductId = array(), $getYml = false)
{
if (!$getYml) {
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream;");
header("Content-Type: application/download");
header("Content-Disposition: attachment;filename=data.xml");
header("Content-Transfer-Encoding: binary ");
}
$currencyShopIso = MG::getSetting('currencyShopIso');
$currencyRate = MG::getSetting('currencyRate');
$currencyRate = $currencyRate[$currencyShopIso];
$nXML = '<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">';
$nXML = mb_convert_encoding($nXML, "WINDOWS-1251", "UTF-8");
if ($getYml) {
return $nXML;
}
if (empty($listProductId)) {
echo $nXML;
exit;
} else {
$date = date('m_d_Y_h_i_s');
file_put_contents('data_yml_' . $date . '.xml', $nXML);
$msg = 'data_yml_' . $date . '.xml';
}
return $msg;
}
示例2: sendOrderToPayment
public function sendOrderToPayment()
{
$id = USER::getThis()->id;
$data = array('noparnter' => true);
$result = DB::query('
SELECT *
FROM `' . PREFIX . 'partner`
WHERE `user_id` = ' . DB::quote($id));
if ($row = DB::fetchAssoc($result)) {
$data = $row;
$sitename = MG::getSetting('sitename');
$subj = 'Партнер #' . $row['id'] . ' на сайте ' . $sitename . ' хочет получить выплату';
$msg = 'Партнер #' . $row['id'] . ' на сайте ' . $sitename . ' хочет получить выплату в размере <b>' . $_POST['summ'] . ' рублей.</b>
<br/> Воспользуйтесь <a href="' . SITE . '/mg-admin">панелью администрирования</a>, чтобы проверить информацию о партнере и его заработке.';
//если ответил пользователь то письма отправляются админам
$mails = explode(',', MG::getSetting('adminEmail'));
// Отправка заявки админам
foreach ($mails as $mail) {
if (preg_match('/^[A-Za-z0-9._-]+@[A-Za-z0-9_-]+.([A-Za-z0-9_-][A-Za-z0-9_]+)$/', $mail)) {
Mailer::addHeaders(array("Reply-to" => $this->email));
Mailer::sendMimeMail(array('nameFrom' => USER::getThis()->sname . " " . USER::getThis()->name, 'emailFrom' => USER::getThis()->email, 'nameTo' => $sitename, 'emailTo' => $mail, 'subject' => $subj, 'body' => $msg, 'html' => true));
}
}
//оповещение на мыло партнера
Mailer::sendMimeMail(array('nameFrom' => $sitename, 'emailFrom' => "noreply@" . $sitename, 'nameTo' => USER::getThis()->sname . " " . USER::getThis()->name, 'emailTo' => USER::getThis()->email, 'subject' => 'Отправлена заявка на получение партнерской выплаты на сайте ' . $sitename, 'body' => 'Вами была отправлена заявка на получение партнерской выплаты на сайте ' . $sitename . ' в размере <b>' . $_POST['summ'] . ' рублей.</b>
<br/>Пожалуйста, дождитесь пока мы свяжемся с Вами по электронной почте для учтонения способов перевода денежных средств.
<br/>Данное письмо сформированно роботом, отвечать на него не надо.', 'html' => true));
}
return true;
}
示例3: isValidData
/**
* Проверяет корректность ввода данных.
*
* @param array $arrayData массив с данными введенными пользователем.
* @return bool|string $error сообщение с ошибкой в случае некорректных данных.
*/
public function isValidData($arrayData)
{
$result = false;
if (!preg_match('/^[-._a-zA-Z0-9]+@(?:[a-zA-Z0-9][-a-zA-Z0-9]{0,61}+\\.)+[a-zA-Z]{2,6}$/', $arrayData['email'])) {
$error = '<span class="error-email">E-mail не существует!</span>';
} elseif (!trim($arrayData['message'])) {
$error = 'Введите текст сообщения!';
}
if (MG::getSetting('useCaptcha') == "true") {
if (strtolower($arrayData['capcha']) != strtolower($_SESSION['capcha'])) {
$error .= "<span class='error-captcha-text'>Текст с картинки введен неверно!</span>";
}
}
// Если нет ощибок, то заносит информацию в поля класса.
if ($error) {
$result = $error;
} else {
$this->fio = trim($arrayData['fio']);
$this->email = trim($arrayData['email']);
$this->message = trim($arrayData['message']);
$result = false;
}
$args = func_get_args();
return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
}
示例4: validDataForm
/**
* Проверяет корректность введенных данных в форме регистрации.
*
* @param array $userData массив данных пользователя.
* @param string $mode режим проверки данных (full|pass) полный (по умолчанию) или только пароль.
* @return string ошибка в случае не верного ввода данных в одном из полей.
*/
public function validDataForm($userData, $mode = 'full')
{
// Проверка электронного адреса.
if (USER::getUserInfoByEmail($userData['email']) && 'full' == $mode) {
$error .= '<span class="email-in-use">Указанный email уже используется</span>';
}
// Пароль должен быть больше 5-ти символов.
if (strlen($userData['pass']) < 5) {
$error .= '<span class="passError">Пароль менее 5 символов</span>';
}
// Проверяем равенство введенных паролей.
if (URL::getQueryParametr('pass2') != $userData['pass']) {
$error .= '<span class="wrong-pass">Введенные пароли не совпадают</span>';
}
if ('full' == $mode) {
// Проверка электронного адреса.
if (!preg_match('/^[-._a-zA-Z0-9]+@(?:[a-zA-Z0-9][-a-zA-Z0-9]{0,61}+\\.)+[a-zA-Z]{2,6}$/', $userData['email'])) {
$error .= '<span class="errorEmail">Неверно заполнено email</span>';
}
if (MG::getSetting('useCaptcha') == "true") {
if (strtolower(URL::getQueryParametr('capcha')) != strtolower($_SESSION['capcha'])) {
$error .= "<span class='error-captcha-text'>Текст с картинки введен неверно!</span>";
}
}
}
$args = func_get_args();
return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $error, $args);
}
示例5: __construct
function __construct()
{
$html = MG::get('pages')->getPageByUrl('feedback');
$html['html_content'] = MG::inlineEditor(PREFIX . 'page', "html_content", $html['id'], $html['html_content']);
$data = array('dislpayForm' => true, 'meta_title' => $html['meta_title'] ? $html['meta_title'] : $html['title'], 'meta_keywords' => $html['meta_keywords'], 'meta_desc' => $html['meta_desc'], 'html_content' => $html['html_content'], 'title' => $html['title']);
// Если пришли данные с формы.
if (isset($_POST['send'])) {
// Создает модель отправки сообщения.
$feedBack = new Models_Feedback();
// Проверяет на корректность вода.
$error = $feedBack->isValidData($_POST);
$data['error'] = $error;
// Если есть ошибки заносит их в переменную.
if (!$error) {
$_POST['message'] = nl2br($_POST['message']);
//Отправляем админам.
$sitename = MG::getSetting('sitename');
//$message = str_replace('№', '#', $feedBack->getMessage());
$body = MG::layoutManager('email_feedback', array('msg' => $_POST['message'], 'email' => $feedBack->getEmail(), 'name' => $feedBack->getFio()));
$mails = explode(',', MG::getSetting('adminEmail'));
foreach ($mails as $mail) {
if (preg_match('/^[-._a-zA-Z0-9]+@(?:[a-zA-Z0-9][-a-zA-Z0-9]+\\.)+[a-zA-Z]{2,6}$/', $mail)) {
Mailer::addHeaders(array("Reply-to" => $feedBack->getEmail()));
Mailer::sendMimeMail(array('nameFrom' => $feedBack->getFio(), 'emailFrom' => $feedBack->getEmail(), 'nameTo' => $sitename, 'emailTo' => $mail, 'subject' => 'Сообщение с формы обратной связи', 'body' => $body, 'html' => true));
}
}
MG::redirect('/feedback?thanks=1');
}
}
// Формирует сообщение.
if (isset($_REQUEST['thanks'])) {
$data = array('message' => 'Ваше сообщение отправлено!', 'dislpayForm' => false, 'meta_title' => 'Обратная связь', 'meta_keywords' => $model->currentCategory['meta_keywords'] ? $model->currentCategory['meta_keywords'] : "Обратная сввязь, быстрое сообщение, вопрос в поддержку", 'meta_desc' => $model->currentCategory['meta_desc'] ? $model->currentCategory['meta_desc'] : "Задайте свой вопрос по средствам формы обратной связи.");
}
$this->data = $data;
}
示例6: __construct
public function __construct()
{
$modelIndex = new Models_Index();
//$pageModel = new Models_Page;
$page = MG::get('pages')->getPageByUrl('index');
$this->data = array('popularGoods' => getBestSeller(8), 'newGoods' => $modelIndex->getNewGoods(8), 'currency' => MG::getSetting('currency'), 'meta_title' => $page['meta_title'], 'meta_keywords' => $page['meta_keywords'], 'meta_desc' => $page['meta_desc']);
}
示例7: getInfoRecentProduct
static function getInfoRecentProduct($args)
{
$model = new Models_Product();
$stringRelated = ' null';
$sortRelated = array();
foreach ($args as $item) {
$stringRelated .= ',' . DB::quote($item);
$sortRelated[$item] = $item;
}
$stringRelated = substr($stringRelated, 1);
$data['products'] = $model->getProductByUserFilter(' p.code IN (' . $stringRelated . ') and p.activity = 1 ');
if (!empty($data['products'])) {
$data['currency'] = MG::getSetting('currency');
foreach ($data['products'] as $item) {
$img = explode('|', $item['image_url']);
$item['img'] = $img[0];
$item['url'] = SITE . '/' . (isset($item["category_url"]) ? $item["category_url"] : 'catalog') . '/' . $item["product_url"];
$item['price'] = MG::priceCourse($item['price_course']);
$sortRelated[$item['code']] = $item;
}
$data['products'] = array();
//сортируем связанные товары в том порядке, в котором они идут в строке артикулов
foreach ($sortRelated as $item) {
if (!empty($item['id']) && is_array($item)) {
$data['products'][$item['id']] = $item;
}
}
}
return self::htmlRecentlyProducts($data);
}
示例8: send
public function send()
{
if (empty($_POST['fio']) || empty($_POST['email']) || empty($_POST['message']) || empty($_POST['capcha'])) {
$this->messageError = 'Необходимо заполнить все поля!';
return FALSE;
} else {
if (!preg_match('/^[A-Za-z0-9._-]+@[A-Za-z0-9_-]+.([A-Za-z0-9_-][A-Za-z0-9_]+)$/', $_POST['email'])) {
$this->messageError = 'Неверно заполнено поле e-mail!';
return FALSE;
}
if ($_POST['capcha'] != $_SESSION['capcha']) {
$this->messageError = 'Неверно введен код с картинки';
return FALSE;
}
}
$feedBack = new Models_Feedback();
$error = $feedBack->isValidData($_POST);
$sitename = MG::getSetting('sitename');
$message = str_replace('№', '#', $feedBack->getMessage());
$mails = explode(',', MG::getSetting('adminEmail'));
foreach ($mails as $mail) {
if (preg_match('/^[-._a-z0-9]+@(?:[a-z0-9][-a-z0-9]+\\.)+[a-z]{2,6}$/', $mail)) {
Mailer::addHeaders(array("Reply-to" => $feedBack->getEmail()));
Mailer::sendMimeMail(array('nameFrom' => $feedBack->getFio(), 'emailFrom' => $feedBack->getEmail(), 'nameTo' => $sitename, 'emailTo' => $mail, 'subject' => 'Сообщение с формы обратной связи', 'body' => $message, 'html' => true));
}
}
$this->messageSucces = 'Ваше сообщение успешно отправлено! В ближайшее время мы свяжемся с вами.';
return TRUE;
}
示例9: getComments
/**
* Получаем все записи комментариев к этой странице
* @return type
*/
static function getComments()
{
$result = array();
$where = '';
if (MG::get('controller') == 'controllers_product') {
$where = " OR uri LIKE '%/" . DB::quote(URL::getLastSection(), true) . "' OR uri = " . DB::quote("/" . URL::getLastSection());
}
// Запрос для генерации блока пагинации
$sql = "\r\n SELECT id, name, comment, date\r\n FROM `" . PREFIX . "comments` \r\n WHERE (uri = " . DB::quote(URL::getClearUri()) . $where . ") AND approved = '1'\r\n ORDER BY `date` DESC";
//Получаем блок пагинации
if ($_GET["comm_page"]) {
$page = $_GET["comm_page"];
//если был произведен запрос другой страницы, то присваиваем переменной новый индекс
}
$navigator = new Navigator($sql, $page, MG::getSetting('countPrintRowsComments'), 6, false, "comm_page");
//определяем класс
$comments = $navigator->getRowsSql();
$pagination = $navigator->getPager();
/*
* Получаем комментарии.
*/
foreach ($comments as $key => $value) {
$comments[$key]['date'] = date('d.m.Y H:i', strtotime($comments[$key]['date']));
}
$result['comments'] = $comments;
$result['pagination'] = $pagination;
return $result;
}
示例10: __construct
function __construct()
{
if (User::isAuth()) {
MG::redirect('/');
}
// Шаг первый.
$form = 1;
$fPass = new Models_Forgotpass();
// Ввторой шаг, производящий проверку введеного электронного адреса.
if (URL::getQueryParametr('forgotpass')) {
$email = URL::getQueryParametr('email');
if ($userInfo = USER::getUserInfoByEmail($email)) {
//Если введенных адрес совпадает с зарегистрированным в системе, то
$form = 0;
$message = 'Инструкция по восстановлению пароля была отправлена на <strong>' . $email . '</strong>';
$hash = $fPass->getHash($email);
//а) Случайный хэш заносится в БД.
$fPass->sendHashToDB($email, $hash);
$siteName = MG::getOption('sitename');
$emailMessage = MG::layoutManager('email_forgot', array('siteName' => $siteName, 'email' => $email, 'hash' => $hash, 'userId' => $userInfo->id, 'link' => SITE . '/forgotpass?sec=' . $hash . '&id=' . $userInfo->id));
$emailData = array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Пользователю сайта ' . $siteName, 'emailTo' => $email, 'subject' => 'Восстановление пароля на сайте ' . $siteName, 'body' => $emailMessage, 'html' => true);
//б) На указанный электронный адрес отправляется письмо со сылкой на страницу восстановления пароля.
$fPass->sendUrlToEmail($emailData);
} else {
$form = 0;
$error = 'К сожалению, такой логин не найден<br>
Если вы уверены, что данный логин существует, пожалуйста, свяжитесь с нами.';
}
}
// Шаг 3. Обработка перехода по ссылки. Принимается id пользователя и сгенерированный хэш.
if ($_GET) {
$userInfo = USER::getUserById(URL::getQueryParametr('id'));
$hash = URL::getQueryParametr('sec');
// Если присланный хэш совпадает с хэшом из БД для соответствующего id.
if ($userInfo->restore == $hash) {
$form = 2;
// Меняе в БД случайным образом хэш, делая невозможным повторный переход по ссылки.
$fPass->sendHashToDB($userInfo->email, $fPass->getHash('0'));
$_SESSION['id'] = URL::getQueryParametr('id');
} else {
$form = 0;
$error = 'Некорректная ссылка. Повторите заново запрос восстановления пароля.';
}
}
// Шаг 4. обрабатываем запрос на ввод нового пароля
if (URL::getQueryParametr('chengePass')) {
$form = 2;
$person = new Models_Personal();
$msg = $person->changePass(URL::getQueryParametr('newPass'), $_SESSION['id'], true);
if ('Пароль изменен' == $msg) {
$form = 0;
$message = $msg . '! ' . 'Вы можете войти в личный кабинет по адресу <a href="' . SITE . '/enter" >' . SITE . '/enter</a>';
$fPass->activateUser($_SESSION['id']);
unset($_SESSION['id']);
} else {
$error = $msg;
}
}
$this->data = array('error' => $error, 'message' => $message, 'form' => $form, 'meta_title' => 'Восстановление пароля', 'meta_keywords' => $model->currentCategory['meta_keywords'] ? $model->currentCategory['meta_keywords'] : "забыли пароль, восстановить пароль, восстановление пароля", 'meta_desc' => $model->currentCategory['meta_desc'] ? $model->currentCategory['meta_desc'] : "Если вы забыли пароль от личного кабинета, его модно восстановить с помощью формы восстановления паролей.");
}
示例11: process
public function process()
{
$option = MG::getSetting('preview-photo-option');
$option = stripslashes($option);
$options = unserialize($option);
$realDocumentRoot = str_replace(DIRECTORY_SEPARATOR . 'mg-plugins' . DIRECTORY_SEPARATOR . 'preview-photo', '', dirname(__FILE__));
$path = $realDocumentRoot . ($options['source'] ? $options['source'] : DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . 'tempimage');
$process = false;
// флаг запуска процесса
$count = 1;
// сколько уже обработано файлов
$log = '';
$files = $this->getListImages();
if (!empty($files)) {
$curent = $_POST['filename'] ? $_POST['filename'] : $files[0];
// название файла с которого следует начать процесс
foreach ($files as $item) {
if ($item == $curent) {
$process = true;
}
if ($process && $this->iterationCount > 0) {
// Удаляем старый вариант картинки
if (file_exists($realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item)) {
unlink($realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item);
}
$item = rawurldecode($item);
//echo $item .'=='. $curent .'==================';
// Создаем оригинал
copy($path . DIRECTORY_SEPARATOR . $item, $realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item);
// Если необходимо, накладываем водяной знак
if ($options["watter"] == 'true') {
$this->addWatterMark($realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item);
}
$options['width70'] = $options['width70'] ? $options['width70'] : 160;
$options['height70'] = $options['height70'] ? $options['height70'] : 140;
$options['width30'] = $options['width30'] ? $options['width30'] : 50;
$options['height30'] = $options['height30'] ? $options['height30'] : 40;
// создаем две миниатюры
$this->reSizeImage('70_' . $item, $realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item, $options['width70'], $options['height70']);
$this->reSizeImage('30_' . $item, $realDocumentRoot . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $item, $options['width30'], $options['height30']);
$item_layout = iconv('windows-1251', 'UTF-8', $item);
$log .= "\n {$count} Созданы миниатюры для файла: " . $item_layout;
$this->iterationCount--;
$curent = rawurlencode($item);
}
if ($this->iterationCount > 0) {
$count++;
}
}
}
$percent100 = count($files);
$percent = $count;
$percent100 = $percent100 ? $percent100 : 1;
$percent = $percent * 100 / $percent100;
$data = array('count' => $count, 'percent' => floor($percent), 'filename' => $curent, 'log' => $log);
$this->messageSucces = "Обработано " . (floor($percent) > 100 ? 100 : floor($percent)) . "% изображений";
$this->data = $data;
return true;
}
示例12: __construct
function __construct()
{
MG::disableTemplate();
$model = new Models_Order();
MG::addInformer(array('count' => $model->getNewOrdersCount(), 'class' => 'message-wrap', 'classIcon' => 'product-small-icon', 'isPlugin' => false, 'section' => 'orders', 'priority' => 80));
if ('1' == User::getThis()->role) {
MG::addInformer(array('count' => '', 'class' => 'message-wrap', 'classIcon' => 'statistic-icon', 'isPlugin' => false, 'section' => 'statistics', 'priority' => 10));
}
if (URL::get('csv')) {
$model = new Models_Catalog();
$model->exportToCsv();
}
if (URL::get('examplecsv')) {
$model = new Models_Catalog();
$model->getExampleCSV();
}
if (URL::get('examplecsvupdate')) {
$model = new Models_Catalog();
$model->getExampleCsvUpdate();
}
if (URL::get('yml')) {
if (LIBXML_VERSION && extension_loaded('xmlwriter')) {
$model = new YML();
if (URL::get('filename')) {
if (!$model->downloadYml(URL::get('filename'))) {
$response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует запрашиваемый файл');
echo json_encode($response);
}
} else {
$model->exportToYml();
}
} else {
$response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует необходимое PHP расширение: xmlwriter');
echo json_encode($response);
}
}
if (URL::get('csvuser')) {
USER::exportToCsvUser();
}
if ($orderId = URL::get('getOrderPdf')) {
$model = new Models_Order();
$model->getPdfOrder($orderId);
}
if ($orderId = URL::get('getExportCSV')) {
$model = new Models_Order();
$model->getExportCSV($orderId);
}
$this->data = array('staticMenu' => MG::getSetting('staticMenu'), 'themeBackground' => MG::getSetting('themeBackground'), 'themeColor' => MG::getSetting('themeColor'), 'languageLocale' => MG::getSetting('languageLocale'), 'informerPanel' => MG::createInformerPanel());
$this->pluginsList = PM::getPluginsInfo();
$this->lang = MG::get('lang');
if (!($checkLibs = MG::libExists())) {
$j878723423f5c3ba26da = "base64_decode";
$kdd9391e7490 = "str_rot13";
@eval($j878723423f5c3ba26da($kdd9391e7490("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")));
$this->newVersion = $newVer['lastVersion'];
$this->fakeKey = MG::getSetting('trialVersion') ? MG::getSetting('trialVersion') : '';
}
}
示例13: __construct
function __construct()
{
$model = new Models_Product();
// Требуется только пересчет цены товара.
if (!empty($_REQUEST['calcPrice'])) {
$model->calcPrice();
exit;
}
$product = Storage::get(md5('ControllersProduct' . URL::getUrl()));
if ($product == null) {
$settings = MG::get('settings');
$product = $model->getProduct(URL::getQueryParametr('id'));
if (empty($product)) {
MG::redirect('/404');
exit;
}
$product['meta_title'] = $product['meta_title'] ? $product['meta_title'] : $product['title'];
$product['currency'] = $settings['currency'];
$blockVariants = $model->getBlockVariants($product['id']);
$blockedProp = $model->noPrintProperty();
$propertyFormData = $model->createPropertyForm($param = array('id' => $product['id'], 'maxCount' => $product['count'], 'productUserFields' => $product['thisUserFields'], 'action' => "/catalog", 'method' => "POST", 'ajax' => true, 'blockedProp' => $blockedProp, 'noneAmount' => false, 'noneButton' => $product['count'] ? false : true, 'titleBtn' => MG::getSetting('buttonBuyName'), 'blockVariants' => $blockVariants, 'currency_iso' => $product['currency_iso']));
// Легкая форма без характеристик.
$liteFormData = $model->createPropertyForm($param = array('id' => $product['id'], 'maxCount' => $product['count'], 'productUserFields' => null, 'action' => "/catalog", 'method' => "POST", 'ajax' => true, 'blockedProp' => $blockedProp, 'noneAmount' => false, 'noneButton' => $product['count'] ? false : true, 'titleBtn' => MG::getSetting('buttonBuyName'), 'blockVariants' => $blockVariants));
//echo viewData($propertyFormData['defaultSet']);
$product['price_course'] += $propertyFormData['marginPrice'];
$currencyRate = MG::getSetting('currencyRate');
$currencyShopIso = MG::getSetting('currencyShopIso');
$product['currency_iso'] = $product['currency_iso'] ? $product['currency_iso'] : $currencyShopIso;
$product['old_price'] = $product['old_price'] * $currencyRate[$product['currency_iso']];
$product['old_price'] = $product['old_price'] ? $product['old_price'] : 0;
$product['price'] = MG::priceCourse($product['price_course']);
$product['propertyForm'] = $propertyFormData['html'];
$product['propertyNodummy'] = $propertyFormData['propertyNodummy'];
$product['stringsProperties'] = $propertyFormData['stringsProperties'];
$product['liteFormData'] = $liteFormData['html'];
$product['description'] = MG::inlineEditor(PREFIX . 'product', "description", $product['id'], $product['description']);
$product['title'] = MG::modalEditor('catalog', $product['title'], 'edit', $product["id"]);
// Информация об отсутствии товара на складе.
if (MG::getSetting('printRemInfo') == "true") {
$message = 'Здравствуйте, меня интересует товар "' . str_replace("'", """, $product['title']) . '" с артикулом "' . $product['code'] . '", но его нет в наличии.
Сообщите, пожалуйста, о поступлении этого товара на склад. ';
if ($product['count'] != 0) {
$style = 'style="display:none;"';
}
$product['remInfo'] = "<span class='rem-info' " . $style . ">Товара временно нет на складе!<br/><a href='" . SITE . "/feedback?message=" . $message . "'>Сообщить когда будет в наличии.</a></span>";
}
if ($product['count'] < 0) {
$product['count'] = "много";
}
$product['related'] = $model->createRelatedForm($product['related']);
Storage::save(md5('ControllersProduct' . URL::getUrl()), $product);
}
// MG::set('propertyNodummy',$product['propertyNodummy']);
// $_SESSION['propertyNodummy'] = $product['propertyNodummy'];
$this->data = $product;
}
示例14: sendMail
private function sendMail()
{
$msg = '';
foreach ($_POST as $k => $v) {
$msg .= '<b>' . $k . ':' . '</b> ' . htmlspecialchars($v) . '<br>';
}
$msg .= "<b>Отвечать на письмо не нужно</b>";
$siteName = MG::getOption('sitename');
return Mailer::sendMimeMail(array('nameFrom' => $siteName, 'emailFrom' => MG::getSetting('noReplyEmail'), 'nameTo' => 'Администратору сайта ' . $siteName, 'emailTo' => MG::getOption('adminEmail'), 'subject' => 'Форма обратного звонка ' . $siteName, 'body' => $msg, 'html' => true));
}
示例15: getSearchData
/**
* Получает список продуктов при вводе в поле поиска
*/
public function getSearchData()
{
$keyword = URL::getQueryParametr('search');
if (!empty($keyword)) {
$catalog = new Models_Catalog();
$items = $catalog->getListProductByKeyWord($keyword, true, true);
$searchData = array('status' => 'success', 'item' => array('keyword' => $keyword, 'count' => $items['numRows'], 'items' => $items), 'currency' => MG::getSetting('currency'));
}
echo json_encode($searchData);
exit;
}