mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-26 09:04:28 +00:00
Message
This commit is contained in:
@@ -8,14 +8,25 @@ class Migration_Message extends CI_Migration {
|
||||
{
|
||||
if (! $this->db->table_exists('public.tbl_msg_message'))
|
||||
{
|
||||
$this->db->insert('system.tbl_berechtigung', array(
|
||||
'berechtigung_kurzbz' => 'basis/message',
|
||||
'beschreibung' => 'Nachrichtensystem von FH-Complete'));
|
||||
$this->db->insert('system.tbl_rolleberechtigung', array(
|
||||
'berechtigung_kurzbz' => 'basis/message',
|
||||
'rolle_kurzbz' => 'admin',
|
||||
'art' => 'suid'));
|
||||
|
||||
$query= "
|
||||
CREATE TABLE public.tbl_msg_message (
|
||||
message_id serial,
|
||||
thread_id bigint NOT NULL,
|
||||
person_id bigint NOT NULL,
|
||||
subject varchar(256) NOT NULL,
|
||||
body text NOT NULL,
|
||||
priority smallint NOT NULL DEFAULT 0,
|
||||
person_id bigint NOT NULL,
|
||||
cdate timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
relationmessage_id bigint,
|
||||
oe_kurzbz varchar(32),
|
||||
insertamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
insertvon varchar(32),
|
||||
PRIMARY KEY (message_id)
|
||||
);
|
||||
COMMENT ON COLUMN public.tbl_msg_message.person_id IS 'Sender';
|
||||
@@ -27,37 +38,45 @@ class Migration_Message extends CI_Migration {
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_message_message_id_seq TO admin;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_message_message_id_seq TO vilesci;
|
||||
|
||||
CREATE TABLE public.tbl_msg_participant (
|
||||
CREATE TABLE public.tbl_msg_recipient (
|
||||
person_id bigint NOT NULL,
|
||||
thread_id bigint NOT NULL,
|
||||
cdate timestamp NOT NULL DEFAULT now(),
|
||||
PRIMARY KEY (person_id,thread_id)
|
||||
message_id bigint NOT NULL,
|
||||
insertamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
insertvon varchar(32),
|
||||
PRIMARY KEY (person_id,message_id)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_msg_participant TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_participant TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_participant TO vilesci;
|
||||
GRANT SELECT ON TABLE public.tbl_msg_recipient TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_recipient TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_recipient TO vilesci;
|
||||
|
||||
CREATE TABLE public.tbl_msg_status (
|
||||
message_id bigint NOT NULL,
|
||||
person_id bigint NOT NULL,
|
||||
status smallint NOT NULL,
|
||||
statusinfo text,
|
||||
insertamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
insertvon varchar(32),
|
||||
updateamum timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updatevon varchar(32),
|
||||
PRIMARY KEY (message_id,person_id)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_msg_status TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_status TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_status TO vilesci;
|
||||
|
||||
CREATE TABLE public.tbl_msg_thread (
|
||||
thread_id serial,
|
||||
subject text,
|
||||
PRIMARY KEY (thread_id)
|
||||
CREATE TABLE public.tbl_msg_attachment (
|
||||
attachment_id serial,
|
||||
message_id bigint NOT NULL,
|
||||
name text,
|
||||
filename text,
|
||||
PRIMARY KEY (message_id)
|
||||
);
|
||||
GRANT SELECT ON TABLE public.tbl_msg_thread TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_thread TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_thread TO vilesci;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_thread_thread_id_seq TO web;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_thread_thread_id_seq TO admin;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_thread_thread_id_seq TO vilesci;
|
||||
GRANT SELECT ON TABLE public.tbl_msg_attachment TO web;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_attachment TO admin;
|
||||
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tbl_msg_attachment TO vilesci;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_attachment_attachment_id_seq TO web;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_attachment_attachment_id_seq TO admin;
|
||||
GRANT SELECT, UPDATE ON SEQUENCE public.tbl_msg_attachment_attachment_id_seq TO vilesci;
|
||||
";
|
||||
if (!$this->db->simple_query($query))
|
||||
{
|
||||
@@ -68,10 +87,21 @@ class Migration_Message extends CI_Migration {
|
||||
|
||||
public function down()
|
||||
{
|
||||
$this->dbforge->drop_table('public.tbl_msg_message');
|
||||
$this->dbforge->drop_table('public.tbl_msg_participant');
|
||||
$this->dbforge->drop_table('public.tbl_msg_status');
|
||||
$this->dbforge->drop_table('public.tbl_msg_thread');
|
||||
try
|
||||
{
|
||||
$this->db->delete('system.tbl_rolleberechtigung', array('berechtigung_kurzbz' => 'basis/message'));
|
||||
$this->db->delete('system.tbl_berechtigung', array('berechtigung_kurzbz' => 'basis/message'));
|
||||
$this->dbforge->drop_table('public.tbl_msg_recipient');
|
||||
$this->dbforge->drop_table('public.tbl_msg_status');
|
||||
$this->dbforge->drop_table('public.tbl_msg_attachment');
|
||||
$this->dbforge->drop_table('public.tbl_msg_message');
|
||||
echo "Table public.tbl_msg_message, public.tbl_msg_status, public.tbl_msg_attachment and public.tbl_msg_recipient dropped!";
|
||||
}
|
||||
catch(Exception $e)
|
||||
{
|
||||
echo 'Exception abgefangen: ', $e->getMessage(), "\n";
|
||||
echo $this->db->error();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user