X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=WEB-INF%2Flib%2Fcommon.lib.php;h=ac0b6825f77c7b69c3be8f7c793b59da03d35dd6;hb=6856837ddde5cc90ac5dad2e5d67204036ec3158;hp=124b78f5887823c3d13a61370f96008d4561e21d;hpb=7ddf5c391598126ec473db7b25884ee0bd94f153;p=timetracker.git
diff --git a/WEB-INF/lib/common.lib.php b/WEB-INF/lib/common.lib.php
index 124b78f5..ac0b6825 100644
--- a/WEB-INF/lib/common.lib.php
+++ b/WEB-INF/lib/common.lib.php
@@ -26,17 +26,12 @@
// | https://www.anuko.com/time_tracker/credits.htm
// +----------------------------------------------------------------------+
- /**
- * @return unknown
- * @param file unknown
- * @param version = "" unknown
- * @desc Loads a class
- */
- function import( $class_name ) {
- $libs = array(
- dirname($_SERVER["SCRIPT_FILENAME"]),
- LIBRARY_DIR
- );
+// import() function loads a class.
+function import($class_name) {
+ $libs = array(
+ dirname($_SERVER["SCRIPT_FILENAME"]),
+ LIBRARY_DIR
+ );
$pos = strpos($class_name, ".");
if (!($pos === false)) {
@@ -61,7 +56,7 @@
print '
load_class: error loading file "'.$filename.'"';
die();
- }
+}
// The mu_sort function is used to sort a multi-dimensional array.
// It looks like the code example is taken from the PHP manual http://ca2.php.net/manual/en/function.sort.php
@@ -127,7 +122,6 @@
die($mdb2->getMessage());
}
- $mdb2->setOption('debug', true);
$mdb2->setFetchMode(MDB2_FETCHMODE_ASSOC);
$GLOBALS["_MDB2_CONNECTION"] = $mdb2;
@@ -136,22 +130,17 @@
}
- function closeConnection() {
- if (isset($GLOBALS["_DB_CONNECTION"])) {
- $GLOBALS["_DB_CONNECTION"]->close();
- unset($GLOBALS["_DB_CONNECTION"]);
- }
- }
+// time_to_decimal converts a time string such as 1:15 to its decimal representation such as 1.25 or 1,25.
+function time_to_decimal($val) {
+ global $user;
+ $parts = explode(':', $val); // parts[0] is hours, parts[1] is minutes.
-function time_to_decimal($a) {
- $tmp = explode(":", $a);
- if($tmp[1]{0}=="0") $tmp[1] = $tmp[1]{1};
+ $minutePercent = round($parts[1]*100/60); // Integer value (0-98) of percent of minutes portion in the hour.
+ if($minutePercent < 10) $minutePercent = '0'.$minutePercent; // Pad small values with a 0 to always have 2 digits.
- $m = round($tmp[1]*100/60);
+ $decimalTime = $parts[0].$user->decimal_mark.$minutePercent; // Construct decimal representation of time value.
- if($m<10) $m = "0".$m;
- $time = $tmp[0].".".$m;
- return $time;
+ return $decimalTime;
}
function sec_to_time_fmt_hm($sec)
@@ -161,11 +150,9 @@ function sec_to_time_fmt_hm($sec)
function magic_quotes_off()
{
- // if (get_magic_quotes_gpc()) { // This check is now done before calling this function.
- $_POST = array_map('stripslashes_deep', $_POST);
- $_GET = array_map('stripslashes_deep', $_GET);
- $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
- // }
+ $_POST = array_map('stripslashes_deep', $_POST);
+ $_GET = array_map('stripslashes_deep', $_GET);
+ $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
}
// check_extension checks whether a required PHP extension is loaded and dies if not so.
@@ -321,6 +308,23 @@ function ttValidCronSpec($val)
return true;
}
+// ttValidCondition is used to check user input to validate a notification condition.
+function ttValidCondition($val, $emptyValid = true)
+{
+ $val = trim($val);
+ if (strlen($val) == 0)
+ return ($emptyValid ? true : false);
+
+ // String must not be XSS evil (to insert JavaScript).
+ if (stristr($val, '