DROP TABLE IF EXISTS ?_config;
CREATE TABLE IF NOT EXISTS ?_config (
	 `type` enum('config','access') NOT NULL default 'config',
	 `module` varchar(100) NOT NULL default 'core',
	 `group_id` int(11) NOT NULL default '-1' COMMENT '-1 - гости',
	 `key` varchar(100) NOT NULL,
	 `value` varchar(255) NOT NULL default '',
	 PRIMARY KEY  (`group_id` , `module` , `key` , `type`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_groups;
CREATE TABLE IF NOT EXISTS ?_groups (
  `group_id` tinyint(4) NOT NULL auto_increment,
  `parent_id` int(11) NOT NULL default '0',
  `group_name` varchar(50) default NULL,
  PRIMARY KEY  (`group_id`),
  KEY parent_id (parent_id)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO ?_groups VALUES  (-1, 0, 'Незарегистрированные пользователи');
INSERT INTO ?_groups VALUES  (1, -1, 'Суперадминистратор');
INSERT INTO ?_groups VALUES  (2, -1, 'Зарегистрированные пользователи');

DROP TABLE IF EXISTS ?_includes;
CREATE TABLE IF NOT EXISTS ?_includes (
  `tree_id` int(11) NOT NULL default '0',
  `module_id` int(11) NOT NULL default '0',
  PRIMARY KEY  (`tree_id`,`module_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO ?_includes (`tree_id`, `module_id`) VALUES
(1, 8),
(1, 17),
(2, 8),
(2, 17),
(2, 25),
(3, 18),
(4, 2),
(5, 1),
(6, 3),
(8, 5),
(9, 6),
(13, 12),
(14, 6),
(15, 16),
(17, 19),
(18, 15),
(21, 22),
(22, 24),
(23, 23);


DROP TABLE IF EXISTS ?_langs;
CREATE TABLE ?_langs (
  `lang_id` int(11) NOT NULL auto_increment,
  `lang_name` varchar(100) NOT NULL default '',
  `key` varchar(5) NOT NULL default '',
  PRIMARY KEY  (`lang_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

INSERT INTO ?_langs (`lang_id`, `lang_name`, `key`) VALUES
(1, 'Русский', 'ru');

DROP TABLE IF EXISTS ?_modules;
CREATE TABLE IF NOT EXISTS ?_modules (
  `module_id` int(11) NOT NULL auto_increment,
  `module` varchar(255) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `section` varchar(60) default NULL,
  `depends` varchar(60) default NULL,
  `component` tinyint(1) NOT NULL default 0,
  `static` tinyint(1) NOT NULL default 0,
  `disable` tinyint(1) NOT NULL default 0,
  `runlevel` int(11) NOT NULL default '1500',
  PRIMARY KEY  (`module_id`),
  UNIQUE KEY `module` (`module`),
  KEY `multiple` (`component`),
  KEY `static` (`static`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

INSERT INTO ?_modules (`module_id`, `module`, `name`, `depends`, `component`, `static`, `disable`, `runlevel`) VALUES 
(1, 'login', 'Авторизация', NULL, 1, 0, 0, 1000),
(2, 'admin_tree', 'Структура', NULL, 1, 0, 0, 1000),
(3, 'admin_modules', 'Модули', NULL, 1, 0, 0, 1000),
(5, 'admin_users', 'Пользователи', NULL, 1, 0, 0, 1000),
(6, 'admin_pages', 'Текстовые страницы', NULL, 1, 0, 0, 1000),
(8, 'menu_level', 'Главное меню', NULL, 0, 1, 0, 1500),
(12, 'sitemap', 'Карта сайта', NULL, 1, 0, 0, 1000),
(15, 'admin_groups', 'Управление группами', NULL, 1, 0, 0, 1000),
(17, 'lc_guide', 'Руководство пользователя', NULL, 0, 1, 0, 1500),
(18, 'admin_settings', 'Настройки сайта', NULL, 1, 0, 0, 1000),
(19, 'admin', 'Админка', NULL, 1, 0, 0, 1000),
(22, 'admin_dumper', 'Дампер', NULL, 1, 0, 0, 1000),
(23, 'search', 'Поиск по сайту', NULL, 1, 0, 0, 1000),
(24, 'feedback', 'Обратная связь', NULL, 1, 0, 0, 1000),
(25, 'login_static', 'Авторизация (статичная форма)', NULL, 0, 1, 0, 1500);

DROP TABLE IF EXISTS ?_pages;
CREATE TABLE IF NOT EXISTS ?_pages (
  `page_id` int(11) NOT NULL AUTO_INCREMENT,
  `tree_id` int(11) NOT NULL DEFAULT '0',
  `title` varchar(255) NOT NULL DEFAULT '',
  `text` text NOT NULL,
  `description` varchar(255) DEFAULT NULL,
  `keywords` varchar(255) DEFAULT NULL,
  `created` int(10) unsigned NOT NULL,
  `updated` int(10) unsigned NOT NULL,
  `use_comments` tinyint(4) NOT NULL DEFAULT '0',
  PRIMARY KEY (`page_id`),
  KEY `updated` (`updated`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

INSERT INTO ?_pages VALUES (1, 14, 'Вас приветствует LAB CMS!', '<h2><b>LabCMS</b> приветствует Вас!</h2>\r\n<p>&nbsp;</p>\r\n<ul>\r\n    <li>Для начала вам нужно <a href="/login?redirect=/">авторизоваться.</a></li>\r\n    <li>После этого вам станут доступны <a href="/admin">страницы управления сайтом</a>\r\n    </li>\r\n</ul>', '', '', UNIX_TIMESTAMP(NOW()), UNIX_TIMESTAMP(NOW()), 0);

DROP TABLE IF EXISTS ?_redirects;
CREATE TABLE ?_redirects (
  `id` int(11) NOT NULL auto_increment,
  `pattern` varchar(255) NOT NULL default '',
  `link` varchar(255) NOT NULL default '',
  `pos` int(11) NOT NULL default '0',
  `active` tinyint(4) NOT NULL default 0,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_tree;
CREATE TABLE ?_tree (
  `tree_id` int(11) NOT NULL auto_increment,
  `parent_id` int(11) NOT NULL default '0',
  `symlink` int(11) NOT NULL default '0',
  `name` tinytext NOT NULL,
  `params` varchar(255) NOT NULL default '',
  `template` varchar(255) NOT NULL default '',
  `menu` tinyint(1) NOT NULL default '0',
  `sitemap` tinyint(4) NOT NULL default '0',
  `path` varchar(255) NOT NULL default '',
  `pos` int(11) NOT NULL default '0',
  `lang_id` INT NOT NULL default '0',
  `show` tinyint(1) NOT NULL default '1',
  `external` TINYINT NOT NULL DEFAULT '0',
  PRIMARY KEY  (`tree_id`),
  KEY `pos` (`pos`),
  KEY `show` (`show`),
  KEY `menu` (`menu`),
  KEY `sitemap` (`sitemap`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO ?_tree (`tree_id`, `parent_id`, `symlink`, `name`, `params`, `template`, `menu`, `sitemap`, `path`, `pos`, `lang_id`, `show`) VALUES
(1, 0, 0, 'Админка', '', 'default.tpl', 0, 0, '', 1, 0, 0),
(2, 0, 0, 'Все страницы', '', 'default.tpl', 0, 1, '', 0, 0, 0),
(4, 1, 0, 'Структура', '', '0', 1, 0, '/admin/tree', 1, 0, 1),
(5, 2, 0, 'Профиль', '', '', 1, 1, '/login', 10, 0, 1),
(6, 1, 0, 'Модули', '', '0', 1, 0, '/admin/modules', 2, 0, 1),
(8, 1, 0, 'Пользователи', '', '0', 1, 0, '/admin/users', 3, 0, 1),
(9, 1, 0, 'Тексты', 'onlylist=1', '0', 1, 0, '/admin/pages', 7, 0, 1),
(13, 2, 0, 'Карта сайта', '', '', 1, 1, '/sitemap', 5, 0, 1),
(14, 2, 0, 'Главная', '', '', 1, 0, '/', 1, 0, 1),
(3, 1, 0, 'Настройки', '', '0', 1, 0, '/admin/settings', 6, 0, 1),
(17, 1, 0, 'Главная', '', '0', 1, 0, '/admin', 0, 0, 1),
(18, 1, 0, 'Группы', '', '0', 1, 0, '/admin/groups', 4, 0, 1),
(21, 1, 0, 'Backup', '', '0', 1, 0, '/admin/backup', 8, 0, 1),
(22, 2, 0, 'Обратная связь', '', '', 0, 1, '/feedback', 30, 0, 1),
(23, 2, 0, 'Поиск по сайту', '', '', 0, 1, '/search', 40, 0, 1);

DROP TABLE IF EXISTS ?_users;
CREATE TABLE IF NOT EXISTS ?_users (
  `user_id` int(11) NOT NULL auto_increment,
  `group_id` tinyint(4) NOT NULL default '2',
  `login` varchar(20) NOT NULL default '',
  `pass` varchar(255) NOT NULL default '',
  `email` varchar(50) NOT NULL default '',
  `autologin` char(32) NULL default NULL,
  `register_date` int(11) unsigned NOT NULL default 0,
  `last_visit` int(11) unsigned NOT NULL default 0,
  `last_ip` varbinary(16) default NULL,
  `avatar` tinyint(4) default '0',
  `icq` varchar(12) default '',
  `website` varchar(100) default '',
  `status` tinyint(4) default '0',
  `actkey` varchar(32) default '',
  `realname` varchar(120) default '',
  `rating` INT NOT NULL DEFAULT  '0',
  PRIMARY KEY  (`user_id`),
  UNIQUE KEY `login` (`login`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS ?_users_online;
CREATE TABLE IF NOT EXISTS ?_users_online (
  `user_id` int(11) NOT NULL,
  `request_time` INT( 10 ) UNSIGNED DEFAULT NULL,
  PRIMARY KEY  (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_openid;
CREATE TABLE IF NOT EXISTS ?_openid (
	`id` int(11) NOT NULL auto_increment,
	`user_id` int(11) NOT NULL default '0',
	`openid` varchar(255) NOT NULL default '',
	PRIMARY KEY  (`id`),
	UNIQUE KEY `openid` (`openid`)
	) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_comments;
CREATE TABLE IF NOT EXISTS ?_comments (
  `comment_id` int(11) NOT NULL AUTO_INCREMENT,
  `parent_id` int(11) DEFAULT NULL,
  `item_id` int(11) NOT NULL,
  `text` text,
  `putdate` int(10) unsigned NOT NULL,
  `updated` int(10) unsigned NOT NULL,
  `user_id` int(11) DEFAULT NULL,
  `login` varchar(20) DEFAULT NULL,
  `email` varchar(50) DEFAULT NULL,
  `status` tinyint(1) NOT NULL DEFAULT '1',
  `level` tinyint(1) NOT NULL DEFAULT '0',
  `left_key` int(11) NOT NULL,
  `right_key` int(11) NOT NULL,
  `abuse` varchar(255) DEFAULT NULL,
  `ip` varbinary(16) default NULL,
  `total_votes` int(11) NOT NULL DEFAULT '0',
  `vote_result` int(11) NOT NULL DEFAULT '0',
  `rating` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`comment_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_comments_items;
CREATE TABLE IF NOT EXISTS ?_comments_items (
  `item_id` int(11) NOT NULL AUTO_INCREMENT,
  `key` int(11) NOT NULL,
  `type` tinyint(4) NOT NULL DEFAULT '1',
  `url` varchar(150) NOT NULL,
  `title` varchar(150) NOT NULL,
  `module_id` int(11) NOT NULL,
  `counter` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`item_id`),
  UNIQUE KEY `module_id` (`module_id`,`key`),
  KEY `item_key` (`key`,`module_id`,`item_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_rating_votes;
CREATE TABLE IF NOT EXISTS ?_rating_votes (
  `module_id` int(11) NOT NULL,
  `item_id` int(11) NOT NULL,
  `key` char(10) NOT NULL default '',
  `type` tinyint(4) NOT NULL default '1',
  `user_id` int(11) NOT NULL default '0',
  `voter_id` int(11) NOT NULL,
  `vote` tinyint(4) NOT NULL default '0',
  `value` int(11) NOT NULL default '0',
  `putdate` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  PRIMARY KEY  (`module_id`,`item_id`,`key`, `voter_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_subscribe;
CREATE TABLE IF NOT EXISTS ?_subscribe (
  `user_id` int(11) NOT NULL,
  `item_id` varchar(30) NOT NULL default '',
  PRIMARY KEY  (`user_id`,`item_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_subscribe_status;
CREATE TABLE IF NOT EXISTS ?_subscribe_status (
  `id` int(11) NOT NULL auto_increment,
  `item_id` varchar(30) NOT NULL default '',
  `text` varchar(3000) NOT NULL default '',
  `last_user_id` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `item_id` (`item_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_feedback_form;
CREATE TABLE IF NOT EXISTS ?_feedback_form (
  `id` int(11) NOT NULL auto_increment,
  `tree_id` int(11) NOT NULL,
  `position` int(11) NOT NULL DEFAULT '0',
  `options` text NOT NULL,
PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS ?_i18n;
CREATE TABLE ?_i18n (
`lang` varchar(10) NOT NULL,
`context` char(20) NOT NULL default 'none',
`key` text NOT NULL,
`value` text,
PRIMARY KEY (`lang`, `context`, `key`(256))
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

INSERT INTO ?_i18n (`lang`, `context`, `key`, `value`) VALUES
('en', 'none',  'Кб', ''),
('en', 'none',  'Мб', ''),
('en', 'none',  'б', 'B'),
('en', 'none',  'название группы не может быть пустым', 'Group title can not be empty'),
('en', 'none',  'Этот модуль зависит от модуля "%s" и без него работать не будет', ''),
('en', 'none',  'да', ''),
('en', 'none',  'модуль не найден', ''),
('en', 'none',  'название модуля не может быть пустым', ''),
('en', 'none',  'нет', ''),
('en', 'none',  'вы не можете добавить текст к этому узлу.', ''),
('en', 'none',  'данный url адрес уже используется узлом "%s"', ''),
('en', 'none',  'для данного url адреса уже создана страница "%s"', ''),
('en', 'none',  'для данного узла уже назначен компонент "%s". у узла может быть только один компонент.', 'This node is already assigned to the component "%s". A node can be only one component.'),
('en', 'none',  'для данного узла уже создана страница "%s"', 'This node is already has page "%s"'),
('en', 'none',  'не введен текст страницы', 'The text on the page is empty'),
('en', 'none',  'не введено название страницы', 'You not enter page title'),
('en', 'none',  'паттерн не может быть пустым', 'Pattern can''t be empty'),
('en', 'none',  'ссылка не может быть пустой', 'Link can''t be empty'),
('en', 'none',  'логин не может быть пустым', 'Login can not be empty'),
('en', 'none',  'пользователь не может принадлежать этой группе', 'User can not belong to this group'),
('en', 'none',  'пароли не совпадают', 'Passwords do not match'),
('en', 'none',  'пользователь с таким именем уже существует', 'User with that name already exists'),
('en', 'none',  'введите название блока', 'Block title is empty'),
('en', 'none',  'данные', 'Data'),
('en', 'none',  'название блока', 'Block title'),
('en', 'none',  'Важность', ''),
('en', 'none',  'Статусы', ''),
('en', 'none',  'автор', ''),
('en', 'none',  'версия', ''),
('en', 'none',  'версия не может быть пустой', 'Version can not be empty'),
('en', 'none',  'данный тип файлов не разрешен для загрузки', 'file type is not allowed'),
('en', 'none',  'дата', ''),
('en', 'none',  'исправил', ''),
('en', 'none',  'не выбран тип сообщения!', 'Type of message is not selected'),
('en', 'none',  'не выбрана версия программы!', 'Version is not selected'),
('en', 'none',  'не заполнен текст сообщения', 'Message body is empty'),
('en', 'none',  'не заполнена тема сообщения', 'Subject is empty'),
('en', 'none',  'не заполнено описание!', 'Description  is empty'),
('en', 'none',  'недопустимый формат файла', 'Invalid file format'),
('en', 'none',  'ошибка генерации превью', 'Error generating preview'),
('en', 'none',  'пожалуйста, напишите пошагово как воспроизвести ошибку.', 'Please write step by step how to reproduce the error.'),
('en', 'none',  'список версий', ''),
('en', 'none',  'тема', ''),
('en', 'none',  'тестер', ''),
('en', 'none',  'установить фильтр', ''),
('en', 'none',  'файл %s слишком большой', 'file %s is too large'),
('en', 'none',  'во время операции произошли ошибки:', 'During the operation, the following errors:'),
('en', 'none',  'произошла неизвестная ошибка!', 'An unknown error!'),
('en', 'none',  'управление сайтом', 'site control'),
('en', 'none',  'не все обязательные поля были заполнены', 'Not all the required fields were filled'),
('en', 'none',  'ошибка почтового робота: %s', 'error mail robot: %s'),
('en', 'none',  'имя', 'Name'),
('en', 'none',  'сообщение', 'Message'),
('en', 'none',  'не введено название форума', 'Forum title is empty'),
('en', 'none',  'вы не ввели сообщение', 'Message is empty'),
('en', 'none',  'вы не ввели имя', 'Name is empty'),
('en', 'none',  'пользователь с таким именем уже зарегистрирован!', 'User with this name is already registered'),
('en', 'none',  'вы не ввели тему', 'Subject is empty'),
('en', 'none',  'гостевая книга. добавление сообщения', 'Guestbook. Adding a message'),
('en', 'none',  'такой пользователь уже зарегистрирован', 'User such this has already registered'),
('en', 'none',  'гостевая книга. редактирование сообщения', 'Guestbook. Editing messages'),
('en', 'none',  'гостевая книга', 'Guestbook'),
('en', 'none',  'ответ', 'Answer'),
('en', 'none',  'пока нет ни одного сообщения.', 'There is no messages'),
('en', 'none',  'директория %s не доступна для записи', 'Directory %s is not allowed for record'),
('en', 'none',  'название языка', 'Language title'),
('en', 'none',  'название языка не может быть пустым!', 'Language is empty'),
('en', 'none',  'не могу создать директорию %s', 'Cant create directory %s'),
('en', 'none',  'недоступен для записи файл: ', 'File is not allowed for record: '),
('en', 'none',  'обозначение языка (например ru)', 'Language key (for example en)'),
('en', 'none',  'обозначение языка не может быть пустым!', 'Language code is empty'),
('en', 'none',  'язык:', 'Language'),
('en', 'none',  'сохранить', 'Save'),
('en', 'none',  'email:', ''),
('en', 'none',  'icq:', ''),
('en', 'none',  'аватар:', ''),
('en', 'none',  'авторизация не удалась', ''),
('en', 'none',  'аутентификация не удалась: ', ''),
('en', 'none',  'введите данные для регистрации', ''),
('en', 'none',  'введите логин и пароль', ''),
('en', 'none',  'введите логин или email:', ''),
('en', 'none',  'ввести повторно:', ''),
('en', 'none',  'восстановить пароль', ''),
('en', 'none',  'вы зашли как:', 'You''re logged as '),
('en', 'none',  'выйти', 'logout'),
('en', 'none',  'выход', ''),
('en', 'none',  'данный openid не зарегистрирован: ', ''),
('en', 'none',  'данный тип файла не поддерживается', ''),
('en', 'none',  'домашняя страница:', ''),
('en', 'none',  'если вы не зарегистрированы, то можете зарегистрироваться', 'If you are not registered, you can register'),
('en', 'none',  'если вы не получили на почту код активации, то можете', ''),
('en', 'none',  'забыли пароль?', 'Lost password'),
('en', 'none',  'запомнить меня:', 'Remember be'),
('en', 'none',  'запросить его повторно', ''),
('en', 'none',  'зарегистрирован', ''),
('en', 'none',  'зарегистрироваться', ''),
('en', 'none',  'здесь', 'here'),
('en', 'none',  'и пароль', 'and password'),
('en', 'none',  'изменить', ''),
('en', 'none',  'изменить пароль', ''),
('en', 'none',  'или openid', ''),
('en', 'none',  'или используйте openid', ''),
('en', 'none',  'или используйте openid:', ''),
('en', 'none',  'логин не может быть длиннее 20 символов', ''),
('en', 'none',  'логин уже занят', ''),
('en', 'none',  'логин:', 'Login:'),
('en', 'none',  'надо указать email', ''),
('en', 'none',  'надо указать логин', ''),
('en', 'none',  'настоящее имя:', ''),
('en', 'none',  'не угадали логин или пароль! попробуем еще раз?', ''),
('en', 'none',  'неверно введен пароль', ''),
('en', 'none',  'некорректный openid.', ''),
('en', 'none',  'новый пароль:', ''),
('en', 'none',  'нужна хоть какая-то информация:)', ''),
('en', 'none',  'отправить', 'Send'),
('en', 'none',  'пароль изменен', ''),
('en', 'none',  'пароль не может быть пустым', ''),
('en', 'none',  'пароль:', ''),
('en', 'none',  'последний раз был здесь', ''),
('en', 'none',  'применить', ''),
('en', 'none',  'профиль пользователя', 'User profile'),
('en', 'none',  'редактировать данные', ''),
('en', 'none',  'сдается нам, таких email-ов не бывает', ''),
('en', 'none',  'текущий пароль:', ''),
('en', 'none',  'удалить аватар:', ''),
('en', 'none',  'управление openid авторизацией', ''),
('en', 'none',  'файл слишком большой. разрешены файлы не больше ', ''),
('en', 'none',  'этот email уже используется.', ''),
('en', 'none',  'я пользователь:', ''),
('en', 'none',  'войти', 'enter'),
('en', 'none',  'запомнить меня', 'Remember be'),
('en', 'none',  'логин', 'Login'),
('en', 'none',  'пароль', 'Password'),
('en', 'none',  'регистрация', 'register'),
('en', 'none',  'не введен текст новости', 'Text of new is empty'),
('en', 'none',  'неправильный формат даты', 'Invalid date format'),
('en', 'none',  'поиск запрещен! проверьте настройки модуля поиска.', 'Search is disabled! Check the settings of search module.'),
('en', 'none',  'новости', 'News');
