100 lines
4.6 KiB
C++
Executable File
100 lines
4.6 KiB
C++
Executable File
/*
|
|
* This file is a part of Winix
|
|
* and is not publicly distributed
|
|
*
|
|
* Copyright (c) 2008-2010, Tomasz Sowa
|
|
* All rights reserved.
|
|
*
|
|
*/
|
|
|
|
#include "db.h"
|
|
|
|
|
|
|
|
void Db::ItemColumns::SetColumns(PGresult * r)
|
|
{
|
|
// PQfnumber returns -1 if there is no such a column
|
|
id = PQfnumber(r, "id");
|
|
user_id = PQfnumber(r, "user_id");
|
|
group_id = PQfnumber(r, "group_id");
|
|
privileges = PQfnumber(r, "privileges");
|
|
date_creation = PQfnumber(r, "date_creation");
|
|
date_modification = PQfnumber(r, "date_modification");
|
|
url = PQfnumber(r, "url");
|
|
type = PQfnumber(r, "type");
|
|
parent_id = PQfnumber(r, "parent_id");
|
|
content_id = PQfnumber(r, "content_id");
|
|
default_item = PQfnumber(r, "default_item");
|
|
subject = PQfnumber(r, "subject");
|
|
content = PQfnumber(r, "content");
|
|
content_type = PQfnumber(r, "content_type");
|
|
guest_name = PQfnumber(r, "guest_name");
|
|
auth = PQfnumber(r, "auth");
|
|
auth_path = PQfnumber(r, "auth_path");
|
|
html_template = PQfnumber(r, "template");
|
|
modification_user_id = PQfnumber(r, "modification_user_id");
|
|
}
|
|
|
|
|
|
|
|
void Db::ItemColumns::SetItem(PGresult * r, long row, Item & item)
|
|
{
|
|
if( id != -1 ) item.id = atol( Db::AssertValue(r, row, id) );
|
|
if( user_id != -1 ) item.user_id = atol( Db::AssertValue(r, row, user_id) );
|
|
if( group_id != -1 ) item.group_id = atol( Db::AssertValue(r, row, group_id) );
|
|
if( privileges != -1 ) item.privileges = atoi( Db::AssertValue(r, row, privileges) );
|
|
if( date_creation != -1 ) item.date_creation = ConvertTime( Db::AssertValue(r, row, date_creation) );
|
|
if( date_modification != -1 ) item.date_modification = ConvertTime( Db::AssertValue(r, row, date_modification) );
|
|
if( url != -1 ) item.url = Db::AssertValue(r, row, url);
|
|
if( type != -1 ) item.type = static_cast<Item::Type>( atoi(Db::AssertValue(r, row, type)) );
|
|
if( parent_id != -1 ) item.parent_id = atol( Db::AssertValue(r, row, parent_id) );
|
|
if( content_id != -1 ) item.content_id = atol( Db::AssertValue(r, row, content_id) );
|
|
if( default_item != -1 ) item.default_item = atol( Db::AssertValue(r, row, default_item) );
|
|
if( subject != -1 ) item.subject = Db::AssertValue(r, row, subject);
|
|
if( content != -1 ) item.content = Db::AssertValue(r, row, content);
|
|
if( content_type != -1 ) item.content_type = static_cast<Item::ContentType>( atoi(Db::AssertValue(r, row, content_type)) );
|
|
if( guest_name != -1 ) item.guest_name = Db::AssertValue(r, row, guest_name);
|
|
if( auth != -1 ) item.auth = static_cast<Item::Auth>( atoi(Db::AssertValue(r, row, auth)) );
|
|
if( auth_path != -1 ) item.auth_path = Db::AssertValue(r, row, auth_path);
|
|
if( html_template != -1 ) item.html_template = Db::AssertValue(r, row, html_template);
|
|
if( modification_user_id != -1 ) item.modification_user_id = atol( Db::AssertValue(r, row, modification_user_id) );
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void Db::TicketColumns::SetColumns(PGresult * r)
|
|
{
|
|
// PQfnumber returns -1 if there is no such a column
|
|
id = PQfnumber(r, "id");
|
|
dir_id = PQfnumber(r, "dir_id");
|
|
parent_id = PQfnumber(r, "parent_id");
|
|
type = PQfnumber(r, "type");
|
|
status = PQfnumber(r, "status");
|
|
priority = PQfnumber(r, "priority");
|
|
category = PQfnumber(r, "category");
|
|
expected = PQfnumber(r, "expected");
|
|
progress = PQfnumber(r, "progress");
|
|
item_id = PQfnumber(r, "item_id");
|
|
}
|
|
|
|
|
|
void Db::TicketColumns::SetTicket(PGresult * r, long row, Ticket & ticket)
|
|
{
|
|
if( id != -1 ) ticket.id = atol( Db::AssertValue(r, row, id) );
|
|
if( dir_id != -1 ) ticket.dir_id = atol( Db::AssertValue(r, row, dir_id) );
|
|
if( parent_id != -1 ) ticket.parent_id = atol( Db::AssertValue(r, row, parent_id) );
|
|
if( type != -1 ) ticket.type = atoi( Db::AssertValue(r, row, type) );
|
|
if( status != -1 ) ticket.status = atoi( Db::AssertValue(r, row, status) );
|
|
if( priority != -1 ) ticket.priority = atoi( Db::AssertValue(r, row, priority) );
|
|
if( category != -1 ) ticket.category = atoi( Db::AssertValue(r, row, category) );
|
|
if( expected != -1 ) ticket.expected = atoi( Db::AssertValue(r, row, expected) );
|
|
if( progress != -1 ) ticket.progress = atoi( Db::AssertValue(r, row, progress) );
|
|
if( item_id != -1 ) ticket.item_id = atol( Db::AssertValue(r, row, item_id) );
|
|
}
|
|
|
|
|
|
|