| @@ 824-856 (lines=33) @@ | ||
| 821 | return str_replace('/', DIRECTORY_SEPARATOR, $pathname); |
|
| 822 | } |
|
| 823 | // OSCOM v2.2rc2a compatibility |
|
| 824 | function getIpAddress() { |
|
| 825 | if ( function_exists('tep_get_ip_address') ) { |
|
| 826 | return tep_get_ip_address(); |
|
| 827 | } |
|
| 828 | global $HTTP_SERVER_VARS; |
|
| 829 | $ip_address = null; |
|
| 830 | $ip_addresses = array(); |
|
| 831 | if (isset($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR']) && !empty($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'])) { |
|
| 832 | foreach ( array_reverse(explode(',', $HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'])) as $x_ip ) { |
|
| 833 | $x_ip = trim($x_ip); |
|
| 834 | if ($this->isValidIpAddress($x_ip)) { |
|
| 835 | $ip_addresses[] = $x_ip; |
|
| 836 | } |
|
| 837 | } |
|
| 838 | } |
|
| 839 | if (isset($HTTP_SERVER_VARS['HTTP_CLIENT_IP']) && !empty($HTTP_SERVER_VARS['HTTP_CLIENT_IP'])) { |
|
| 840 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_CLIENT_IP']; |
|
| 841 | } |
|
| 842 | if (isset($HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP']) && !empty($HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP'])) { |
|
| 843 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP']; |
|
| 844 | } |
|
| 845 | if (isset($HTTP_SERVER_VARS['HTTP_PROXY_USER']) && !empty($HTTP_SERVER_VARS['HTTP_PROXY_USER'])) { |
|
| 846 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_PROXY_USER']; |
|
| 847 | } |
|
| 848 | $ip_addresses[] = $HTTP_SERVER_VARS['REMOTE_ADDR']; |
|
| 849 | foreach ( $ip_addresses as $ip ) { |
|
| 850 | if (!empty($ip) && $this->isValidIpAddress($ip)) { |
|
| 851 | $ip_address = $ip; |
|
| 852 | break; |
|
| 853 | } |
|
| 854 | } |
|
| 855 | return $ip_address; |
|
| 856 | } |
|
| 857 | // OSCOM v2.2rc2a compatibility |
|
| 858 | function isValidIpAddress($ip_address) { |
|
| 859 | if ( function_exists('tep_validate_ip_address') ) { |
|
| @@ 876-908 (lines=33) @@ | ||
| 873 | return str_replace('/', DIRECTORY_SEPARATOR, $pathname); |
|
| 874 | } |
|
| 875 | // OSCOM v2.2rc2a compatibility |
|
| 876 | function getIpAddress() { |
|
| 877 | if ( function_exists('tep_get_ip_address') ) { |
|
| 878 | return tep_get_ip_address(); |
|
| 879 | } |
|
| 880 | global $HTTP_SERVER_VARS; |
|
| 881 | $ip_address = null; |
|
| 882 | $ip_addresses = array(); |
|
| 883 | if (isset($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR']) && !empty($HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'])) { |
|
| 884 | foreach ( array_reverse(explode(',', $HTTP_SERVER_VARS['HTTP_X_FORWARDED_FOR'])) as $x_ip ) { |
|
| 885 | $x_ip = trim($x_ip); |
|
| 886 | if ($this->isValidIpAddress($x_ip)) { |
|
| 887 | $ip_addresses[] = $x_ip; |
|
| 888 | } |
|
| 889 | } |
|
| 890 | } |
|
| 891 | if (isset($HTTP_SERVER_VARS['HTTP_CLIENT_IP']) && !empty($HTTP_SERVER_VARS['HTTP_CLIENT_IP'])) { |
|
| 892 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_CLIENT_IP']; |
|
| 893 | } |
|
| 894 | if (isset($HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP']) && !empty($HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP'])) { |
|
| 895 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_X_CLUSTER_CLIENT_IP']; |
|
| 896 | } |
|
| 897 | if (isset($HTTP_SERVER_VARS['HTTP_PROXY_USER']) && !empty($HTTP_SERVER_VARS['HTTP_PROXY_USER'])) { |
|
| 898 | $ip_addresses[] = $HTTP_SERVER_VARS['HTTP_PROXY_USER']; |
|
| 899 | } |
|
| 900 | $ip_addresses[] = $HTTP_SERVER_VARS['REMOTE_ADDR']; |
|
| 901 | foreach ( $ip_addresses as $ip ) { |
|
| 902 | if (!empty($ip) && $this->isValidIpAddress($ip)) { |
|
| 903 | $ip_address = $ip; |
|
| 904 | break; |
|
| 905 | } |
|
| 906 | } |
|
| 907 | return $ip_address; |
|
| 908 | } |
|
| 909 | // OSCOM v2.2rc2a compatibility |
|
| 910 | function isValidIpAddress($ip_address) { |
|
| 911 | if ( function_exists('tep_validate_ip_address') ) { |
|