Subversion-Projekte lars-tiefland.ci

Revision

Revision 1991 | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1474 lars 1
<?php
2
 
3
class Artikel_model extends CI_Model
4
{
1733 lars 5
	public function __construct()
6
	{
7
		parent::__construct();
8
		$this->load->model('preise_model', 'preise');
1740 lars 9
		$this->load->model('metatags_model', 'metatags');
1814 lars 10
		$this->load->model('artikel_to_auspraegung_model', 'artikel_to_auspraegung');
2383 lars 11
		$this->load->model('optionen_model','optionen');
1733 lars 12
	}
1619 lars 13
	public function get_list($dir = -1)
1474 lars 14
	{
1619 lars 15
		$sql = "SELECT
1474 lars 16
				*
17
			FROM
18
				artikel
19
			WHERE
20
				father=".$dir."
1490 lars 21
			ORDER BY
22
				rang
1474 lars 23
		";
24
		$res = $this->db->query($sql);
25
		$items = $res->result_array();
26
		return $items;
27
	}
1619 lars 28
 
1578 lars 29
	public function get($id)
30
	{
1619 lars 31
		$sql = "SELECT
1578 lars 32
				*
33
			FROM
34
				artikel
35
			WHERE
36
				id=".$id."
37
		";
38
		$res = $this->db->query($sql);
39
		$row = $res->unbuffered_row('array');
1733 lars 40
		$row["preise"] = $this->preise->get($row["ID"]);
1740 lars 41
		$row["metatags"] = $this->metatags->get($row["ID"], 'artikel');
1814 lars 42
		$row["auspraegungen"] = $this->artikel_to_auspraegung->get_list($row["ID"]);
1578 lars 43
		return $row;
44
	}
1672 lars 45
 
46
	public function save($daten)
47
	{
1796 lars 48
		if (!$this->input->post('ID'))
1672 lars 49
		{
1796 lars 50
			$sql = "
51
				INSERT INTO
52
					artikel
53
				SET
1808 lars 54
					erstellt_am=NOW(),
55
					erstellt_von='".$_SESSION["username"]."',
1796 lars 56
					letzte_aenderung_von='".$_SESSION["username"]."',
57
			";
58
			foreach ($daten as $key => $value)
59
			{
60
				$felder[] = $key."=".$GLOBALS["order_db"]->escape($value);
61
			}
62
			$sql .= implode(",", $felder);
63
			$res = $this->db->query($sql);
64
			$id = $this->db->insert_id();
1672 lars 65
		}
1796 lars 66
		else
67
		{
68
			$sql = "UPDATE
69
					artikel
70
				SET
71
					letzte_aenderung_von='".$_SESSION["username"]."',
72
			";
73
			foreach ($daten as $key => $value)
74
			{
75
				$felder[] = $key."=".$GLOBALS["order_db"]->escape($value);
76
			}
77
			$sql .= implode(",", $felder);
78
			$sql .= "
79
				WHERE
80
					id=".$this->input->post('ID')."
81
			";
82
			$res = $this->db->query($sql);
83
			$meta = $this->input->post('metatags');
84
			$preise = $this->input->post('preise');
85
			$auispraegungen = $this->input->post('auspraegung');
86
			$optionen = $this->input->post('optionen');
87
			$this->metatags->save($meta, 'artikel');
1991 lars 88
			$this->preise->save($preise);
1796 lars 89
		}
1733 lars 90
		if ($res)
1686 lars 91
		{
92
			echo "Daten wurden erfolgreich geändert!";
93
		}
94
		else
95
		{
96
			echo "Leider ist ein Fehler aufgetreten. Bitte versuchen Sie es später noch einmal!";
97
		}
1672 lars 98
	}
1759 lars 99
 
100
	public function del($id)
101
	{
102
		$sql = "UPDATE
103
				artikel
104
			SET
105
				father=-2,
106
				letzte_aenderung_von='".$_SESSION["username"]."'
107
			WHERE
108
				id=".$id."
109
		";
110
		$res = $this->db->query($sql);
111
	}
1796 lars 112
 
1766 lars 113
	public function reset_cache($id)
1764 lars 114
	{
115
		$sql = "UPDATE
116
				artikel
117
			SET
118
				parse_date=0,
119
				letzte_aenderung_von='".$_SESSION["username"]."'
120
			WHERE
121
				id=".$id."
122
		";
123
		$res = $this->db->query($sql);
124
		if ($res)
125
		{
126
			echo "Cache wurde erfolgreich zurückgesetzt!";
127
		}
128
		else
129
		{
130
			echo "Leider ist ein Fehler aufgetreten. Bitte versuchen Sie es später noch einmal!";
131
		}
132
	}
1474 lars 133
}