Automatically calculate the filesystem path of the application and use
[misc/kostenrechnung] / lib / general.php
index 215eee4..278501e 100644 (file)
@@ -1,16 +1,32 @@
 <?php
 
+function check_session()
+{
+  if (!empty($_POST['login']) && !empty($_POST['passwd'])) {
+    require_once('lib/login.php');
+    if (check_passwd()) {
+      header('Location: ./');
+      exit();
+    }
+  }
+
+  if (empty($_SESSION['sys']['login']) && empty($_GET['login'])) {
+    header('Location: ./?login=true');
+    exit();
+  }
+}
+
 function sanitise_filename($file)
 {
   return str_replace('./','x',$file);
 }
 
-function load_mask($name, $prefix = '')
+function load_mask($name)
 {
   global $mask;
 
   $name = sanitise_filename($name);
-  $file = $prefix . 'masks/' . $name . '.php';
+  $file = $_SESSION['sys']['basedir'] . 'masks/' . $name . '.php';
 
   if (!file_exists($file))
     return false;
@@ -26,6 +42,19 @@ function connect_db()
   pg_connect($dsn);
 }
 
+function query_db($sql)
+{
+  $sth = pg_query($sql);
+
+  if ($sth === false) return false;
+
+  $result = array();
+  while ($row = pg_fetch_assoc($sth))
+    $result[] = $row;
+
+  return $result;
+}
+
 function load_js($jsfiles, $jscode)
 {
   $ret = '';
@@ -40,6 +69,11 @@ function load_js($jsfiles, $jscode)
 
 function process()
 {
+  if (!empty($_GET['login'])) {
+    require_once('lib/login.php');
+    return mask_login();
+  }
+
   if (!empty($_GET['mask'])) {
     require_once('lib/mask.php');
     return mask($_GET['mask']);