[EVO] eForm проверка заполненности одного из полей

Часто в форме встречаются поля для заполнения когда нужно заполнить 1 из полей

к примеру контактные данные, email или телефон.
в стандартном функционале eForm такой валидации данных нет
но это не сложно исправить.

Перед вызовом eForm вставляем снипет:
<?php
function isEmailOrPhone(&$fields, &$vMsg, &$rMsg){
  if (trim($fields['phone']) == '' && trim($fields['email']) == '') {
    $vMsg[] = 'Введите или телефон или email!';
    return true;
  } else {
    return true;
  }
}
?>


А к вызову eForm дописываем:
&eFormOnValidate=`isEmailOrPhone`

Вуаля теперь достаточно заполнить 1 из полей что б пройти валидацию

p.s. в функции идет проверка только на заполненность полей. по хорошему нужно дописать еще пару строк кода на проверку правильной заполненности

[REVO] веб сервер Cherokee

Давно я наблюдаю за веб сервером Cherokee, и вот решил зделать тест.
В рекомендациях MODx упомянается веб сервер Cherokee.
Я создал тестовый акаунт VPS — (CPU:1000 MHz, RAM: 2048 MB, RAID-10, Processors:2.67GHz, 2 Logical Processors, 6 Cores)
После 3 дней мучения изучения (проблемы с сетью), я в несколько шагов установил веб сервер Cherokee с PHP5, FastCGI и потдержкой MySQL.
Читать дальше →

[REVO] Как работать с MODX Api

Как подключиться к MODX снаружи для работы с его Api.
источник: bezumkin.ru/blog/2012/06/26/modx_api/

Так вот, все проще простого:

// Подключаем
define('MODX_API_MODE', true);
require 'index.php';

// Включаем обработку ошибок
$modx->getService('error','error.modError');
$modx->setLogLevel(modX::LOG_LEVEL_INFO);
$modx->setLogTarget(XPDO_CLI_MODE ? 'ECHO' : 'HTML');


Проверяем простую работу с Api:

if ($res = $modx->getObject('modResource', 1)) {
    echo '<pre>';
    print_r($res->toArray());
    echo '</pre>';
}


А теперь посложнее:
$response = $modx->runProcessor('resource/get', array('id' => 1));
if (!$response->isError()) {
    echo '<pre>';
    print_r($response->response['object']);
    echo '</pre>';
}
else {
    $modx->log(modX::LOG_LEVEL_ERROR, $response->getMessage());
}


Таким образом вам доступны все методы, словари, процессоры и прочее.

[EVO] Исходник (загатовка) для модуля MODx

Это болванка пустого модуля для MODx. Особенности:

  • Использование api modx
  • Обращение к объекту $modx как атрибуту класса ModuleModel
  • Разделение на модель, контроллер и представление
  • Вывод ошибок и сообщений
  • Сохранение конфига модуля в фаил (config.php) и возможность редактировать параметры через админ-панель


GitHub Источник

[EVO] Несколько интересных решений для MODx

Иногда полезно погуглить можно найти очень много интересных решений порой встречается что делал что то с нуля а потом находишь что это уже делали до тебя раньше этак на пол года)


Читать дальше →

[REVO] QapTcha Snippets v2.5

Попросили, сделал…
Обновил QapTcha Snippets v2.5 Revo!!!
— Добавил проверку на сесию iQaptcha которую при помощи ползунка мы открыли.
— Убрал в &validate проверку на пустоту (т.к. &preHooks=`validQaptcha` мы проверяем сесию и пустоту)
Читать дальше →

Читаем данные из URL при помощи JavaScript

Часто перед нами возникает задача извлечения данных в JavaScript из передаваемых GET параметром данных.

Нашёл интересную статью, решил поделиться.
Перевод статьи (немного поправлен).
Читать дальше →

[REVO] Видеоурок по созданию интернет-магазина на MODX Revolution + Shopkeeper. Часть 1 (Andchir)

Первый из серии видеоуроков по созданию интернет-магазина на MODX Revolution + Shopkeeper от Andchir.

Пока видео без голосового сопровождения, но думаю и так будет всё понятно.
Из первой части вы узнаете как:
— Установить и настроить MODX Revolution;
— Создать шаблоны сайта;
— Создать меню;
— Создать и настроить контекст для каталога товаров;
— Установить Shopkeeper.

Читать дальше →