<?php
/********************************************************************
** Knjižnica, kjer so zbrane funkcije za varno procesiranje kode	 **
** Author: Dave @ zabec.net	 												 **
** Date: 2007 						 												 **
********************************************************************/

/* funkcija preveri spremeljivko za SQL injection */
/**************************************************/
	function inputSQLcheck($text)
	{
		return mysql_real_escape_string($text);
	}

/* funkcija preveri spremeljivko za SQL injection & XSS injection */
/******************************************************************/
	function inputXSScheck($text)
	{
		return htmlspecialchars($text,ENT_QUOTES);
	}

/* funkcija preveri spremeljivko za XSS injection vendar dovoli HTML */
/*********************************************************************/
	function inputXSSallowHTML($text)
	{
		require_once("lib_phpfilter.php");
		$filter = new InputFilter();

		return $filter->process($text);
	}


/* funkcija preveri spremeljivko za določeno vrednost */
/******************************************************/
	function checkStr($text, $type = "")
	{
		$return = false;
		switch($type)
		{
			case "alpha":
				if(preg_match("/[a-z ]/", $text))
				{
					$return = true;
				}
			break;
			case "num":
				if(is_numeric($text))
				{
					$return = true;
				}
			break;
			case "alphanum":
				if(preg_match("/[0-9a-z ]/", $text))
				{
					$return = true;
				}
			break;
			case "datum":
				if(preg_match("/^\d{2}\.\d{2}\.\d{4}$/", $text))
				{
					$return = true;
				}
			break;
			default:
				if ($text != "")
				{
					$return = true;
				}
			break;
		}
		return $return;
	}

/* funkcija preveri če ima uporabnik pravice za ogled določenega dela strani */
/*****************************************************************************/
// 1 - dovoljeno branje in pisanje
// 2 - dovoljeno branje
// 3 - ni pravic

function checkView($id_modul)
{
	global $db;
	if($id_modul == "nastavitve")
	{
		$id_modul = 1;
	}
	$result = $db->query("SELECT pravica FROM core_groups WHERE group_id = '$_SESSION[skupina]' AND modul_id = '$id_modul'");
	$r = $result->fetch();
	if($r['pravica'] == 1 OR $r['pravica'] == 2)
	{
		return true;
	}
	else
	{
		return false;
	}
}

/* funkcija preveri če ima uporabnik pravice za pisanje v določenem delu strani */
/********************************************************************************/
function checkWrite($id_modul)
{
	global $db;
	if($id_modul == "nastavitve")
	{
		$id_modul = 1;
	}
	$result = $db->query("SELECT pravica FROM core_groups WHERE group_id = '$_SESSION[skupina]' AND modul_id = '$id_modul'");
	$r = $result->fetch();
	if($r['pravica'] == 1)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function noWritePermission()
{
	global $ajax;
	if($ajax)
	{
		header("HTTP/1.0 800 Napaka");
		echo $lang['pravice_no'];
	}
}

?>