Subversion-Projekte lars-tiefland.ci

Revision

Revision 870 | Revision 872 | Zur aktuellen Revision | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
851 lars 1
<?php
2
 
3
/**
4
 *
5
 * @package WebanOS CI
6
 * @author Lars Tiefland <ltiefland@gmail.com>
7
 * @copyright 2016
8
 * @version $Rev: 871 $
9
 */
10
 
11
class Weban_backend
12
{
13
	public function __construct()
14
	{
15
		$CI = &get_instance();
16
		$web_rechte = array();
871 lars 17
		$user_rechte = array();
851 lars 18
		$sql = "SELECT
19
				modules.interner_name AS m_name,
20
				tools.button_name AS t_name,
21
				properties.interner_name AS p_name,
22
				webs_properties.Bezeichnung
23
			FROM
24
				webs,
25
		        webs_properties,
26
		        properties,
27
		        tools,
28
		        modules
29
		    WHERE
30
		        webs.domain='".__SHOP__."'
31
		    AND
32
		        webs_properties.webs=webs.ID
33
		    AND
34
		        webs_properties.properties=properties.ID
35
		    AND
36
		        properties.tools = tools.ID
37
		    AND
38
		        tools.modules = modules.ID
39
		    ORDER BY
40
		        properties.Rang
41
		";
42
 
43
		$result = $GLOBALS["db_red"]->query($sql);
44
		while ($zeile = $result->unbuffered_row('array'))
45
		{
46
			//var_dump($zeile);
47
			//exit;
48
			if (!$zeile["Bezeichnung"])
49
			{
50
				$zeile["Bezeichnung"] = "";
51
			}
52
			$zeile["Bezeichnung"] = explode("|", $zeile["Bezeichnung"]);
53
 
54
			if (count($zeile["Bezeichnung"]) == 1)
55
			{
56
				$zeile["Bezeichnung"] = $zeile["Bezeichnung"][0];
57
			}
58
 
59
			$web_rechte[$zeile["m_name"]][$zeile["t_name"]][$zeile["p_name"]] = $zeile["Bezeichnung"];
60
		}
61
 
62
		foreach (array_keys($web_rechte) as $a)
63
		{
64
			foreach (array_keys($web_rechte[$a]) as $b)
65
			{
66
				foreach (array_keys($web_rechte[$a][$b]) as $c)
67
				{
68
					if (is_array($web_rechte[$a][$b][$c]))
69
					{
70
						//if (in_array($_SESSION[language], $web_rechte[$a][$b][$c]))
71
						{
72
							$web_rechte[$a][$b][$c] = $web_rechte[$a][$b][$c][array_search($_SESSION["language"],
73
								array_keys($web_rechte["online_shop"]["language"]))];
74
						}
75
						if ($web_rechte[$a][$b][$c] == "./.")
76
						{
77
							unset($web_rechte[$a][$b][$c]);
78
						}
79
					}
80
				}
81
			}
82
		}
83
 
84
		unset($query);
85
		unset($result);
86
		unset($zeile);
87
		$CI->smarty->assign("web_rechte", $web_rechte);
853 lars 88
		if ($CI->session->user_data["user"] == "admin")
89
		{
870 lars 90
			$user_rechte = $web_rechte;
853 lars 91
		}
870 lars 92
		else
93
		{
94
			$sql = "
95
				SELECT
96
					modules.interner_name AS module,
97
					tools.button_name AS tool,
98
					properties.interner_name AS property
99
				FROM
100
					webs,
101
					Access,
102
					webs_properties,
103
					user_properties,
104
					properties,
105
					tools,
106
					modules
107
				WHERE
108
					webs.domain='".__SHOP__."'
109
				AND
110
					webs_properties.webs=webs.ID
111
				AND
112
					webs_properties.properties=properties.ID
113
				AND
114
					Access.user='".$this->session->user_data["name"]."'
115
				AND
116
					user_properties.Access=Access.ID
117
				AND
118
					user_properties.properties=properties.ID
119
				AND
120
					properties.tools = tools.ID
121
				AND
122
					tools.modules = modules.ID
123
			";
124
			$result = $GLOBALS["db_red"]->query($sql);
125
			while ($zeile = $result->unbuffered_row('array'))
126
			{
127
				$user_rechte[$zeile["module"]][$zeile["tool"]][$zeile["property"]] = 1;
128
			}
129
		}
130
		$CI->smarty->assign("user_rechte", $user_rechte);
851 lars 131
		$GLOBALS["web_rechte"] = $web_rechte;
870 lars 132
		$GLOBALS["user_rechte"] = $user_rechte;
851 lars 133
	}
134
}
135
 
136
?>