Ignore:
Timestamp:
Nov 20, 2014 4:06:59 PM (10 years ago)
Author:
dungnv
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pro-violet-viettel/sourcecode/application/modules/services/models/services_model.php

    r579 r583  
    3737                _SBG_MO_REGISTER                        => array('pattern' => '/^(SBG[[:blank:]])(DK)$/'),
    3838                _SBG_MO_REGISTER_FOR            => array('pattern' => '/^(SBG[[:blank:]])(DK)([[:blank:]][0-9]{10,11})$/'),
    39                 _SBG_MO_PHONENUM_CHANGE         => array('pattern' => '/^(SBG[[:blank:]])(DDT)([[:blank:]][0-9]{10,11})([[:blank:]][a-zA-Z0-9]{4,16})$/'),
     39                _SBG_MO_PHONENUM_CHANGE         => array('pattern' => '/^(SBG[[:blank:]])(DDT)([[:blank:]][0-9]{10,11})([[:blank:]][a-zA-Z0-9~!@#$%^&*]{4,16})$/'),
    4040                _SBG_MO_PASSWORD_RECOVERY       => array('pattern' => '/^(SBG[[:blank:]])(MK)$/'),
    4141                _SBG_MO_PASSWORD_CHANGE         => array('pattern' => '/^(SBG[[:blank:]])(MK)([[:blank:]][a-zA-Z0-9~!@#$%^&*]{4,16})$/'),
     
    4646        );
    4747       
     48        private $_arySmsService = array(
     49                        'DK' => _SBG_MO_REGISTER_FOR,
     50                        'DDT' => _SBG_MO_PHONENUM_CHANGE,
     51                        'NAP' => _SBG_MO_PAY_TO_ACCOUNT_FOR,
     52        );     
     53       
    4854        public function __construct(){
    4955                parent::__construct();
     
    6167                        if ((bool)$result) break;
    6268                }
     69               
     70                $key = (bool)$result ? $key:_SBG_MO_SYNTAX_ERR;
    6371               
    6472                if (count ($aryMatched) > 0) {
     
    6977                }
    7078       
    71                 $key = (bool)$result ? $key:_SBG_MO_SYNTAX_ERR;
     79                if ((bool)$result == FALSE) {
     80                        $aryContent = array();
     81                        foreach(explode(' ',strtoupper($message)) as $k => $val) {
     82                                $aryContent[] = $val;
     83                        }
     84                        $key = $this->_arySmsService[$aryContent[1]];
     85                        $result = 1;
     86                }
     87               
    7288                if ($key == _SBG_MO_PASSWORD_CHANGE || $key == _SBG_MO_PHONENUM_CHANGE) {
    7389                        $index = $key == _SBG_MO_PASSWORD_CHANGE ? 2 : 3;
     
    98114                        case _SBG_MO_REGISTER:
    99115                        case _SBG_MO_REGISTER_FOR:
     116                                if ($case == _SBG_MO_REGISTER_FOR) {
     117                                        if (!preg_match('/^([0-9]{10,11}$)$/', $aryContents[2])) {
     118                                                $smsReturn = '0|So dien thoai khach hang khong hop le';
     119                                                break;
     120                                        }
     121                                }
     122                               
    100123                                $userName = isset($aryContents[2]) ? $this->formatPhoneNumber($aryContents[2]) : $sentNumber; 
    101124                                $collaborator = isset($aryContents[2]) ? $sentNumber:null;
     
    113136                                break;
    114137                        case _SBG_MO_PHONENUM_CHANGE:
     138                               
     139                                if (!preg_match('/^([0-9]{10,11}$)$/', $aryContents[2])) {
     140                                        $smsReturn = '0|So dien thoai khach hang khong hop le';
     141                                        break;
     142                                }
     143                               
    115144                                $oldPhoneNumber = $this->formatPhoneNumber($aryContents[2]);
    116145                                $password = $aryContents[3];
    117146                                $smsReturn = $this->objUserModel->changeProfile($sentNumber, $oldPhoneNumber, $password);
    118                                 $sendMT = $this->sendMT($oldPhoneNumber, $smsReturn);
     147                                $arySMS = explode ('|', $smsReturn);
     148                                $sendMT = $this->sendMT($this->formatPhoneNumber($oldPhoneNumber, -1), $arySMS[1]);
     149                               
    119150                                break;
    120151                        case _SBG_MO_PASSWORD_RECOVERY:
Note: See TracChangeset for help on using the changeset viewer.