Я использую модуль уведомлений на небольшом сайте drupal 6 и хочу иметь возможность отправлять пользователю смс или сообщения электронной почты на основе значения поля адреса электронной почты пользователя.
У меня есть доступ кшлюз, так что все, что мне нужно сделать, это добавить «@» и адрес шлюза в конце номера мобильного телефона.
Итак, я хочу сказать покровителям вводить либо номер их мобильного телефона, либо адрес, но у меня есть скрипт, который оценивает, что находится в этом поле.По сути, если уже есть «@» (что означает, что они ввели свой адрес электронной почты), значение не изменяется.Но если нет «@» и значение равно 10 цифрам (номер телефона), то автоматически добавляется «@gatewayaddress».
Я могу выяснить PHP с preg_match, чтобы сделать это,но как мне получить значение поля при создании учетной записи?
Я нахожу информацию о настройке регистрации пользователя, но я думаю, что мне нужно написать простой модуль для этого, чтобы его было проще поддерживать в будущем.
Я не использую sms-инфраструктуру и модули шлюза drupal, потому что текстовые сообщения не отправляются, а пробные версии модулей по-прежнему не работают, и я испортил мой сайт.Кроме того, этот шлюз, который я использую, доступен для моего работодателя бесплатно, и, самое главное, он просто работает.
Может кто-нибудь помочь мне разобраться с этим, чтобы начать?
@ nmc спасибо.Я новичок в разработке модулей, но мне действительно нужна эта функциональность.
Вот функция для моего модуля, которая не работает.Как мне встать на правильный путь?
function emailsmsfield_user($op,&$edit,&$account,$category = NULL) {
//if creating an account or updating
if($op == 'insert' || $op == 'after_update') {
/*checking for '@' symbol. If it is missing, the value gets the gateway address
added to the end*/
if(preg_match('[^@]',$user->mail[0]['value'])) {
$user->mail[0]['value'] = $user->mail[0]['value'] . 'gateway.address.com';
}
}
}