ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 10485


Ignore:
Timestamp:
Jan 27, 2009, 1:33:51 PM (11 years ago)
Author:
ebihara
Message:

#2889:added ability to check mobile ip address

Location:
OpenPNE3/trunk/lib
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE3/trunk/lib/config/config/config_handlers.yml

    r10260 r10485  
    2121config/mobile_mail_domain.yml:
    2222  class: sfSimpleYamlConfigHandler
     23
     24config/mobile_ip_address.yml:
     25  class: sfSimpleYamlConfigHandler
  • OpenPNE3/trunk/lib/config/config/sns_config.yml

    r10460 r10485  
    8484      1: "フォントサイズを指定する"
    8585      0: "フォントサイズを指定しない"
     86  is_check_mobile_ip:
     87    Name:    "is_check_mobile_ip"
     88    Caption: "携帯電話のIP帯域設定"
     89    FormType:  "radio"
     90    ValueType: "integer"
     91    IsRequired: true
     92    Default:    0
     93    Choices:
     94      1: "携帯電話のIP帯域をチェックする"
     95      0: "携帯電話のIP帯域をチェックしない"
    8696
    8797policy:
  • OpenPNE3/trunk/lib/request/sfOpenPNEWebRequest.class.php

    r10459 r10485  
    4646  public function isMobile()
    4747  {
     48    if (opConfig::get('is_check_mobile_ip') && !$this->isMobileIPAddress())
     49    {
     50      return false;
     51    }
     52
    4853    return !($this->getMobile()->isNonMobile());
     54  }
     55
     56  public function isMobileIPAddress()
     57  {
     58    $ipList = (array)include(sfContext::getInstance()->getConfigCache()->checkConfig('config/mobile_ip_address.yml'));
     59
     60    require_once 'Net/IPv4.php';
     61
     62    $result = false;
     63    foreach ($ipList as $mobileIp)
     64    {
     65      if (Net_IPv4::ipInNetwork($_SERVER['REMOTE_ADDR'], $mobileIp))
     66      {
     67        $result = true;
     68        break;
     69      }
     70    }
     71
     72    return $result;
    4973  }
    5074
Note: See TracChangeset for help on using the changeset viewer.