added: some ezc function to ticket plugin:
ticket_param_value_for_param_id tickets_tab_param_value_for_param_id tickets_tab_conf_tab_param_name tickets_tab_conf_tab_file_tab tickets_tab_conf_tab_file_tab_index tickets_tab_conf_tab_file_tab_path tickets_tab_conf_tab_file_tab_itemid tickets_tab_conf_tab_file_tab_meta git-svn-id: svn://ttmath.org/publicrep/winix/trunk@923 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
parent
c10c9393c0
commit
0e9eb30b5d
|
@ -2,7 +2,7 @@
|
|||
* This file is a part of Winix
|
||||
* and is not publicly distributed
|
||||
*
|
||||
* Copyright (c) 2008-2012, Tomasz Sowa
|
||||
* Copyright (c) 2008-2013, Tomasz Sowa
|
||||
* All rights reserved.
|
||||
*
|
||||
*/
|
||||
|
@ -276,6 +276,7 @@ void ticket_meta_value(Info & i)
|
|||
|
||||
void ticket_is_closed(Info & i)
|
||||
{
|
||||
// !! CHECKME should it be cur->request->item?
|
||||
PT::Space * ticket_space = cur->request->item.ameta.FindSpace(L"ticket");
|
||||
|
||||
if( ticket_space )
|
||||
|
@ -283,6 +284,45 @@ void ticket_is_closed(Info & i)
|
|||
}
|
||||
|
||||
|
||||
TicketValue value_for_param_id;
|
||||
|
||||
|
||||
void ticket_param_value_for_param_id(Info & i)
|
||||
{
|
||||
value_for_param_id.Clear();
|
||||
|
||||
size_t conf_index = 0;
|
||||
PT::Space & space = *ticket_info.cur_conf;
|
||||
int id = Toi(i.par);
|
||||
|
||||
|
||||
for( ; conf_index < space.spaces.size() ; ++conf_index)
|
||||
{
|
||||
log << log1 << "analizuje: " << space.spaces[conf_index]->Text(L"name") << logend;
|
||||
|
||||
if( space.spaces[conf_index]->name == L"param" &&
|
||||
space.spaces[conf_index]->Int(L"id") == id )
|
||||
{
|
||||
log << log1 << "znalazlem: " << space.spaces[conf_index]->Text(L"name") << logend;
|
||||
|
||||
value_for_param_id.Clear();
|
||||
value_for_param_id.is_param = true;
|
||||
value_for_param_id.config_par = space.spaces[conf_index];
|
||||
value_for_param_id.param_id = value_for_param_id.config_par->Long(L"id");
|
||||
|
||||
if( ticket_info.ticket && ticket_info.item )
|
||||
{
|
||||
find_ticket_value(value_for_param_id, ticket_info.ticket->par_tab, ticket_info.item->meta);
|
||||
ticket_print_value(i, value_for_param_id);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
namespace ns_tickets_tab
|
||||
{
|
||||
|
@ -495,6 +535,40 @@ void tickets_tab_date_creation_nice(Info & i)
|
|||
}
|
||||
|
||||
|
||||
static TicketValue value_for_param_id;
|
||||
|
||||
|
||||
// takes param id (integer) as a first parameter
|
||||
void tickets_tab_param_value_for_param_id(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( tickets_value.is_ticket )
|
||||
{
|
||||
size_t param_index = 0;
|
||||
PT::Space & space = *ticket_info.cur_conf;
|
||||
int id = Toi(i.par);
|
||||
|
||||
for( ; param_index < space.spaces.size() ; ++param_index)
|
||||
{
|
||||
if( space.spaces[param_index]->name == L"param" &&
|
||||
space.spaces[param_index]->Int(L"id") == id )
|
||||
{
|
||||
value_for_param_id.Clear();
|
||||
value_for_param_id.is_param = true;
|
||||
value_for_param_id.config_par = space.spaces[param_index];
|
||||
value_for_param_id.param_id = value_for_param_id.config_par->Long(L"id");
|
||||
|
||||
// !! CHECKME don't we have to test tickets_value.ticket and tickets_value.item?
|
||||
find_ticket_value(value_for_param_id, tickets_value.ticket->par_tab, tickets_value.item->meta);
|
||||
ticket_print_value(i, value_for_param_id);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void tickets_tab_conf_tab(Info & i)
|
||||
|
@ -531,6 +605,18 @@ void tickets_tab_conf_tab_has_value(Info & i)
|
|||
}
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_param_name(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_param )
|
||||
{
|
||||
std::wstring & name = value.config_par->Text(L"name");
|
||||
i.out << name;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_value(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
@ -561,6 +647,95 @@ void tickets_tab_conf_tab_progress_image_number(Info & i)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
static size_t tickets_file_index;
|
||||
static size_t tickets_file_number;
|
||||
|
||||
void tickets_tab_conf_tab_file_tab(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_value && !value.is_in_ticket_par )
|
||||
{
|
||||
tickets_file_index = i.iter;
|
||||
|
||||
if( i.iter == 0 )
|
||||
tickets_file_number = 0;
|
||||
|
||||
PT::Space & mt = *value.value_meta;
|
||||
|
||||
while( tickets_file_index < mt.spaces.size() && mt.spaces[tickets_file_index]->name != L"file" )
|
||||
tickets_file_index += 1;
|
||||
|
||||
i.res = (tickets_file_index < mt.spaces.size());
|
||||
|
||||
if( i.res && i.iter > 0 )
|
||||
tickets_file_number += 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_file_tab_index(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_value && !value.is_in_ticket_par )
|
||||
{
|
||||
PT::Space & mt = *value.value_meta;
|
||||
|
||||
if( tickets_file_index < mt.spaces.size() )
|
||||
i.out << tickets_file_number;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_file_tab_path(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_value && !value.is_in_ticket_par )
|
||||
{
|
||||
PT::Space & mt = *value.value_meta;
|
||||
|
||||
if( tickets_file_index < mt.spaces.size() )
|
||||
i.out << mt.spaces[tickets_file_index]->Text(L"path");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_file_tab_itemid(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_value && !value.is_in_ticket_par )
|
||||
{
|
||||
PT::Space & mt = *value.value_meta;
|
||||
|
||||
if( tickets_file_index < mt.spaces.size() )
|
||||
i.out << mt.spaces[tickets_file_index]->Text(L"itemid");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void tickets_tab_conf_tab_file_tab_meta(Info & i)
|
||||
{
|
||||
tickets_tab_check_reqid();
|
||||
|
||||
if( value.is_value && !value.is_in_ticket_par )
|
||||
{
|
||||
PT::Space & mt = *value.value_meta;
|
||||
|
||||
if( tickets_file_index < mt.spaces.size() )
|
||||
space(i, *mt.spaces[tickets_file_index]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // namespace ns_tickets_tab
|
||||
|
||||
|
||||
|
@ -869,6 +1044,9 @@ using namespace ns_ticket_tab;
|
|||
fun->Insert("ticket_meta_value", ticket_meta_value);
|
||||
fun->Insert("ticket_is_closed", ticket_is_closed);
|
||||
|
||||
fun->Insert("ticket_param_value_for_param_id", ticket_param_value_for_param_id);
|
||||
|
||||
|
||||
fun->Insert("tickets_tab", tickets_tab);
|
||||
fun->Insert("tickets_tab_is_closed", tickets_tab_is_closed);
|
||||
fun->Insert("tickets_tab_url", tickets_tab_url);
|
||||
|
@ -878,12 +1056,19 @@ using namespace ns_ticket_tab;
|
|||
fun->Insert("tickets_tab_date_creation", tickets_tab_date_creation);
|
||||
fun->Insert("tickets_tab_date_creation_nice", tickets_tab_date_creation_nice);
|
||||
|
||||
fun->Insert("tickets_tab_param_value_for_param_id", tickets_tab_param_value_for_param_id);
|
||||
|
||||
fun->Insert("tickets_tab_conf_tab", tickets_tab_conf_tab);
|
||||
fun->Insert("tickets_tab_conf_tab_has_value", tickets_tab_conf_tab_has_value);
|
||||
fun->Insert("tickets_tab_conf_tab_param_name", tickets_tab_conf_tab_param_name);
|
||||
fun->Insert("tickets_tab_conf_tab_value", tickets_tab_conf_tab_value);
|
||||
fun->Insert("tickets_tab_conf_tab_type_is", tickets_tab_conf_tab_type_is);
|
||||
fun->Insert("tickets_tab_conf_tab_progress_image_number", tickets_tab_conf_tab_progress_image_number);
|
||||
|
||||
fun->Insert("tickets_tab_conf_tab_file_tab", tickets_tab_conf_tab_file_tab);
|
||||
fun->Insert("tickets_tab_conf_tab_file_tab_index", tickets_tab_conf_tab_file_tab_index);
|
||||
fun->Insert("tickets_tab_conf_tab_file_tab_path", tickets_tab_conf_tab_file_tab_path);
|
||||
fun->Insert("tickets_tab_conf_tab_file_tab_itemid", tickets_tab_conf_tab_file_tab_itemid);
|
||||
fun->Insert("tickets_tab_conf_tab_file_tab_meta", tickets_tab_conf_tab_file_tab_meta);
|
||||
|
||||
|
||||
fun->Insert("ticket_tab", ticket_tab);
|
||||
|
|
Loading…
Reference in New Issue