diff --git a/modules/ncenterlite/ncenterlite.controller.php b/modules/ncenterlite/ncenterlite.controller.php index 1b8641368..9ec99dc80 100644 --- a/modules/ncenterlite/ncenterlite.controller.php +++ b/modules/ncenterlite/ncenterlite.controller.php @@ -1076,6 +1076,8 @@ class ncenterliteController extends ncenterlite return $output; } + $this->sendSmsMessage($args); + if($output->toBool()) { $trigger_notify = ModuleHandler::triggerCall('ncenterlite._insertNotify', 'after', $args); @@ -1208,4 +1210,35 @@ class ncenterliteController extends ncenterlite return array_values($members); } + + function sendSmsMessage($args) + { + $logged_info = Context::get('logged_info'); + if($logged_info->member_srl == $args->member_srl) + { + return false; + } + + $config = getModel('ncenterlite')->getConfig(); + + $content = getModel('ncenterlite')->getNotificationText($args); + $content = preg_replace('/<\/?(strong|)[^>]*>/', '', $content); + + $sms = ncenterliteModel::getSmsHandler(); + if($sms === false) + { + return false; + } + + $member_info = getModel('member')->getMemberInfoByMemberSrl($args->member_srl); + if($config->variable_name) + { + $phone_number = $member_info->{$config->variable_name}[0].$member_info->{$config->variable_name}[1].$member_info->{$config->variable_name}[2]; + } + + $sms->addTo($phone_number); + $sms->setContent($content); + $output = $sms->send(); + return $output; + } } diff --git a/modules/ncenterlite/ncenterlite.model.php b/modules/ncenterlite/ncenterlite.model.php index 6d1f155da..7c09a67f5 100644 --- a/modules/ncenterlite/ncenterlite.model.php +++ b/modules/ncenterlite/ncenterlite.model.php @@ -38,6 +38,7 @@ class ncenterliteModel extends ncenterlite if(!$config->skin) $config->skin = 'default'; if(!$config->colorset) $config->colorset = 'black'; if(!$config->zindex) $config->zindex = '9999'; + if(!$config->use_sms) $config->use_sms = 'N'; self::$config = $config; } @@ -502,6 +503,7 @@ class ncenterliteModel extends ncenterlite if($config->use_sms != 'Y') { $oSmsHandler = false; + return $oSmsHandler; } else { @@ -510,6 +512,23 @@ class ncenterliteModel extends ncenterlite if($oSmsHandler::getDefaultDriver()->getName() === 'Dummy') { $oSmsHandler = false; + return $oSmsHandler; + } + + $variable_name = array(); + $member_config = getModel('member')->getMemberConfig(); + foreach($member_config->signupForm as $value) + { + if($value->type == 'tel') + { + $variable_name[] = $value->name; + } + } + + if(empty($variable_name)) + { + $oSmsHandler = false; + return $oSmsHandler; } } }