--- a/include/common.inc.php
+++ b/include/common.inc.php
@@ -1,185 +1,210 @@
\n";
-}
-function isJQueryMobileDevice()
-{
- // http://forum.jquery.com/topic/what-is-the-best-way-to-detect-all-useragents-which-can-handle-jquery-mobile#14737000002087897
- $user_agent = $_SERVER['HTTP_USER_AGENT'];
- return preg_match('/iphone/i', $user_agent) || preg_match('/android/i', $user_agent) || preg_match('/webos/i', $user_agent) || preg_match('/ios/i', $user_agent) || preg_match('/bada/i', $user_agent) || preg_match('/maemo/i', $user_agent) || preg_match('/meego/i', $user_agent) || preg_match('/fennec/i', $user_agent) || (preg_match('/symbian/i', $user_agent) && preg_match('/s60/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/symbian/i', $user_agent) && preg_match('/platform/i', $user_agent) && $browser['majorver'] >= 3) || (preg_match('/blackberry/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/opera mobile/i', $user_agent) && $browser['majorver'] >= 10) || (preg_match('/opera mini/i', $user_agent) && $browser['majorver'] >= 5);
-}
-function isFastDevice()
-{
- $ua = $_SERVER['HTTP_USER_AGENT'];
- $fastDevices = Array(
- "Mozilla/5.0 (X11;",
- "Mozilla/5.0 (Windows;",
- "Mozilla/5.0 (iP",
- "Mozilla/5.0 (Linux; U; Android",
- "Mozilla/4.0 (compatible; MSIE"
- );
- $slowDevices = Array(
- "J2ME",
- "MIDP",
- "Opera/",
- "Mozilla/2.0 (compatible;",
- "Mozilla/3.0 (compatible;"
- );
- return true;
-}
-function array_flatten($a, $f = array())
-{
- if (!$a || !is_array($a)) return '';
- foreach ($a as $k => $v) {
- if (is_array($v)) $f = array_flatten($v, $f);
- else $f[$k] = $v;
- }
- return $f;
-}
-function remove_spaces($string)
-{
- return str_replace(' ', '', $string);
-}
-function object2array($object)
-{
- if (is_object($object)) {
- foreach ($object as $key => $value) {
- $array[$key] = $value;
- }
- }
- else {
- $array = $object;
- }
- return $array;
-}
-function startsWith($haystack, $needle, $case = true)
-{
- if ($case) {
- return (strcmp(substr($haystack, 0, strlen($needle)) , $needle) === 0);
- }
- return (strcasecmp(substr($haystack, 0, strlen($needle)) , $needle) === 0);
-}
-
-function endsWith($haystack, $needle, $case = true)
-{
- if ($case) {
- return (strcmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0);
- }
- return (strcasecmp(substr($haystack, strlen($haystack) - strlen($needle)) , $needle) === 0);
-}
-function bracketsMeanNewLine($input)
-{
- return str_replace(")", "", str_replace("(", "
", $input));
-}
-function sksort(&$array, $subkey = "id", $sort_ascending = false)
-{
- if (count($array)) $temp_array[key($array) ] = array_shift($array);
- foreach ($array as $key => $val) {
- $offset = 0;
- $found = false;
- foreach ($temp_array as $tmp_key => $tmp_val) {
- if (!$found and strtolower($val[$subkey]) > strtolower($tmp_val[$subkey])) {
- $temp_array = array_merge((array)array_slice($temp_array, 0, $offset) , array(
- $key => $val
- ) , array_slice($temp_array, $offset));
- $found = true;
- }
- $offset++;
- }
- if (!$found) $temp_array = array_merge($temp_array, array(
- $key => $val
- ));
- }
- if ($sort_ascending) $array = array_reverse($temp_array);
- else $array = $temp_array;
-}
-function sktimesort(&$array, $subkey = "id", $sort_ascending = false)
-{
- if (count($array)) $temp_array[key($array) ] = array_shift($array);
- foreach ($array as $key => $val) {
- $offset = 0;
- $found = false;
- foreach ($temp_array as $tmp_key => $tmp_val) {
- if (!$found and strtotime($val[$subkey]) > strtotime($tmp_val[$subkey])) {
- $temp_array = array_merge((array)array_slice($temp_array, 0, $offset) , array(
- $key => $val
- ) , array_slice($temp_array, $offset));
- $found = true;
- }
- $offset++;
- }
- if (!$found) $temp_array = array_merge($temp_array, array(
- $key => $val
- ));
- }
- if ($sort_ascending && isset($temp_array)) $array = array_reverse($temp_array);
- else $array = $temp_array;
-}
-function r_implode( $glue, $pieces )
-{
- foreach( $pieces as $r_pieces )
- {
- if( is_array( $r_pieces ) )
- {
- $retVal[] = r_implode( $glue, $r_pieces );
- }
- else
- {
- $retVal[] = $r_pieces;
- }
- }
- return implode( $glue, $retVal );
-}
-?>
-
+function isAnalyticsOn() {
+ $user_agent = $_SERVER['HTTP_USER_AGENT'];
+ return !isDebugServer() && !preg_match('/cloudkick/i', $user_agent) && !preg_match('/googlebot/i', $user_agent) &&
+ !preg_match('/baidu/i', $user_agent);
+}
+
+function isDebug($debugReason = "other") {
+ global $debugOkay;
+ return in_array($debugReason, $debugOkay, false) && isDebugServer();
+}
+
+function debug($msg, $debugReason = "other") {
+ if (isDebug($debugReason))
+ echo "\n\n";
+}
+function isIOSDevice() {
+ return strstr($_SERVER['HTTP_USER_AGENT'], 'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPod') || strstr($_SERVER['HTTP_USER_AGENT'], 'iPad');
+}
+function isJQueryMobileDevice() {
+ // http://forum.jquery.com/topic/what-is-the-best-way-to-detect-all-useragents-which-can-handle-jquery-mobile#14737000002087897
+ $user_agent = $_SERVER['HTTP_USER_AGENT'];
+ return preg_match('/iphone/i', $user_agent) || preg_match('/android/i', $user_agent) || preg_match('/webos/i', $user_agent) || preg_match('/ios/i', $user_agent) || preg_match('/bada/i', $user_agent) || preg_match('/maemo/i', $user_agent) || preg_match('/meego/i', $user_agent) || preg_match('/fennec/i', $user_agent) || (preg_match('/symbian/i', $user_agent) && preg_match('/s60/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/symbian/i', $user_agent) && preg_match('/platform/i', $user_agent) && $browser['majorver'] >= 3) || (preg_match('/blackberry/i', $user_agent) && $browser['majorver'] >= 5) || (preg_match('/opera mobile/i', $user_agent) && $browser['majorver'] >= 10) || (preg_match('/opera mini/i', $user_agent) && $browser['majorver'] >= 5);
+}
+
+
+function array_flatten($a, $f = array()) {
+ if (!$a || !is_array($a))
+ return '';
+ foreach ($a as $k => $v) {
+ if (is_array($v))
+ $f = array_flatten($v, $f);
+ else
+ $f[$k] = $v;
+ }
+ return $f;
+}
+
+function remove_spaces($string) {
+ return str_replace(' ', '', $string);
+}
+
+function object2array($object) {
+ if (is_object($object)) {
+ foreach ($object as $key => $value) {
+ $array[$key] = $value;
+ }
+ } else {
+ $array = $object;
+ }
+ return $array;
+}
+
+function startsWith($haystack, $needle, $case = true) {
+ if ($case) {
+ return (strcmp(substr($haystack, 0, strlen($needle)), $needle) === 0);
+ }
+ return (strcasecmp(substr($haystack, 0, strlen($needle)), $needle) === 0);
+}
+
+function endsWith($haystack, $needle, $case = true) {
+ if ($case) {
+ return (strcmp(substr($haystack, strlen($haystack) - strlen($needle)), $needle) === 0);
+ }
+ return (strcasecmp(substr($haystack, strlen($haystack) - strlen($needle)), $needle) === 0);
+}
+
+function sksort(&$array, $subkey = "id", $sort_ascending = false) {
+ if (count($array))
+ $temp_array[key($array)] = array_shift($array);
+ foreach ($array as $key => $val) {
+ $offset = 0;
+ $found = false;
+ foreach ($temp_array as $tmp_key => $tmp_val) {
+ if (!$found and strtolower($val[$subkey]) > strtolower($tmp_val[$subkey])) {
+ $temp_array = array_merge((array) array_slice($temp_array, 0, $offset), array(
+ $key => $val
+ ), array_slice($temp_array, $offset));
+ $found = true;
+ }
+ $offset++;
+ }
+ if (!$found)
+ $temp_array = array_merge($temp_array, array(
+ $key => $val
+ ));
+ }
+ if ($sort_ascending)
+ $array = array_reverse($temp_array);
+ else
+ $array = $temp_array;
+}
+
+function sktimesort(&$array, $subkey = "id", $sort_ascending = false) {
+ if (count($array))
+ $temp_array[key($array)] = array_shift($array);
+ foreach ($array as $key => $val) {
+ $offset = 0;
+ $found = false;
+ foreach ($temp_array as $tmp_key => $tmp_val) {
+ if (!$found and strtotime($val[$subkey]) > strtotime($tmp_val[$subkey])) {
+ $temp_array = array_merge((array) array_slice($temp_array, 0, $offset), array(
+ $key => $val
+ ), array_slice($temp_array, $offset));
+ $found = true;
+ }
+ $offset++;
+ }
+ if (!$found)
+ $temp_array = array_merge($temp_array, array(
+ $key => $val
+ ));
+ }
+ if ($sort_ascending && isset($temp_array))
+ $array = array_reverse($temp_array);
+ else
+ $array = $temp_array;
+}
+
+function r_implode($glue, $pieces) {
+ foreach ($pieces as $r_pieces) {
+ if (is_array($r_pieces)) {
+ $retVal[] = r_implode($glue, $r_pieces);
+ } else {
+ $retVal[] = $r_pieces;
+ }
+ }
+ return implode($glue, $retVal);
+}
+