BossBey File Manager
PHP:
7.3.33
OS:
Linux
User:
cp181240
Root
/
home
/
cp181240
/
public_html
/
mystric.com
/
apps
📤 Upload
📝 New File
📁 New Folder
Close
Editing: functions.inc.php
<?php $_ALL_CURRENCY = array( 'THB'=>array('name'=>'Thailand Baht','sign'=>'฿','align'=>'1'), // check ok // align 1 = left 2 = right 'USD'=>array('name'=>'United States Dollar','sign'=>'$','align'=>'2'), // check ok 'GBP'=>array('name'=>'United Kingdom Pound','sign'=>'£','align'=>'2'), // check ok 'JPY'=>array('name'=>'日本語 Japan Yen','sign'=>'¥','align'=>'2'), // check ok 'CNY'=>array('name'=>'中國 China Yuan Renminbi','sign'=>'¥','align'=>'2'), // check ok 'KRW'=>array('name'=>'한국의 Korea Won','sign'=>'₩','align'=>'2'), // check ok 'FRF'=>array('name'=>'français (French)','sign'=>'francs','align'=>'1'), 'ESP'=>array('name'=>'español (Spanish)','sign'=>'€','align'=>'2'), 'RUB'=>array('name'=>'русский язык Belarus Ruble','sign'=>'p.','align'=>'1'), 'LAK'=>array('name'=>'ພາສາລາວ Laos Kip','sign'=>'₭','align'=>'1'), // check ok 'VND'=>array('name'=>'Tiếng Việt Viet Nam Dong','sign'=>'₫','align'=>'1'), 'MMK'=>array('name'=>'မြန်မာဘာသာ (Burmese)','sign'=>'Ks','align'=>'2'), 'AUD'=>array('name'=>'Australian Dollar','sign'=>'AUD','align'=>'2'), 'EUR'=>array('name'=>'Euro','sign'=>'€','align'=>'2'), 'KHR'=>array('name'=>'ភាសាខ្មែរ Cambodia Riel','sign'=>'៛','align'=>'1'), 'INR'=>array('name'=>'India','sign'=>'₹','align'=>'2'), 'EGP'=>array('name'=>'Eygpt','sign'=>'£','align'=>'2'), 'MYR'=>array('name'=>'Ringgit Malaysia','sign'=>'RM','align'=>'1'), 'AED'=>array('name'=>'United Arab Emirates Dirham','sign'=>'د.إ','align'=>'1'), 'PHP'=>array('name'=>'Philippine Peso','sign'=>'₱','align'=>'1') ); $txt_lang_list = array( 'th'=>'ภาษาไทย (Thai)', 'en'=>'English', 'jp'=>'日本語 (Japanese)', 'ch'=>'中國 (Chinese)', 'kr'=>'한국의 (Korean)', 'fr'=>'français (French)', 'es'=>'español (Spanish)', 'de'=>'Deutsch (German)', 'ru'=>'русский язык (Russian)', 'lo'=>'ພາສາລາວ (Lao)', 'vi'=>'Tiếng Việt (Vietnamese)', 'my'=>'မြန်မာဘာသာ (Burmese)', 'km'=>'ភាសាខ្មែរ (Cambodian)', 'ar'=>'العربية (Arabic)', 'it'=>'Italiano (Italian)', 'mr'=>'بهاس (Malaysia)', 'id'=>'Indonesia (Indonesian)', 'ph'=>'Philippine' ); $txt_lang_list_show = array( 'th'=>'ภาษาไทย', 'en'=>'English', 'jp'=>'日本語', 'ch'=>'中國', 'kr'=>'한국의', 'fr'=>'français', 'es'=>'español', 'de'=>'Deutsch', 'ru'=>'русский язык', 'lo'=>'ພາສາລາວ', 'vi'=>'Tiếng Việt', 'my'=>'မြန်မာဘာသာ', 'km'=>'ភាសាខ្មែរ', 'ar'=>'العربية', 'it'=>'Italiano', 'mr'=>'بهاس', 'id'=>'Indonesia', 'ph'=>'Philippine' ); function getFullLanguages($lang){ $fullLanguageName = ''; switch ($lang) { case 'th': $fullLanguageName = 'Thai'; break; case 'en': $fullLanguageName = 'English'; break; case 'jp': $fullLanguageName = 'Japanese'; break; case 'ch': $fullLanguageName = 'Chinese'; break; case 'kr': $fullLanguageName = 'Korean'; break; case 'fr': $fullLanguageName = 'French'; break; case 'es': $fullLanguageName = 'Spainish'; break; case 'de': $fullLanguageName = 'German'; break; case 'ru': $fullLanguageName = 'Russian'; break; case 'lo': $fullLanguageName = 'Loa'; break; case 'vi': $fullLanguageName = 'Vietnamese'; break; case 'my': $fullLanguageName = 'Burmese'; break; case 'km': $fullLanguageName = 'Cambodian'; break; case 'it': $fullLanguageName = 'Italian'; break; case 'ar': $fullLanguageName = 'العربية (Arabic)'; break; } return $fullLanguageName; } if(!function_exists('_t')) { function _t($txt){ if(defined($txt)){ return constant($txt); }else{ return $txt; } } } if(!function_exists('_ta')) { function _ta($txt){ if(defined('_admin_'.$txt)){ return constant('_admin_'.$txt); }else{ return $txt; } } } function _str($string,$length=0,$start=0){ if($length==0){ return html_entity_decode($string,ENT_QUOTES,'UTF-8'); }else{ return iconv_substr(html_entity_decode($string,ENT_QUOTES,'UTF-8'),$start,$length,'utf-8'); } } function _thumbnail_noimage() { return $img = '../soruce/assets/img/picture.jpg'; } function pageBreak($content,$break,$pagebreak='<!-- pagebreak -->'){ $split_content = explode($pagebreak,$content); return ($split_content[0].$break); } function getYoutubeThumbnail($url) { $url = explode(",",$url); $url = $url[0]; $queryString = parse_url($url, PHP_URL_QUERY); parse_str($queryString, $params); if(isset($params['v'])) { $v = $params['v']; if(strlen($v)>0){ return "https://i3.ytimg.com/vi/$v/mqdefault.jpg"; } else { return ''; } } else { return ''; } } function getYoutubeV($url){ $queryString = parse_url($url, PHP_URL_QUERY); parse_str($queryString, $params); $v = $params['v']; if(strlen($v)>0){ return $v ; }else{ return ''; } } function getClipThumbnail($url){ $url_data = explode(",",$url); if(isset($url_data[0])) { $url = $url_data[0]; } if(isset($url_data[1])) { $width = $url_data[1]; } if(isset($url_data[2])) { $height = $url_data[2]; } if(preg_match('/vimeo/',$url)) { $parts = parse_url($url); $path_parts = explode('/',$parts['path']); $code = $path_parts[count($path_parts)-1]; $link = $_SESSION['PROTOCOL'].'://vimeo.com/api/v2/video/'.$code.'.php'; $html_returned = unserialize(file_get_contents($link)); $urlThumbnail = $html_returned[0]['thumbnail_medium']; } else { $urlThumbnail = getYoutubeThumbnail($url); } return $urlThumbnail; } function convertShowDatePicker($d,$format="d/m/Y H:i"){ list($date, $times) = explode(' ',$d); list($year, $month,$day ) = explode('-', $date); list($h,$i,$s) = explode(':',$times); return date($format, mktime($h,$i,$s,$month,$day, $year)); } function revertShowDatePicker($d,$format="Y-m-d H:i:s"){ list($date, $times) = explode(' ', $d); list($day,$month,$year ) = explode('/', $date); list($h,$i) = explode(':',$times); $s = 0 ; return date($format, mktime($h,$i,$s,$month, $day, $year)); } function convertShowDateOnlyPicker($d,$format="d/m/Y H:i"){ list($date) = explode(' ',$d); list($year,$month,$day) = explode('-',$date); return date($format,mktime(0,0,0,$month,$day,$year)); } function revertShowDateOnlyPicker($d,$format="Y-m-d"){ list($date) = explode(' ', $d); list($day,$month,$year) = explode('/', $date); $s = 0; return date($format,mktime(0,0,0,$month,$day,$year)); } function showDateOnly($date,$format,$lang){ list($FY,$FM,$D) = explode(' ',$format); list($DATE) = explode(' ',$date); list($YYYY,$MM,$DD) = explode('-',$DATE); return array( 'Y'=>convertYear($YYYY,$FY), 'M'=>convertMonth($MM,$FM,$lang), 'D'=>$DD, 'H'=>00, 'I'=>00, 'S'=>00 ); } function showDate($date,$format,$lang){ list($FY,$FM,$D) = explode(' ',$format); list($DATE,$TIME) = explode(' ',$date); list($YYYY,$MM,$DD) = explode('-',$DATE); list($HH,$II,$SS) = explode(':',$TIME); return array( 'Y'=>convertYear($YYYY,$FY), 'M'=>convertMonth($MM,$FM,$lang), 'D'=>$DD, 'H'=>$HH, 'I'=>$II, 'S'=>$SS ); } function getTimeAgo($time,$lang){ switch($lang){ case 'th': $periods = array("วินาที", "นาที", "ชั่วโมง", "วัน", "สัปดาห์", "เดือน", "ปี", "ทศวรรษ"); $ago = "ที่ผ่านมา"; break; case 'en': $periods = array("second", "minute", "hour", "day", "week", "month", "year", "decade"); $ago = "ago"; break; default: $periods = array("second", "minute", "hour", "day", "week", "month", "year", "decade"); $ago = "ago"; break; } $lengths = array("60","60","24","7","4.35","12","10"); $now = time(); $difference = $now - $time; $tense = "ago"; for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) { $difference /= $lengths[$j]; } $difference = round($difference); if($difference != 1) { if($lang == "en"){ $periods[$j].= "s"; }else{ $periods[$j].= ""; } } return "$difference $periods[$j] $ago "; } function convertMonth($MM,$format,$lang){ if($lang!='th'&&$lang!='en') { $lang = 'en'; } switch($lang){ case "en": switch($format){ case "MM": switch($MM){ case '01': return 'JA' ; break ; case '02': return 'FE' ; break ; case '03': return 'MR' ; break ; case '04': return 'AL' ; break ; case '05': return 'MA' ; break ; case '06': return 'JN' ; break ; case '07': return 'JL' ; break ; case '08': return 'AU' ; break ; case '09': return 'SE' ; break ; case '10': return 'OC' ; break ; case '11': return 'NO' ; break ; case '12': return 'DE' ; break ; } break; case "MMM": switch($MM){ case '01': return 'Jan' ; break ; case '02': return 'Feb' ; break ; case '03': return 'Mar' ; break ; case '04': return 'Apr' ; break ; case '05': return 'May' ; break ; case '06': return 'Jun' ; break ; case '07': return 'Jul' ; break ; case '08': return 'Aug' ; break ; case '09': return 'Sep' ; break ; case '10': return 'Oct' ; break ; case '11': return 'Nov' ; break ; case '12': return 'Dec' ; break ; } break; case "MMMM": switch($MM){ case '01': return 'January' ; break ; case '02': return 'February' ; break ; case '03': return 'March' ; break ; case '04': return 'April' ; break ; case '05': return 'May' ; break ; case '06': return 'June' ; break ; case '07': return 'July' ; break ; case '08': return 'August' ; break ; case '09': return 'September' ; break ; case '10': return 'October' ; break ; case '11': return 'November' ; break ; case '12': return 'December' ; break ; } break; default: return $MM ; break ; } break; case "th": switch($format){ case "MM": case "MMM": switch($MM){ case '01': return 'ม.ค.' ; break ; case '02': return 'ก.พ.' ; break ; case '03': return 'มี.ค.' ; break ; case '04': return 'เม.ย.' ; break ; case '05': return 'พ.ค.' ; break ; case '06': return 'มิ.ย.' ; break ; case '07': return 'ก.ค.' ; break ; case '08': return 'ส.ค.' ; break ; case '09': return 'ก.ย.' ; break ; case '10': return 'ต.ค.' ; break ; case '11': return 'พ.ย.' ; break ; case '12': return 'ธ.ค.' ; break ; } break; case "MMMM": switch($MM){ case '01': return 'มกราคม' ; break ; case '02': return 'กุมภาพันธ์' ; break ; case '03': return 'มีนาคม' ; break ; case '04': return 'เมษายน' ; break ; case '05': return 'พฤษภาคม' ; break ; case '06': return 'มิถุนายน' ; break ; case '07': return 'กรกฎาคม' ; break ; case '08': return 'สิงหาคม' ; break ; case '09': return 'กันยายน' ; break ; case '10': return 'ตุลาคม' ; break ; case '11': return 'พฤศจิกายน' ; break ; case '12': return 'ธันวาคม' ; break ; } break; default: return $MM; break; } break; } } function convertYear($YY,$format){ switch($format){ case 'YY': return substr($YY,2,2); break; case 'BB': $bYear = (string)$YY+543; return substr($bYear,2,2); break; case 'YYYY': { if(isset($_SESSION['site_language'])){ if($_SESSION['site_language'] == 'th'){ $YY = (string)$YY+543; } } return $YY; } break; case 'BBBB':{ if(isset($_SESSION['site_language'])){ if($_SESSION['site_language'] == 'th'){ $bYear = (string)$YY+543; }else{ $bYear = $YY; } }else{ $bYear = (string)$YY+543; } return $bYear; } break; } } function _substr($string,$start,$length){ return iconv_substr($string,$start,$length,'UTF-8'); } function _paginate($total_page,$page,$link,$active){ $total_page = ceil($count/$length); return $total_page; } function utf8_uri_encode( $utf8_string, $length = 0 ) { $unicode = ''; $values = array(); $num_octets = 1; $unicode_length = 0; $string_length = strlen( $utf8_string ); for ($i = 0; $i < $string_length; $i++ ) { $value = ord( $utf8_string[ $i ] ); if ( $value < 128 ) { if ( $length && ( $unicode_length >= $length ) ) break; $unicode .= chr($value); $unicode_length++; } else { if ( count( $values ) == 0 ) $num_octets = ( $value < 224 ) ? 2 : 3; $values[] = $value; if ( $length && ( $unicode_length + ($num_octets * 3) ) > $length ) break; if ( count( $values ) == $num_octets ) { if ($num_octets == 3) { $unicode .= '%' . dechex($values[0]) . '%' . dechex($values[1]) . '%' . dechex($values[2]); $unicode_length += 9; } else { $unicode .= '%' . dechex($values[0]) . '%' . dechex($values[1]); $unicode_length += 6; } $values = array(); $num_octets = 1; } } } return $unicode; } function seems_utf8($str) { $length = strlen($str); for ($i=0; $i < $length; $i++) { $c = ord($str[$i]); if ($c < 0x80) $n = 0; # 0bbbbbbb elseif (($c & 0xE0) == 0xC0) $n=1; # 110bbbbb elseif (($c & 0xF0) == 0xE0) $n=2; # 1110bbbb elseif (($c & 0xF8) == 0xF0) $n=3; # 11110bbb elseif (($c & 0xFC) == 0xF8) $n=4; # 111110bb elseif (($c & 0xFE) == 0xFC) $n=5; # 1111110b else return false; # Does not match any model for ($j=0; $j<$n; $j++) { # n bytes matching 10bbbbbb follow ? if ((++$i == $length) || ((ord($str[$i]) & 0xC0) != 0x80)) return false; } } return true; } function sanitize($title) { $title = strip_tags($title); // Preserve escaped octets. $title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title); // Remove percent signs that are not part of an octet. $title = str_replace('%', '', $title); // Restore octets. $title = preg_replace('|---([a-fA-F0-9][a-fA-F0-9])---|', '%$1', $title); if (seems_utf8($title)) { if (function_exists('mb_strtolower')) { $title = mb_strtolower($title, 'UTF-8'); } $title = utf8_uri_encode($title, 2048); } $title = strtolower($title); $title = preg_replace('/&.+?;/', '', $title); // kill entities $title = str_replace('.', '-', $title); $title = preg_replace('/[^%a-z0-9 _-]/', '', $title); $title = preg_replace('/\s+/', '-', $title); $title = preg_replace('|-+|', '-', $title); $title = trim($title, '-'); return $title; } function getRoute($route,$lang){ return constant("_ROUTE_".$lang."_".$route) ; } function formatSizeUnits($bytes){ if ($bytes >= 1073741824){ $bytes = number_format($bytes / 1073741824, 2) . ' GB'; }elseif ($bytes >= 1048576){ $bytes = number_format($bytes / 1048576, 2) . ' MB'; }elseif ($bytes >= 1024){ $bytes = number_format($bytes / 1024, 2) . ' KB'; }elseif ($bytes > 1){ $bytes = $bytes . ' bytes'; }elseif ($bytes == 1){ $bytes = $bytes . ' byte'; }else{ $bytes = '0 bytes'; } return $bytes; } function getFileSize($src,$file_name){ $result = callFileService('filesize',$file_name,$src); return formatSizeUnits($result['size']); } function chkFileSystemPath($filename,$module){ if(strpos($filename,'://')){ return ''; }else{ return PATH_FILE_SYSTEM.$module.'/'; } } function _html($html){ return html_entity_decode($html,ENT_QUOTES,'UTF-8'); } function showLeftCurrency($currency){ switch($currency){ case 'USD': return '$'; break; } } function showRightCurrency($currency){ switch($currency){ case 'THB': return '฿'; break; } } function pre($data){ echo '<pre>'; print_r($data); echo '</pre>'; } function getClientIP() { $ipaddress = ''; if ($_SERVER['HTTP_CLIENT_IP']) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if($_SERVER['HTTP_X_FORWARDED_FOR']) $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR']; else if($_SERVER['HTTP_X_FORWARDED']) $ipaddress = $_SERVER['HTTP_X_FORWARDED']; else if($_SERVER['HTTP_FORWARDED_FOR']) $ipaddress = $_SERVER['HTTP_FORWARDED_FOR']; else if($_SERVER['HTTP_FORWARDED']) $ipaddress = $_SERVER['HTTP_FORWARDED']; else if($_SERVER['REMOTE_ADDR']) $ipaddress = $_SERVER['REMOTE_ADDR']; else $ipaddress = 'UNKNOWN'; // $ipaddress = $_SERVER['HTTP_FORWARDED']; return $ipaddress; } function chkCurrentFileName($current,$file){ $file_name = basename($_SERVER['REQUEST_URI'], '?' . $_SERVER['QUERY_STRING']); if($current&&$file==$file_name){ return ' active ' ; }else{ return ''; } } function getCurrencySign($currency) { $currency_sign = ""; switch ($currency) { case 'THB': $currency_sign = "฿"; break; case 'USD': $currency_sign = "$"; break; } return $currency_sign; } function setImgEmailRelToAbs ($text) { $text = _str(relToAbs(_html($text),'http://'.$_SERVER['HTTP_HOST'])); return $text; } function relToAbs($text, $base) { if (empty($base)) return $text; if (substr($base, -1, 1) != "/") $base .= "/"; $pattern = "/<img([^>]*) " . "src=\"[^http|ftp|https]([^\"]*)\"/"; $replace = "<img\${1} src=\"" . $base . "\${2}\""; $text = preg_replace($pattern, $replace, $text); $search = 'src="http://'.$_SERVER['HTTP_HOST'].'/./../'; $replace = 'src="http://'.$_SERVER['HTTP_HOST'].'/'; $text = str_replace($search, $replace, $text); // Done return $text; } function objectToArray($d) { if (is_object($d)) { $d = get_object_vars($d); } if (is_array($d)) { return array_map(__FUNCTION__,$d); }else { return $d; } } function getFBShareCount($path) { $json = file_get_contents('https://api.facebook.com/method/links.getStats?urls='.$path.'&format=json'); $obj = json_decode($json); $array = objectToArray($obj); $share_count = $array[0]['share_count']; return $share_count; } function getFlagImage($country_short_name){ $img_path = '../themes/assets/img/flag/'.$country_short_name.".png"; return $img_path; } function is_session_started () { if ( php_sapi_name() !== 'cli' ) { if ( version_compare(phpversion(), '5.4.0', '>=') ) { return session_status() === PHP_SESSION_ACTIVE ? TRUE : FALSE; } else { return session_id() === '' ? FALSE : TRUE; } } return FALSE; } function setMenuTitleAndIcon($title, $icon_pos, $icon_class) { $return_title = ''; if($title == '-'){ $title = ''; } if($icon_pos == 0){ $return_title = $title; }else if($icon_pos == 1){ $return_title = '<i class="fa '.$icon_class.'"></i> '.$title; }else if($icon_pos == 2){ $return_title = $title.' <i class="fa '.$icon_class.'"></i>'; }else if($icon_pos == 3){ $return_title = '<img src='.$icon_class.'> '.$title; }else if($icon_pos == 4){ $return_title = $title.' <img src='.$icon_class.'> '; } return $return_title; } function xml2array($n) { $return=array(); foreach($n->childNodes as $nc) ($nc->hasChildNodes()) ?($n->firstChild->nodeName== $n->lastChild->nodeName&&$n->childNodes->length>1) ?$return[$nc->nodeName][]= xml2array($item) :$return[$nc->nodeName] = xml2array($nc) :$return=$nc->nodeValue; return $return; } function getRequestURIParams($key='') { $params = array(); if(strpos($_SERVER['REQUEST_URI'], "?") && end(explode("?", $_SERVER['REQUEST_URI'])) != ''){ $temp = explode("&",end(explode("?", $_SERVER['REQUEST_URI']))); foreach ($temp as $k => $v) { $temp_key = ( explode("=", $v)[0] != '' ? explode("=", $v)[0] : '' ); $temp_value = ( explode("=", $v)[1] != '' ? explode("=", $v)[1] : '' ); if($temp_key != '' && $temp_value != ''){ $params[$temp_key] = $temp_value; } } } return $params; } function checkUserDevice() { $iPod = stripos($_SERVER['HTTP_USER_AGENT'],"iPod"); $iPhone = stripos($_SERVER['HTTP_USER_AGENT'],"iPhone"); $iPad = stripos($_SERVER['HTTP_USER_AGENT'],"iPad"); $Android = stripos($_SERVER['HTTP_USER_AGENT'],"Android"); $webOS = stripos($_SERVER['HTTP_USER_AGENT'],"webOS"); if( $iPod || $iPhone ){ $user_agent = 'iPod,iPhone'; }else if($iPad){ $user_agent = 'iPad'; }else if($Android){ $user_agent = 'Android'; }else{ $user_agent = 'webOS'; } return $user_agent; } function time_elapsed_string($datetime,$full=false,$lang='th') { $now = new DateTime; $ago = new DateTime($datetime); $diff = $now->diff($ago); $diff->w = floor($diff->d / 7); $diff->d -= $diff->w * 7; $string = array( 'y' => 'ปี', 'm' => 'เดือน', 'w' => 'สัปดาห์', 'd' => 'วัน', 'h' => 'ชั่วโมง', 'i' => 'นาที', 's' => 'วินาที' ); if($lang != 'th'){ $string = array( 'y' => 'year', 'm' => 'month', 'w' => 'week', 'd' => 'day', 'h' => 'hour', 'i' => 'minute', 's' => 'second' ); } foreach ($string as $k => &$v) { if ($diff->$k) { if($lang == 'th'){ $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? '' : ''); }else{ $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : ''); } } else { unset($string[$k]); } } if (!$full) $string = array_slice($string, 0, 1); $return = $string ? implode(', ', $string) . ' ที่ผ่านมา' : 'เมื่อสักครู่'; if($lang != 'th'){ $return = $string ? implode(', ', $string) . ' ago' : 'just now'; } return $return; } function suop___validSSLImage($img) { $img_valid = $img; echo $img_valid; return $img_valid; } function get_client_ip() { $ipaddress = ''; if (isset($_SERVER['HTTP_CLIENT_IP'])) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_X_FORWARDED'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED']; else if(isset($_SERVER['HTTP_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_FORWARDED'])) $ipaddress = $_SERVER['HTTP_FORWARDED']; else if(isset($_SERVER['REMOTE_ADDR'])) $ipaddress = $_SERVER['REMOTE_ADDR']; else $ipaddress = 'UNKNOWN'; return $ipaddress; } function is_mobile() { $tablet_browser = 0; $mobile_browser = 0; $is_mobile = 0; if (preg_match('/(tablet|ipad|playbook)|(android(?!.*(mobi|opera mini)))/i', strtolower($_SERVER['HTTP_USER_AGENT']))) { $tablet_browser++; } if (preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|android|iemobile)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) { $mobile_browser++; } if ((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') > 0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))) { $mobile_browser++; } $mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'], 0, 4)); $mobile_agents = array( 'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac', 'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno', 'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-', 'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-', 'newt','noki','palm','pana','pant','phil','play','port','prox', 'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar', 'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-', 'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp', 'wapr','webc','winw','winw','xda ','xda-' ); if (in_array($mobile_ua,$mobile_agents)) { $mobile_browser++; } if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'opera mini') > 0) { $mobile_browser++; //Check for tablets on opera mini alternative headers $stock_ua = strtolower(isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'])?$_SERVER['HTTP_X_OPERAMINI_PHONE_UA']:(isset($_SERVER['HTTP_DEVICE_STOCK_UA'])?$_SERVER['HTTP_DEVICE_STOCK_UA']:'')); if (preg_match('/(tablet|ipad|playbook)|(android(?!.*mobile))/i', $stock_ua)) { $tablet_browser++; } } if ($tablet_browser > 0) { $is_mobile = 1; } else if ($mobile_browser > 0) { $is_mobile = 1; } else { $is_mobile = 0; } return $is_mobile; } ?>
Save
Cancel