1
0
Fork 0
mirror of https://github.com/Oreolek/ifhub.club.git synced 2024-05-01 00:19:23 +03:00

Версия 1.0.1

This commit is contained in:
Mzhelskiy Maxim 2012-08-06 13:11:56 +04:00
parent a845b5c9ec
commit 0576ccb2e5
7 changed files with 141 additions and 16 deletions

View file

@ -18,7 +18,7 @@
/**
* Основные константы
*/
define('LS_VERSION','1.0');
define('LS_VERSION','1.0.1');
/**
* Operations with Config object

View file

@ -113,4 +113,27 @@ INSERT INTO `prefix_user_field` (`type`, `name`, `title`, `pattern`) VALUES
ALTER TABLE `prefix_favourite_tag` ADD INDEX ( `text` );
ALTER TABLE `prefix_vote` ADD `vote_ip` VARCHAR( 15 ) NOT NULL DEFAULT '',
ADD INDEX ( `vote_ip` );
ADD INDEX ( `vote_ip` );
ALTER TABLE `prefix_user` ADD `user_settings_timezone` VARCHAR( 6 ) NULL DEFAULT NULL AFTER `user_settings_notice_new_friend`;
CREATE TABLE IF NOT EXISTS `prefix_user_changemail` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) unsigned NOT NULL,
`date_add` datetime NOT NULL,
`date_used` datetime DEFAULT NULL,
`date_expired` datetime NOT NULL,
`mail_from` varchar(50) NOT NULL,
`mail_to` varchar(50) NOT NULL,
`code_from` varchar(32) NOT NULL,
`code_to` varchar(32) NOT NULL,
`confirm_from` tinyint(1) NOT NULL DEFAULT '0',
`confirm_to` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
KEY `code_from` (`code_from`),
KEY `code_to` (`code_to`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `prefix_user_changemail`
ADD CONSTRAINT `prefix_user_changemail_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `prefix_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;

View file

@ -17,7 +17,7 @@
error_reporting(E_ALL);
set_time_limit(0);
define('LS_VERSION','1.0');
define('LS_VERSION','1.0.1');
class Install {
/**
@ -637,7 +637,17 @@ class Install {
/**
* Если указана конвертация старой базы данных
*/
list($bResult,$aErrors) = array_values($this->ConvertDatabase('convert_0.5.1_to_1.0.sql',$aParams));
list($bResult,$aErrors) = array_values($this->ConvertDatabase('convert_0.5.1_to_1.0.1.sql',$aParams));
if(!$bResult) {
foreach($aErrors as $sError) $this->aMessages[] = array('type'=>'error','text'=>$sError);
$this->Layout('steps/db.tpl');
return false;
}
} elseif ($aParams['convert_from_10']) {
/**
* Если указана конвертация старой базы данных (1.0 -> 1.0.1)
*/
list($bResult,$aErrors) = array_values($this->ConvertDatabaseFrom10('convert_1.0_to_1.0.1.sql',$aParams));
if(!$bResult) {
foreach($aErrors as $sError) $this->aMessages[] = array('type'=>'error','text'=>$sError);
$this->Layout('steps/db.tpl');
@ -1171,7 +1181,7 @@ class Install {
return !in_array($aParams['prefix'].'user_note',$aDbTables);
}
/**
* Конвертирует базу данных версии 0.5.1 в базу данных версии 1.0
* Конвертирует базу данных версии 0.5.1 в базу данных версии 1.0.1
*
* @return bool
*/
@ -1206,7 +1216,7 @@ class Install {
}
}
/**
* Необходимая конвертация в 1.0 из 0.5.1
* Необходимая конвертация в 1.0.1 из 0.5.1
*/
/**
@ -1665,6 +1675,61 @@ class Install {
}
return array('result'=>false,'errors'=>$aErrors);
}
/**
* Проверяем, нуждается ли база в конвертации или нет
*
* @param array $aParams
* @return bool
*/
protected function ValidateConvertDatabaseFrom10($aParams) {
/**
* Проверяем, нуждается ли база в конвертации или нет
*
*/
$sTable=$aParams['prefix'].'user';
return !$this->isFieldExistsDatabase($sTable,'user_settings_timezone');
}
/**
* Конвертирует базу данных версии 1.0 в базу данных версии 1.0.1
*
* @return bool
*/
protected function ConvertDatabaseFrom10($sFilePath,$aParams) {
if(!$this->ValidateConvertDatabaseFrom10($aParams)) {
return array('result'=>false,'errors'=>array($this->Lang("error_database_converted_already")));
}
$sFileQuery = @file_get_contents($sFilePath);
if(!$sFileQuery) return array('result'=>false,'errors'=>array($this->Lang("config_file_not_exists", array('path'=>$sFilePath))));
if(isset($aParams['prefix'])) $sFileQuery = str_replace('prefix_', $aParams['prefix'], $sFileQuery);
$aQuery=explode(';',$sFileQuery);
/**
* Массив для сбора ошибок
*/
$aErrors = array();
/**
* Выполняем запросы по очереди
*/
foreach($aQuery as $sQuery){
$sQuery = trim($sQuery);
/**
* Заменяем движек, если таковой указан в запросе
*/
if(isset($aParams['engine'])) $sQuery=str_ireplace('ENGINE=InnoDB', "ENGINE={$aParams['engine']}",$sQuery);
if($sQuery!='') {
$bResult=mysql_query($sQuery);
if(!$bResult) $aErrors[] = mysql_error();
}
}
if(count($aErrors)==0) {
return array('result'=>true,'errors'=>null);
}
return array('result'=>false,'errors'=>$aErrors);
}
/**
* Добавление значения в поле таблицы с типом enum
*

View file

@ -55,7 +55,7 @@ return array(
'install_title'=>'LiveStreet Installation',
'step'=>'Step',
'start_paragraph'=>'<p>Welcome to LiveStreet &copy; 1.0 installation. </p><p><b>Notice:</b> You have to rename file - /config/config.local.php.dist to config.local.php and apply read-write (rw) permision to it.</p><p><b>Notice:</b> Make sure that the following directories have rw permissions: /tmp, /logs, /uploads, /templates/compiled, /templates/cache</p>',
'start_paragraph'=>'<p>Welcome to LiveStreet &copy; 1.0.1 installation. </p><p><b>Notice:</b> You have to rename file - /config/config.local.php.dist to config.local.php and apply read-write (rw) permision to it.</p><p><b>Notice:</b> Make sure that the following directories have rw permissions: /tmp, /logs, /uploads, /templates/compiled, /templates/cache</p>',
'php_params'=>'General PHP Configuration',
'php_params_version'=>'PHP ver. 5.2.0 or higher',
@ -79,7 +79,7 @@ return array(
'db_params_port_notice'=>'It might be a good choice to leave it as 3306 :)',
'db_params_name'=>'DB name',
'db_params_create'=>'Create DB',
'db_params_convert'=>'Convert 0.5.1 DB to 1.0',
'db_params_convert'=>'Convert 0.5.1 DB to 1.0.1',
'db_params_convert_from_10'=>'Convert 1.0 DB to 1.0.1',
'db_params_user'=>'Username',
'db_params_password'=>'Password',
@ -89,7 +89,7 @@ return array(
'db_params_engine_notice'=>'InnoDB is recommended',
'error_table_select'=>'Query error whilst getting data from %%table%%',
'error_database_converted_already'=>'DB structure suits v. 1.0 hence conversion aborted',
'error_database_converted_already'=>'DB structure suits v. 1.0.1 hence conversion aborted',
'admin_params'=>'Administrator Details Configuration',
'admin_params_login'=>'Login',

View file

@ -55,7 +55,7 @@ return array(
'install_title'=>'Установка LiveStreet',
'step'=>'Шаг',
'start_paragraph'=>'<p>Добро пожаловать в инсталлятор LiveStreet &copy; 1.0. Ознакомьтесь с результатами и следуйте подсказкам.</p><p><b>Внимание.</b> Для успешной иснталяции вы должны переименовать файл /config/config.local.php.dist на config.local.php и дать этому файлу права на запись.</p><p><b>Внимание.</b> Директории /tmp, /logs, /uploads, /templates/compiled, /templates/cache должны иметь права на запись.</p>',
'start_paragraph'=>'<p>Добро пожаловать в инсталлятор LiveStreet &copy; 1.0.1. Ознакомьтесь с результатами и следуйте подсказкам.</p><p><b>Внимание.</b> Для успешной иснталяции вы должны переименовать файл /config/config.local.php.dist на config.local.php и дать этому файлу права на запись.</p><p><b>Внимание.</b> Директории /tmp, /logs, /uploads, /templates/compiled, /templates/cache должны иметь права на запись.</p>',
'php_params'=>'Основные настройки PHP',
'php_params_version'=>'PHP версии не ниже 5.2.0',
@ -79,7 +79,7 @@ return array(
'db_params_port_notice'=>'Скорее всего правильным решение будет оставить 3306 :)',
'db_params_name'=>'Название базы данных',
'db_params_create'=>'Создать базу данных',
'db_params_convert'=>'Конвертировать базу 0.5.1 в 1.0',
'db_params_convert'=>'Конвертировать базу 0.5.1 в 1.0.1',
'db_params_convert_from_10'=>'Конвертировать базу 1.0 в 1.0.1',
'db_params_user'=>'Имя пользователя',
'db_params_password'=>'Пароль',
@ -89,7 +89,7 @@ return array(
'db_params_engine_notice'=>'Рекомендуется использовать InnoDB',
'error_table_select'=>'Ошибка запроса на выборку данных из таблицы %%table%%',
'error_database_converted_already'=>'Конвертация отменена, так как структура базы данных соответствует версии 1.0',
'error_database_converted_already'=>'Конвертация отменена, так как структура базы данных соответствует версии 1.0.1',
'admin_params'=>'Настройка данных администратора',
'admin_params_login'=>'Логин',

View file

@ -1,5 +1,5 @@
--
-- Database LiveStreet version 1.0
-- Database LiveStreet version 1.0.1
--
-- --------------------------------------------------------
@ -36,7 +36,7 @@ CREATE TABLE IF NOT EXISTS `prefix_blog` (
--
INSERT INTO `prefix_blog` (`blog_id`, `user_owner_id`, `blog_title`, `blog_description`, `blog_type`, `blog_date_add`, `blog_date_edit`, `blog_rating`, `blog_count_vote`, `blog_count_user`, `blog_count_topic`, `blog_limit_rating_topic`, `blog_url`, `blog_avatar`) VALUES
(1, 1, 'Blog by admin', 'This is your personal blog.', 'personal', '2012-04-10 00:00:00', NULL, 0.000, 0, 0, 0, -1000.000, NULL, '0');
(1, 1, 'Blog by admin', 'This is your personal blog.', 'personal', '2012-08-07 00:00:00', NULL, 0.000, 0, 0, 0, -1000.000, NULL, '0');
-- --------------------------------------------------------
@ -631,6 +631,7 @@ CREATE TABLE IF NOT EXISTS `prefix_user` (
`user_settings_notice_new_talk` tinyint(1) NOT NULL DEFAULT '1',
`user_settings_notice_reply_comment` tinyint(1) NOT NULL DEFAULT '1',
`user_settings_notice_new_friend` tinyint(1) NOT NULL DEFAULT '1',
`user_settings_timezone` varchar(6) DEFAULT NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_login` (`user_login`),
UNIQUE KEY `user_mail` (`user_mail`),
@ -644,8 +645,8 @@ CREATE TABLE IF NOT EXISTS `prefix_user` (
-- Дамп данных таблицы `prefix_user`
--
INSERT INTO `prefix_user` (`user_id`, `user_login`, `user_password`, `user_mail`, `user_skill`, `user_date_register`, `user_date_activate`, `user_date_comment_last`, `user_ip_register`, `user_rating`, `user_count_vote`, `user_activate`, `user_activate_key`, `user_profile_name`, `user_profile_sex`, `user_profile_country`, `user_profile_region`, `user_profile_city`, `user_profile_birthday`, `user_profile_about`, `user_profile_date`, `user_profile_avatar`, `user_profile_foto`, `user_settings_notice_new_topic`, `user_settings_notice_new_comment`, `user_settings_notice_new_talk`, `user_settings_notice_reply_comment`, `user_settings_notice_new_friend`) VALUES
(1, 'admin', '21232f297a57a5a743894a0e4a801fc3', 'admin@admin.adm', 0.000, '2012-04-10 00:00:00', NULL, NULL, '127.0.0.1', 0.000, 0, 1, NULL, NULL, 'other', NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, 1, 1, 1, 1, 1);
INSERT INTO `prefix_user` (`user_id`, `user_login`, `user_password`, `user_mail`, `user_skill`, `user_date_register`, `user_date_activate`, `user_date_comment_last`, `user_ip_register`, `user_rating`, `user_count_vote`, `user_activate`, `user_activate_key`, `user_profile_name`, `user_profile_sex`, `user_profile_country`, `user_profile_region`, `user_profile_city`, `user_profile_birthday`, `user_profile_about`, `user_profile_date`, `user_profile_avatar`, `user_profile_foto`, `user_settings_notice_new_topic`, `user_settings_notice_new_comment`, `user_settings_notice_new_talk`, `user_settings_notice_reply_comment`, `user_settings_notice_new_friend`, `user_settings_timezone`) VALUES
(1, 'admin', '21232f297a57a5a743894a0e4a801fc3', 'admin@admin.adm', 0.000, '2012-04-10 00:00:00', NULL, NULL, '127.0.0.1', 0.000, 0, 1, NULL, NULL, 'other', NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, 1, 1, 1, 1, 1, NULL);
-- --------------------------------------------------------
@ -683,6 +684,35 @@ CREATE TABLE IF NOT EXISTS `prefix_user_administrator` (
INSERT INTO `prefix_user_administrator` (`user_id`) VALUES
(1);
-- --------------------------------------------------------
--
-- Структура таблицы `prefix_user_changemail`
--
CREATE TABLE IF NOT EXISTS `prefix_user_changemail` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) unsigned NOT NULL,
`date_add` datetime NOT NULL,
`date_used` datetime DEFAULT NULL,
`date_expired` datetime NOT NULL,
`mail_from` varchar(50) NOT NULL,
`mail_to` varchar(50) NOT NULL,
`code_from` varchar(32) NOT NULL,
`code_to` varchar(32) NOT NULL,
`confirm_from` tinyint(1) NOT NULL DEFAULT '0',
`confirm_to` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
KEY `code_from` (`code_from`),
KEY `code_to` (`code_to`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
--
-- Дамп данных таблицы `prefix_user_changemail`
--
-- --------------------------------------------------------
--
@ -967,6 +997,12 @@ ALTER TABLE `prefix_userfeed_subscribe`
ALTER TABLE `prefix_user_administrator`
ADD CONSTRAINT `user_administrator_fk` FOREIGN KEY (`user_id`) REFERENCES `prefix_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
--
-- Ограничения внешнего ключа таблицы `prefix_user_changemail`
--
ALTER TABLE `prefix_user_changemail`
ADD CONSTRAINT `prefix_user_changemail_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `prefix_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
--
-- Ограничения внешнего ключа таблицы `prefix_user_field_value`
--

View file

@ -17,6 +17,7 @@
<p>
<label><input type="checkbox" class="input-checkbox" name="install_db_create" value="1" ___INSTALL_DB_CREATE_CHECK___ /> ___LANG_DB_PARAMS_CREATE___</label>
<label><input type="checkbox" class="input-checkbox" name="install_db_convert" value="1" ___INSTALL_DB_CONVERT_CHECK___ /> ___LANG_DB_PARAMS_CONVERT___</label>
<label><input type="checkbox" class="input-checkbox" name="install_db_convert_from_10" value="1" ___INSTALL_DB_CONVERT_FROM_10_CHECK___ /> ___LANG_DB_PARAMS_CONVERT_FROM_10___</label>
</p>
<p><label for="install_db_user">___LANG_DB_PARAMS_USER___:</label>