130 lines
1.7 KiB
C++
Executable File
130 lines
1.7 KiB
C++
Executable File
/*
|
|
* This file is a part of Winix
|
|
* and is not publicly distributed
|
|
*
|
|
* Copyright (c) 2010, Tomasz Sowa
|
|
* All rights reserved.
|
|
*
|
|
*/
|
|
|
|
|
|
#include "dbitemquery.h"
|
|
|
|
|
|
|
|
|
|
DbItemQuery::DbItemQuery()
|
|
{
|
|
Clear();
|
|
}
|
|
|
|
|
|
void DbItemQuery::Clear()
|
|
{
|
|
sort_asc = true;
|
|
|
|
SetAll(true, false);
|
|
|
|
id = -1;
|
|
id_tab = 0;
|
|
parent_id = -1;
|
|
type = Item::none;
|
|
file_type = WINIX_ITEM_FILETYPE_NONE;
|
|
|
|
type_equal = true;
|
|
file_type_equal = true;
|
|
|
|
limit = 0; // limit and offset not used by default
|
|
offset = 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::SetAllSel(bool sel)
|
|
{
|
|
sel_parent_id = sel;
|
|
sel_user_id = sel;
|
|
sel_group_id = sel;
|
|
sel_guest_name = sel;
|
|
sel_privileges = sel;
|
|
sel_date = sel;
|
|
sel_subject = sel;
|
|
sel_content = sel;
|
|
sel_url = sel;
|
|
sel_type = sel;
|
|
sel_link = sel;
|
|
sel_file = sel;
|
|
sel_html_template = sel;
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::SetAllWhere(bool where_)
|
|
{
|
|
where_id = where_;
|
|
where_parent_id = where_;
|
|
where_type = where_;
|
|
where_file_type = where_;
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::SetAll(bool sel, bool where_)
|
|
{
|
|
SetAllSel(sel);
|
|
SetAllWhere(where_);
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::WhereId(long id_)
|
|
{
|
|
where_id = true;
|
|
id = id_;
|
|
}
|
|
|
|
|
|
void DbItemQuery::WhereIdIn(const std::vector<long> & id_tab_list)
|
|
{
|
|
id_tab = &id_tab_list;
|
|
}
|
|
|
|
|
|
void DbItemQuery::WhereParentId(long parent_id_)
|
|
{
|
|
where_parent_id = true;
|
|
parent_id = parent_id_;
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::WhereType(Item::Type type_, bool equal)
|
|
{
|
|
where_type = true;
|
|
type = type_;
|
|
type_equal = equal;
|
|
}
|
|
|
|
|
|
|
|
void DbItemQuery::WhereFileType(int file_t, bool equal)
|
|
{
|
|
where_file_type = true;
|
|
file_type = file_t;
|
|
file_type_equal = equal;
|
|
}
|
|
|
|
|
|
void DbItemQuery::Limit(long l)
|
|
{
|
|
limit = l;
|
|
}
|
|
|
|
|
|
void DbItemQuery::Offset(long o)
|
|
{
|
|
offset = o;
|
|
}
|
|
|