mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-09 03:32:00 +09:00
Implement creating, renaming, and deleting scrap folders
This commit is contained in:
parent
cf0a5d019c
commit
4a5385a635
10 changed files with 226 additions and 10 deletions
|
|
@ -222,11 +222,12 @@ class memberController extends member
|
|||
return new Object(-1,'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check folder
|
||||
// Check that the target folder exists and belongs to member
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->folder_srl = $folder_srl;
|
||||
$output = executeQueryArray('member.getScrapFolderList', $args);
|
||||
if(!array_filter($output->data, function($folder) use($folder_srl) { return $folder->folder_srl == $folder_srl; }))
|
||||
if(!count($output->data))
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
|
@ -239,6 +240,137 @@ class memberController extends member
|
|||
return executeQuery('member.updateScrapDocumentFolder', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a scrap folder
|
||||
*
|
||||
* @return void|Object (void : success, Object : fail)
|
||||
*/
|
||||
function procMemberInsertScrapFolder()
|
||||
{
|
||||
// Check login information
|
||||
if(!Context::get('is_logged')) return new Object(-1, 'msg_not_logged');
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
// Get new folder name
|
||||
$folder_name = Context::get('name');
|
||||
$folder_name = escape(trim(utf8_normalize_spaces($folder_name)));
|
||||
if(!$folder_name)
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check existing folder with same name
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->name = $folder_name;
|
||||
$output = executeQueryArray('member.getScrapFolderList', $args);
|
||||
if(count($output->data) || $folder_name === lang('default_folder'))
|
||||
{
|
||||
return new Object(-1, 'msg_folder_alreay_exists');
|
||||
}
|
||||
|
||||
// Create folder
|
||||
$args = new stdClass;
|
||||
$args->folder_srl = getNextSequence();
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->name = $folder_name;
|
||||
$args->list_order = $args->folder_srl;
|
||||
$this->add('folder_srl', $args->folder_srl);
|
||||
return executeQuery('member.insertScrapFolder', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename a scrap folder
|
||||
*
|
||||
* @return void|Object (void : success, Object : fail)
|
||||
*/
|
||||
function procMemberRenameScrapFolder()
|
||||
{
|
||||
// Check login information
|
||||
if(!Context::get('is_logged')) return new Object(-1, 'msg_not_logged');
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
// Get new folder name
|
||||
$folder_srl = intval(Context::get('folder_srl'));
|
||||
$folder_name = Context::get('name');
|
||||
$folder_name = escape(trim(utf8_normalize_spaces($folder_name)));
|
||||
if(!$folder_srl || !$folder_name)
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check that the original folder exists and belongs to member
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->folder_srl = $folder_srl;
|
||||
$output = executeQueryArray('member.getScrapFolderList', $args);
|
||||
if(!count($output->data))
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check existing folder with same name
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->not_folder_srl = $folder_srl;
|
||||
$args->name = $folder_name;
|
||||
$output = executeQueryArray('member.getScrapFolderList', $args);
|
||||
if(count($output->data) || $folder_name === lang('default_folder'))
|
||||
{
|
||||
return new Object(-1, 'msg_folder_alreay_exists');
|
||||
}
|
||||
|
||||
// Rename folder
|
||||
$args = new stdClass;
|
||||
$args->folder_srl = $folder_srl;
|
||||
$args->name = $folder_name;
|
||||
return executeQuery('member.updateScrapFolder', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete a scrap folder
|
||||
*
|
||||
* @return void|Object (void : success, Object : fail)
|
||||
*/
|
||||
function procMemberDeleteScrapFolder()
|
||||
{
|
||||
// Check login information
|
||||
if(!Context::get('is_logged')) return new Object(-1, 'msg_not_logged');
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
// Get folder_srl to delete
|
||||
$folder_srl = intval(Context::get('folder_srl'));
|
||||
if(!$folder_srl)
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check that the folder exists and belongs to member
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->folder_srl = $folder_srl;
|
||||
$output = executeQueryArray('member.getScrapFolderList', $args);
|
||||
if(!count($output->data))
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
// Check that the folder is empty
|
||||
$args = new stdClass;
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
$args->folder_srl = $folder_srl;
|
||||
$output = executeQueryArray('member.getScrapDocumentList', $args);
|
||||
if(count($output->data))
|
||||
{
|
||||
return new Object(-1, 'msg_folder_not_empty');
|
||||
}
|
||||
|
||||
// Delete folder
|
||||
$args = new stdClass;
|
||||
$args->folder_srl = $folder_srl;
|
||||
return executeQuery('member.deleteScrapFolder', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Save posts
|
||||
* @deprecated - instead Document Controller - procDocumentTempSave method use
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue