Increase size of upload_target_type column, and add missing indexes

This commit is contained in:
Kijin Sung 2023-09-05 02:34:44 +09:00
parent 0f1ea1dbc2
commit a99f56c7bc
2 changed files with 60 additions and 12 deletions

View file

@ -60,14 +60,10 @@ class File extends ModuleObject
if(!$oModuleModel->getTrigger('module.deleteModule', 'file', 'controller', 'triggerDeleteModuleFiles', 'after')) return true;
// 2007. 10. 19 Call a trigger to set up the file permissions before displaying
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'file', 'view', 'triggerDispFileAdditionSetup', 'before')) return true;
// A column to determine a target type
if(!$oDB->isColumnExists('files', 'upload_target_type')) return true;
// 2012. 08. 29 Add a trigger to copy additional setting when the module is copied
if(!$oModuleModel->getTrigger('module.procModuleAdminCopyModule', 'file', 'controller', 'triggerCopyModule', 'after')) return true;
if(!$oDB->isColumnExists('files', 'cover_image')) return true;
if(!$oModuleModel->getTrigger('document.moveDocumentModule', 'file', 'controller', 'triggerMoveDocument', 'after'))
{
return true;
@ -80,6 +76,21 @@ class File extends ModuleObject
{
return true;
}
// Check columns
if(!$oDB->isColumnExists('files', 'upload_target_type'))
{
return true;
}
if($oDB->getColumnInfo('files', 'upload_target_type')->size < 20)
{
return true;
}
if(!$oDB->isColumnExists('files', 'cover_image'))
{
return true;
}
if(!$oDB->isColumnExists('files', 'thumbnail_filename'))
{
return true;
@ -112,6 +123,21 @@ class File extends ModuleObject
{
return true;
}
// Check indexes
if (!$oDB->isIndexExists('files', 'idx_upload_target_type'))
{
return true;
}
if (!$oDB->isIndexExists('files', 'idx_cover_image'))
{
return true;
}
if ($oDB->isIndexExists('files', 'idx_list_order'))
{
return true;
}
return false;
}
@ -181,17 +207,11 @@ class File extends ModuleObject
// 2007. 10. 19 Call a trigger to set up the file permissions before displaying
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'file', 'view', 'triggerDispFileAdditionSetup', 'before'))
$oModuleController->insertTrigger('module.dispAdditionSetup', 'file', 'view', 'triggerDispFileAdditionSetup', 'before');
// A column to determine a target type
if(!$oDB->isColumnExists('files', 'upload_target_type')) $oDB->addColumn('files', 'upload_target_type', 'char', '3');
// 2012. 08. 29 Add a trigger to copy additional setting when the module is copied
if(!$oModuleModel->getTrigger('module.procModuleAdminCopyModule', 'file', 'controller', 'triggerCopyModule', 'after'))
{
$oModuleController->insertTrigger('module.procModuleAdminCopyModule', 'file', 'controller', 'triggerCopyModule', 'after');
}
if(!$oDB->isColumnExists('files', 'cover_image')) $oDB->addColumn('files', 'cover_image', 'char', '1', 'N');
if(!$oModuleModel->getTrigger('document.moveDocumentModule', 'file', 'controller', 'triggerMoveDocument', 'after'))
{
$oModuleController->insertTrigger('document.moveDocumentModule', 'file', 'controller', 'triggerMoveDocument', 'after');
@ -204,6 +224,20 @@ class File extends ModuleObject
{
$oModuleController->insertTrigger('comment.copyCommentByDocument', 'file', 'controller', 'triggerAddCopyCommentByDocument', 'add');
}
// Check columns
if(!$oDB->isColumnExists('files', 'upload_target_type'))
{
$oDB->addColumn('files', 'upload_target_type', 'varchar', '20', null, false, 'upload_target_srl');
}
if($oDB->getColumnInfo('files', 'upload_target_type')->size < 20)
{
$oDB->modifyColumn('files', 'upload_target_type', 'varchar', 20, null, false);
}
if(!$oDB->isColumnExists('files', 'cover_image'))
{
$oDB->addColumn('files', 'cover_image', 'char', '1', 'N', false, 'isvalid');
}
if(!$oDB->isColumnExists('files', 'thumbnail_filename'))
{
$oDB->addColumn('files', 'thumbnail_filename', 'varchar', '250', null, false, 'uploaded_filename');
@ -240,6 +274,20 @@ class File extends ModuleObject
{
$oDB->addColumn('files', 'duration', 'number', '11', null, false, 'height');
}
// Check indexes
if (!$oDB->isIndexExists('files', 'idx_upload_target_type'))
{
$oDB->addIndex('files', 'idx_upload_target_type', ['upload_target_type']);
}
if (!$oDB->isIndexExists('files', 'idx_cover_image'))
{
$oDB->addIndex('files', 'idx_cover_image', ['cover_image']);
}
if ($oDB->isIndexExists('files', 'idx_list_order'))
{
$oDB->dropIndex('files', 'idx_list_order');
}
}
/**

View file

@ -1,7 +1,7 @@
<table name="files">
<column name="file_srl" type="number" size="11" notnull="notnull" primary_key="primary_key" />
<column name="upload_target_srl" type="number" size="11" default="0" notnull="notnull" index="idx_upload_target_srl" />
<column name="upload_target_type" type="char" size="3" index="idx_upload_target_type" />
<column name="upload_target_type" type="varchar" size="20" index="idx_upload_target_type" />
<column name="sid" type="varchar" size="60" />
<column name="module_srl" type="number" size="11" default="0" notnull="notnull" index="idx_module_srl" />
<column name="member_srl" type="number" size="11" notnull="notnull" index="idx_member_srl" />
@ -18,7 +18,7 @@
<column name="duration" type="number" size="11" />
<column name="comment" type="varchar" size="250" />
<column name="isvalid" type="char" size="1" default="N" index="idx_is_valid" />
<column name="cover_image" type="char" size="1" default="N" notnull="notnull" index="idx_list_order" />
<column name="cover_image" type="char" size="1" default="N" notnull="notnull" index="idx_cover_image" />
<column name="regdate" type="date" index="idx_regdate" />
<column name="ipaddress" type="varchar" size="60" notnull="notnull" index="idx_ipaddress"/>
</table>