Assign default folder to all previous scraps

This commit is contained in:
Kijin Sung 2017-09-28 12:19:02 +09:00
parent b11a6d82e9
commit ed02a0f064
5 changed files with 78 additions and 2 deletions

View file

@ -410,11 +410,48 @@ class memberView extends member
if(!$oMemberModel->isLogged()) return $this->stop('msg_not_logged');
$logged_info = Context::get('logged_info');
// Check folders
$output = executeQueryArray('member.getScrapFolderList', $args);
$folders = $output->data;
if(!count($folders))
{
$args = new stdClass;
$args->folder_srl = getNextSequence();
$args->member_srl = $logged_info->member_srl;
$args->name = '/DEFAULT/';
$args->list_order = $args->folder_srl;
$output = executeQuery('member.insertScrapFolder', $args);
if(!$output->toBool())
{
return $output;
}
$output = executeQuery('member.updateScrapFolderFromNull', $args);
if(!$output->toBool())
{
return $output;
}
$output = executeQueryArray('member.getScrapFolderList', $args);
$folders = $output->data;
}
// Get default folder if no folder is selected
$folder_srl = (int)Context::get('folder_srl');
if($folder_srl && !count(array_filter($folders, function($folder) use($folder_srl) { return $folder->folder_srl == $folder_srl; })))
{
return new Object(-1, 'msg_invalid_request');
}
if(!$folder_srl && count($folders))
{
$folder_srl = array_first($folders)->folder_srl;
}
// Get scrapped documents in selected folder
$args = new stdClass();
$args->member_srl = $logged_info->member_srl;
$args->folder_srl = $folder_srl;
$args->page = (int)Context::get('page');
$output = executeQuery('member.getScrapDocumentList', $args);
$output = executeQueryArray('member.getScrapDocumentList', $args);
Context::set('total_count', $output->total_count);
Context::set('total_page', $output->total_page);
Context::set('page', $output->page);

View file

@ -7,6 +7,7 @@
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" filter="number" />
<condition operation="equal" column="folder_srl" var="folder_srl" filter="number" pipe="and" />
</conditions>
<navigation>
<index var="sort_index" default="list_order" order="desc" />

View file

@ -0,0 +1,14 @@
<query id="getScrapFolderList" action="select">
<tables>
<table name="member_scrap_folders" />
</tables>
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" filter="number" />
</conditions>
<navigation>
<index var="sort_index" default="list_order" order="asc" />
</navigation>
</query>

View file

@ -0,0 +1,12 @@
<query id="insertScrapFolder" action="insert">
<tables>
<table name="member_scrap_folders" />
</tables>
<columns>
<column name="folder_srl" var="folder_srl" notnull="notnull" />
<column name="member_srl" var="member_srl" notnull="notnull" />
<column name="name" var="name" notnull="notnull" />
<column name="regdate" var="regdate" default="curdate()" />
<column name="list_order" var="list_order" notnull="notnull" />
</columns>
</query>

View file

@ -0,0 +1,12 @@
<query id="updateScrapFolderFromNull" action="update">
<tables>
<table name="member_scrap" />
</tables>
<columns>
<column name="folder_srl" var="folder_srl" notnull="notnull" />
</columns>
<conditions>
<condition operation="equal" column="member_srl" var="member_srl" filter="number" notnull="notnull" />
<condition operation="null" column="folder_srl" pipe="and" />
</conditions>
</query>