Exemple #1
0
}
$ip = optional_param('ip', getremoteaddr(), PARAM_RAW);
$user = optional_param('user', 0, PARAM_INT);
if (isset($CFG->iplookup)) {
    // Clean up of old settings.
    set_config('iplookup', NULL);
}
$PAGE->set_url('/iplookup/index.php', array('id' => $ip, 'user' => $user));
$PAGE->set_pagelayout('popup');
$PAGE->set_context(context_system::instance());
$info = array($ip);
$note = array();
if (cleanremoteaddr($ip) === false) {
    print_error('invalidipformat', 'error');
}
if (!ip_is_public($ip)) {
    print_error('iplookupprivate', 'error');
}
$info = iplookup_find_location($ip);
if ($info['error']) {
    // Can not display.
    notice($info['error']);
}
if ($user) {
    if ($user = $DB->get_record('user', array('id' => $user, 'deleted' => 0))) {
        // note: better not show full names to everybody
        if (has_capability('moodle/user:viewdetails', context_user::instance($user->id))) {
            array_unshift($info['title'], fullname($user));
        }
    }
}
 /**
  * Checks ip_is_public returns true for public ips.
  *
  * @param string $ip the ipaddress to test
  * @dataProvider data_public_ips
  */
 public function test_ip_is_public_public_ips($ip)
 {
     $this->assertTrue(ip_is_public($ip));
 }