CREATE TABLE email_account_$mid
( 
	id int(11) NOT NULL auto_increment,
	cid int(11) NOT NULL default '0',
	object_id int NOT NULL,
	account varchar(100) NOT NULL default '',
	password varchar(100) NOT NULL default '',
	did int(11) NOT NULL default '0',
	quota bigint(20) NOT NULL default '0',
	status tinyint(3) NOT NULL default '0',
	comment varchar(254) NOT NULL default '',
	PRIMARY KEY  (id),
	KEY cid (cid),
	KEY object_id ( object_id ) 
);

CREATE TABLE email_forward_$mid 
( 
	aid int NOT NULL default '0',
	email varchar(100) NOT NULL default '',
	KEY aid (aid) 
);

CREATE TABLE email_attribute_$mid
( 
	aid int NOT NULL default '0',
	attr_id int NOT NULL default '0',
	value text NOT NULL default '',
	KEY aid (aid) 
);

-- #BLOCK#
DELETE FROM script_event_type WHERE mid=$mid;

SET @mid=$mid, @old_event_id=1, @new_event_id='ru.bitel.bgbilling.modules.email.server.event.AccountCreatedEvent', @event_title='Создан аккаунт';
INSERT INTO script_event_type (mid, event_id, event_mode, title) VALUES (@mid, @new_event_id, 1, @event_title);
INSERT INTO script_function_event_type(fid, mid, event_id) SELECT sfet1.fid, sfet1.mid, @new_event_id FROM script_function_event_type AS sfet1 LEFT JOIN script_function_event_type AS sfet2 ON sfet1.fid=sfet2.fid AND sfet1.mid=sfet2.mid AND sfet2.event_id=@new_event_id WHERE sfet1.mid=@mid AND sfet1.event_id=@old_event_id AND sfet2.fid IS NULL;

SET @mid=$mid, @old_event_id=2, @new_event_id='ru.bitel.bgbilling.modules.email.server.event.AccountUpdateEvent', @event_title='Изменен аккаунт';
INSERT INTO script_event_type (mid, event_id, event_mode, title) VALUES (@mid, @new_event_id, 1, @event_title);
INSERT INTO script_function_event_type(fid, mid, event_id) SELECT sfet1.fid, sfet1.mid, @new_event_id FROM script_function_event_type AS sfet1 LEFT JOIN script_function_event_type AS sfet2 ON sfet1.fid=sfet2.fid AND sfet1.mid=sfet2.mid AND sfet2.event_id=@new_event_id WHERE sfet1.mid=@mid AND sfet1.event_id=@old_event_id AND sfet2.fid IS NULL;

SET @mid=$mid, @old_event_id=3, @new_event_id='ru.bitel.bgbilling.modules.email.server.event.AccountDeleteEvent', @event_title='Удален аккаунт';
INSERT INTO script_event_type (mid, event_id, event_mode, title) VALUES (@mid, @new_event_id, 1, @event_title);
INSERT INTO script_function_event_type(fid, mid, event_id) SELECT sfet1.fid, sfet1.mid, @new_event_id FROM script_function_event_type AS sfet1 LEFT JOIN script_function_event_type AS sfet2 ON sfet1.fid=sfet2.fid AND sfet1.mid=sfet2.mid AND sfet2.event_id=@new_event_id WHERE sfet1.mid=@mid AND sfet1.event_id=@old_event_id AND sfet2.fid IS NULL;

-- #ENDB#

ALTER TABLE email_account_$mid ADD object_id INT NOT NULL;
ALTER TABLE email_account_$mid ADD KEY object_id(object_id);

ALTER TABLE email_forward_$mid CHANGE aid aid INT NOT NULL;

CREATE TABLE email_attribute_$mid 
( aid int NOT NULL default '0', 
  attr_id int NOT NULL default '0',
  value text NOT NULL default '', 
  KEY aid (aid) );

CREATE TABLE IF NOT EXISTS `email_domain_$mid` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(255) NOT NULL default '',
  `comment` text NOT NULL,
  `params` text NOT NULL,
  PRIMARY KEY  (`id`)
);

ALTER TABLE email_account_$mid ADD COLUMN `date1` DATE;
ALTER TABLE email_account_$mid ADD COLUMN `date2` DATE;
ALTER TABLE email_account_$mid ADD COLUMN `need_open` TINYINT(1) NOT NULL;
ALTER TABLE email_account_$mid ADD COLUMN `need_close` TINYINT(1) NOT NULL;
ALTER TABLE email_domain_$mid  ADD COLUMN pos INTEGER DEFAULT 1;