|
|
|
@ -43,7 +43,6 @@
|
|
|
|
|
#include "templates/templates.h"
|
|
|
|
|
#include "sessiondata.h"
|
|
|
|
|
#include "plugins/thread/pluginmsg.h"
|
|
|
|
|
#include "templates/miscspace.h"
|
|
|
|
|
#include "space/space.h"
|
|
|
|
|
#include "pluginmsg.h"
|
|
|
|
|
|
|
|
|
@ -171,13 +170,13 @@ return false;
|
|
|
|
|
*/
|
|
|
|
|
pt::Space * find_ticket_param(long param_id, pt::Space & meta)
|
|
|
|
|
{
|
|
|
|
|
pt::Space::TableType * child_table = meta.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = meta.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
for(pt::Space * sp : *params)
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"param") && sp->to_long(L"id") == param_id )
|
|
|
|
|
if( sp->to_long(L"id") == param_id )
|
|
|
|
|
return sp;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -223,7 +222,7 @@ size_t par_index;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
pt::Space * meta = item_meta.find_child_space(L"ticket");
|
|
|
|
|
pt::Space * meta = item_meta.get_space(L"ticket");
|
|
|
|
|
|
|
|
|
|
if( meta )
|
|
|
|
|
{
|
|
|
|
@ -245,18 +244,21 @@ void ticket_print_value_select(Info & i, TicketValue & value)
|
|
|
|
|
{
|
|
|
|
|
if( value.is_param && value.is_value )
|
|
|
|
|
{
|
|
|
|
|
pt::Space::TableType * child_table = value.config_par->find_child_space_table();
|
|
|
|
|
pt::Space::TableType * options = value.config_par->get_table(L"options");
|
|
|
|
|
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
if( options )
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"option") && sp->to_long(L"id") == value.ticket_par->intv )
|
|
|
|
|
for(pt::Space * sp : *options)
|
|
|
|
|
{
|
|
|
|
|
std::wstring * val = sp->get_wstr(L"value");
|
|
|
|
|
if( sp->to_long(L"id") == value.ticket_par->intv )
|
|
|
|
|
{
|
|
|
|
|
std::wstring * val = sp->get_wstr(L"value");
|
|
|
|
|
|
|
|
|
|
if( val )
|
|
|
|
|
i.out << *val;
|
|
|
|
|
if( val )
|
|
|
|
|
i.out << *val;
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -308,15 +310,15 @@ void ticket_is_creating_new(Info & i)
|
|
|
|
|
i.res = ticket_info.create_new_ticket;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void ticket_meta_value(Info & i)
|
|
|
|
|
{
|
|
|
|
|
if( ticket_info.item )
|
|
|
|
|
space_value(i, ticket_info.item->item_content.meta);
|
|
|
|
|
}
|
|
|
|
|
//void ticket_meta_value(Info & i)
|
|
|
|
|
//{
|
|
|
|
|
// if( ticket_info.item )
|
|
|
|
|
// space_value(i, ticket_info.item->item_content.meta);
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
void ticket_is_closed(Info & i)
|
|
|
|
|
{
|
|
|
|
|
pt::Space * ticket_space = ticket_info.item->item_content.meta_admin.find_child_space(L"ticket");
|
|
|
|
|
pt::Space * ticket_space = ticket_info.item->item_content.meta_admin.get_space(L"ticket");
|
|
|
|
|
|
|
|
|
|
if( ticket_space )
|
|
|
|
|
i.res = ticket_space->to_bool(L"closed", false);
|
|
|
|
@ -333,13 +335,13 @@ void ticket_param_value_for_param_id(Info & i)
|
|
|
|
|
pt::Space & space = *ticket_info.cur_conf;
|
|
|
|
|
int id = Toi(i.par);
|
|
|
|
|
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
for(pt::Space * sp : *params)
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"param") && sp->to_int(L"id") == id )
|
|
|
|
|
if( sp->to_int(L"id") == id )
|
|
|
|
|
{
|
|
|
|
|
value_for_param_id.Clear();
|
|
|
|
|
value_for_param_id.is_param = true;
|
|
|
|
@ -365,16 +367,16 @@ void ticket_does_param_id_have_value(Info & i)
|
|
|
|
|
value_for_param_id.Clear();
|
|
|
|
|
|
|
|
|
|
pt::Space & space = *ticket_info.cur_conf;
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( i.params.size() == 2 && child_table )
|
|
|
|
|
if( i.params.size() == 2 && params )
|
|
|
|
|
{
|
|
|
|
|
long id = Tol(i.params[0].str);
|
|
|
|
|
long id2 = Tol(i.params[1].str);
|
|
|
|
|
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
for(pt::Space * sp : *params)
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"param") && sp->to_long(L"id") == id )
|
|
|
|
|
if( sp->to_long(L"id") == id )
|
|
|
|
|
{
|
|
|
|
|
value_for_param_id.Clear();
|
|
|
|
|
value_for_param_id.is_param = true;
|
|
|
|
@ -550,7 +552,7 @@ void tickets_tab_is_closed(Info & i)
|
|
|
|
|
|
|
|
|
|
if( tickets_value.is_item )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * ticket_space = tickets_value.item->item_content.meta_admin.find_child_space(L"ticket");
|
|
|
|
|
pt::Space * ticket_space = tickets_value.item->item_content.meta_admin.get_space(L"ticket");
|
|
|
|
|
|
|
|
|
|
if( ticket_space )
|
|
|
|
|
i.res = ticket_space->to_bool(L"closed", false);
|
|
|
|
@ -587,13 +589,13 @@ void tickets_tab_subject(Info & i)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void tickets_tab_meta_value(Info & i)
|
|
|
|
|
{
|
|
|
|
|
tickets_tab_check_reqid();
|
|
|
|
|
|
|
|
|
|
if( tickets_value.is_item )
|
|
|
|
|
space_value(i, tickets_value.item->item_content.meta);
|
|
|
|
|
}
|
|
|
|
|
//void tickets_tab_meta_value(Info & i)
|
|
|
|
|
//{
|
|
|
|
|
// tickets_tab_check_reqid();
|
|
|
|
|
//
|
|
|
|
|
// if( tickets_value.is_item )
|
|
|
|
|
// space_value(i, tickets_value.item->item_content.meta);
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -631,13 +633,13 @@ void tickets_tab_param_value_for_param_id(Info & i)
|
|
|
|
|
pt::Space & space = *ticket_info.cur_conf;
|
|
|
|
|
long id = Tol(i.par);
|
|
|
|
|
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
for(pt::Space * sp : *params)
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"param") && sp->to_long(L"id") == id )
|
|
|
|
|
if( sp->to_long(L"id") == id )
|
|
|
|
|
{
|
|
|
|
|
value_for_param_id.Clear();
|
|
|
|
|
value_for_param_id.is_param = true;
|
|
|
|
@ -667,13 +669,13 @@ void tickets_tab_does_param_id_have_value(Info & i)
|
|
|
|
|
long id = Toi(i.params[0].str);
|
|
|
|
|
long id2 = Toi(i.params[1].str);
|
|
|
|
|
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
for(pt::Space * sp : *child_table)
|
|
|
|
|
for(pt::Space * sp : *params)
|
|
|
|
|
{
|
|
|
|
|
if( sp->is_child_space_name(L"param") && sp->to_long(L"id") == id )
|
|
|
|
|
if( sp->to_long(L"id") == id )
|
|
|
|
|
{
|
|
|
|
|
value_for_param_id.Clear();
|
|
|
|
|
value_for_param_id.is_param = true;
|
|
|
|
@ -712,27 +714,16 @@ void tickets_tab_conf_tab(Info & i)
|
|
|
|
|
{
|
|
|
|
|
conf_index = i.iter;
|
|
|
|
|
pt::Space & space = *ticket_info.cur_conf;
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
while( conf_index < child_table->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[conf_index];
|
|
|
|
|
|
|
|
|
|
if( sp.is_child_space_name(L"param") )
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
conf_index += 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
i.res = conf_index < child_table->size();
|
|
|
|
|
i.res = conf_index < params->size();
|
|
|
|
|
|
|
|
|
|
if( i.res )
|
|
|
|
|
{
|
|
|
|
|
value.is_param = true;
|
|
|
|
|
value.config_par = (*child_table)[conf_index];
|
|
|
|
|
value.config_par = (*params)[conf_index];
|
|
|
|
|
value.param_id = value.config_par->to_long(L"id");
|
|
|
|
|
find_ticket_value(value, tickets_value.ticket->par_tab, tickets_value.item->item_content.meta);
|
|
|
|
|
}
|
|
|
|
@ -831,21 +822,11 @@ void tickets_tab_conf_tab_file_tab(Info & i)
|
|
|
|
|
tickets_file_number = 0;
|
|
|
|
|
|
|
|
|
|
pt::Space & mt = *value.value_meta;
|
|
|
|
|
pt::Space::TableType * child_table = mt.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * files = mt.get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( files )
|
|
|
|
|
{
|
|
|
|
|
while( tickets_file_index < child_table->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[tickets_file_index];
|
|
|
|
|
|
|
|
|
|
if( sp.is_child_space_name(L"file") )
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
tickets_file_index += 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
i.res = (tickets_file_index < child_table->size());
|
|
|
|
|
i.res = (tickets_file_index < files->size());
|
|
|
|
|
|
|
|
|
|
if( i.res && i.iter > 0 )
|
|
|
|
|
tickets_file_number += 1;
|
|
|
|
@ -861,9 +842,12 @@ void tickets_tab_conf_tab_file_tab_index(Info & i)
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & mt = *value.value_meta;
|
|
|
|
|
pt::Space::TableType * files = mt.get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( mt.find_child_space(tickets_file_index) )
|
|
|
|
|
if( files && tickets_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << tickets_file_number;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -876,10 +860,12 @@ void tickets_tab_conf_tab_file_tab_path(Info & i)
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & mt = *value.value_meta;
|
|
|
|
|
pt::Space * sp = mt.find_child_space(tickets_file_index);
|
|
|
|
|
pt::Space::TableType * files = mt.get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_wstr(L"path");
|
|
|
|
|
if( files && tickets_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
(*files)[tickets_file_index]->to_wstr(L"path");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -891,28 +877,30 @@ void tickets_tab_conf_tab_file_tab_itemid(Info & i)
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & mt = *value.value_meta;
|
|
|
|
|
pt::Space * sp = mt.find_child_space(tickets_file_index);
|
|
|
|
|
pt::Space::TableType * files = mt.get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_long(L"itemid");
|
|
|
|
|
if( files && tickets_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
(*files)[tickets_file_index]->to_long(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;
|
|
|
|
|
pt::Space * sp = mt.find_child_space(tickets_file_index);
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
space_value(i, *sp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//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;
|
|
|
|
|
// pt::Space * sp = mt.find_child_space(tickets_file_index);
|
|
|
|
|
//
|
|
|
|
|
// if( sp )
|
|
|
|
|
// space_value(i, *sp);
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} // namespace ns_tickets_tab
|
|
|
|
@ -949,26 +937,16 @@ void ticket_tab(Info & i)
|
|
|
|
|
|
|
|
|
|
conf_index = i.iter;
|
|
|
|
|
pt::Space & space = *ticket_info.cur_conf; // CHECKME is ticket_info.cur_conf always set?
|
|
|
|
|
pt::Space::TableType * child_table = space.find_child_space_table();
|
|
|
|
|
pt::Space::TableType * params = space.get_table(L"params");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( params )
|
|
|
|
|
{
|
|
|
|
|
while( conf_index < child_table->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[conf_index];
|
|
|
|
|
|
|
|
|
|
if( sp.is_child_space_name(L"param") )
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
conf_index += 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
i.res = conf_index < child_table->size();
|
|
|
|
|
i.res = conf_index < params->size();
|
|
|
|
|
|
|
|
|
|
if( i.res )
|
|
|
|
|
{
|
|
|
|
|
value.is_param = true;
|
|
|
|
|
value.config_par = (*child_table)[conf_index];
|
|
|
|
|
value.config_par = (*params)[conf_index];
|
|
|
|
|
value.param_id = value.config_par->to_long(L"id");
|
|
|
|
|
|
|
|
|
|
if( ticket_info.ticket && ticket_info.item )
|
|
|
|
@ -1042,13 +1020,13 @@ void ticket_tab_value_dec(Info & i)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void ticket_tab_value_meta(Info & i)
|
|
|
|
|
{
|
|
|
|
|
ticket_tab_check_reqid();
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
space_value(i, *value.value_meta);
|
|
|
|
|
}
|
|
|
|
|
//void ticket_tab_value_meta(Info & i)
|
|
|
|
|
//{
|
|
|
|
|
// ticket_tab_check_reqid();
|
|
|
|
|
//
|
|
|
|
|
// if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
// space_value(i, *value.value_meta);
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void ticket_tab_type_is(Info & i)
|
|
|
|
@ -1067,21 +1045,11 @@ void ticket_tab_select_tab(Info & i)
|
|
|
|
|
if( value.is_param )
|
|
|
|
|
{
|
|
|
|
|
select_index = i.iter;
|
|
|
|
|
pt::Space::TableType * child_table = value.config_par->find_child_space_table();
|
|
|
|
|
pt::Space::TableType * options = value.config_par->get_table(L"options");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( options )
|
|
|
|
|
{
|
|
|
|
|
while( select_index < child_table->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[select_index];
|
|
|
|
|
|
|
|
|
|
if( sp.is_child_space_name(L"option") )
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
select_index += 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
i.res = (select_index < child_table->size());
|
|
|
|
|
i.res = (select_index < options->size());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1093,12 +1061,11 @@ void ticket_tab_select_tab_is_selected(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_param )
|
|
|
|
|
{
|
|
|
|
|
pt::Space::TableType * child_table = value.config_par->find_child_space_table();
|
|
|
|
|
pt::Space::TableType * options = value.config_par->get_table(L"options");
|
|
|
|
|
|
|
|
|
|
if( child_table && select_index < child_table->size() )
|
|
|
|
|
if( options && select_index < options->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[select_index];
|
|
|
|
|
|
|
|
|
|
pt::Space & sp = *(*options)[select_index];
|
|
|
|
|
long id = sp.to_long(L"id");
|
|
|
|
|
|
|
|
|
|
if( value.is_value )
|
|
|
|
@ -1121,10 +1088,12 @@ void ticket_tab_select_tab_name(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_param )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.config_par->find_child_space(select_index);
|
|
|
|
|
pt::Space::TableType * options = value.config_par->get_table(L"options");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_wstr(L"value");
|
|
|
|
|
if( options && select_index < options->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << (*options)[select_index]->to_wstr(L"value");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1135,25 +1104,27 @@ void ticket_tab_select_tab_id(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_param )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.config_par->find_child_space(select_index);
|
|
|
|
|
pt::Space::TableType * options = value.config_par->get_table(L"options");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_wstr(L"id");
|
|
|
|
|
if( options && select_index < options->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << (*options)[select_index]->to_wstr(L"id");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void ticket_tab_select_tab_meta(Info & i)
|
|
|
|
|
{
|
|
|
|
|
ticket_tab_check_reqid();
|
|
|
|
|
|
|
|
|
|
if( value.is_param )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.config_par->find_child_space(select_index);
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
space_value(i, *sp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//void ticket_tab_select_tab_meta(Info & i)
|
|
|
|
|
//{
|
|
|
|
|
// ticket_tab_check_reqid();
|
|
|
|
|
//
|
|
|
|
|
// if( value.is_param )
|
|
|
|
|
// {
|
|
|
|
|
// pt::Space * sp = value.config_par->find_child_space(select_index);
|
|
|
|
|
//
|
|
|
|
|
// if( sp )
|
|
|
|
|
// space_value(i, *sp);
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -1163,26 +1134,16 @@ void ticket_tab_file_tab(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
ticket_file_index = i.iter;
|
|
|
|
|
ticket_file_index = i.iter;
|
|
|
|
|
|
|
|
|
|
if( i.iter == 0 )
|
|
|
|
|
ticket_file_number = 0;
|
|
|
|
|
|
|
|
|
|
pt::Space::TableType * child_table = value.value_meta->find_child_space_table();
|
|
|
|
|
pt::Space::TableType * files = value.value_meta->get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( child_table )
|
|
|
|
|
if( files )
|
|
|
|
|
{
|
|
|
|
|
while( ticket_file_index < child_table->size() )
|
|
|
|
|
{
|
|
|
|
|
pt::Space & sp = *(*child_table)[ticket_file_index];
|
|
|
|
|
|
|
|
|
|
if( sp.is_child_space_name(L"file") )
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
ticket_file_index += 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
i.res = (ticket_file_index < child_table->size());
|
|
|
|
|
i.res = (ticket_file_index < files->size());
|
|
|
|
|
|
|
|
|
|
if( i.res && i.iter > 0 )
|
|
|
|
|
ticket_file_number += 1;
|
|
|
|
@ -1197,10 +1158,12 @@ void ticket_tab_file_tab_index(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.value_meta->find_child_space(ticket_file_index);
|
|
|
|
|
pt::Space::TableType * files = value.value_meta->get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
if( files && ticket_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << ticket_file_number;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1211,10 +1174,12 @@ void ticket_tab_file_tab_path(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.value_meta->find_child_space(ticket_file_index);
|
|
|
|
|
pt::Space::TableType * files = value.value_meta->get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_wstr(L"path");
|
|
|
|
|
if( files && ticket_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << (*files)[ticket_file_index]->to_wstr(L"path");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1224,25 +1189,27 @@ void ticket_tab_file_tab_itemid(Info & i)
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.value_meta->find_child_space(ticket_file_index);
|
|
|
|
|
pt::Space::TableType * files = value.value_meta->get_table(L"files");
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
i.out << sp->to_long(L"itemid");
|
|
|
|
|
if( files && ticket_file_index < files->size() )
|
|
|
|
|
{
|
|
|
|
|
i.out << (*files)[ticket_file_index]->to_long(L"itemid");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void ticket_tab_file_tab_meta(Info & i)
|
|
|
|
|
{
|
|
|
|
|
ticket_tab_check_reqid();
|
|
|
|
|
|
|
|
|
|
if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
{
|
|
|
|
|
pt::Space * sp = value.value_meta->find_child_space(ticket_file_index);
|
|
|
|
|
|
|
|
|
|
if( sp )
|
|
|
|
|
space_value(i, *sp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//void ticket_tab_file_tab_meta(Info & i)
|
|
|
|
|
//{
|
|
|
|
|
// ticket_tab_check_reqid();
|
|
|
|
|
//
|
|
|
|
|
// if( value.is_value && !value.is_in_ticket_par )
|
|
|
|
|
// {
|
|
|
|
|
// pt::Space * sp = value.value_meta->find_child_space(ticket_file_index);
|
|
|
|
|
//
|
|
|
|
|
// if( sp )
|
|
|
|
|
// space_value(i, *sp);
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -1263,7 +1230,7 @@ using namespace ns_ticket_tab;
|
|
|
|
|
fun->Insert("ticket_can_create", ticket_can_create);
|
|
|
|
|
fun->Insert("ticket_can_edit", ticket_can_edit);
|
|
|
|
|
fun->Insert("ticket_is_creating_new", ticket_is_creating_new);
|
|
|
|
|
fun->Insert("ticket_meta_value", ticket_meta_value);
|
|
|
|
|
// 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);
|
|
|
|
@ -1274,7 +1241,7 @@ using namespace ns_ticket_tab;
|
|
|
|
|
fun->Insert("tickets_tab_url", tickets_tab_url);
|
|
|
|
|
fun->Insert("tickets_tab_subject_empty", tickets_tab_subject_empty);
|
|
|
|
|
fun->Insert("tickets_tab_subject", tickets_tab_subject);
|
|
|
|
|
fun->Insert("tickets_tab_meta_value", tickets_tab_meta_value);
|
|
|
|
|
// fun->Insert("tickets_tab_meta_value", tickets_tab_meta_value);
|
|
|
|
|
fun->Insert("tickets_tab_date_creation", tickets_tab_date_creation);
|
|
|
|
|
fun->Insert("tickets_tab_date_creation_nice", tickets_tab_date_creation_nice);
|
|
|
|
|
|
|
|
|
@ -1293,7 +1260,7 @@ using namespace ns_ticket_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("tickets_tab_conf_tab_file_tab_meta", tickets_tab_conf_tab_file_tab_meta);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fun->Insert("ticket_tab", ticket_tab);
|
|
|
|
@ -1304,20 +1271,20 @@ using namespace ns_ticket_tab;
|
|
|
|
|
fun->Insert("ticket_tab_value", ticket_tab_value);
|
|
|
|
|
fun->Insert("ticket_tab_value_int", ticket_tab_value_int);
|
|
|
|
|
fun->Insert("ticket_tab_value_dec", ticket_tab_value_dec);
|
|
|
|
|
fun->Insert("ticket_tab_value_meta", ticket_tab_value_meta);
|
|
|
|
|
// fun->Insert("ticket_tab_value_meta", ticket_tab_value_meta);
|
|
|
|
|
fun->Insert("ticket_tab_type_is", ticket_tab_type_is);
|
|
|
|
|
|
|
|
|
|
fun->Insert("ticket_tab_select_tab", ticket_tab_select_tab);
|
|
|
|
|
fun->Insert("ticket_tab_select_tab_is_selected", ticket_tab_select_tab_is_selected);
|
|
|
|
|
fun->Insert("ticket_tab_select_tab_name", ticket_tab_select_tab_name);
|
|
|
|
|
fun->Insert("ticket_tab_select_tab_id", ticket_tab_select_tab_id);
|
|
|
|
|
fun->Insert("ticket_tab_select_tab_meta", ticket_tab_select_tab_meta);
|
|
|
|
|
// fun->Insert("ticket_tab_select_tab_meta", ticket_tab_select_tab_meta);
|
|
|
|
|
|
|
|
|
|
fun->Insert("ticket_tab_file_tab", ticket_tab_file_tab);
|
|
|
|
|
fun->Insert("ticket_tab_file_tab_index", ticket_tab_file_tab_index);
|
|
|
|
|
fun->Insert("ticket_tab_file_tab_path", ticket_tab_file_tab_path);
|
|
|
|
|
fun->Insert("ticket_tab_file_tab_itemid", ticket_tab_file_tab_itemid);
|
|
|
|
|
fun->Insert("ticket_tab_file_tab_meta", ticket_tab_file_tab_meta);
|
|
|
|
|
// fun->Insert("ticket_tab_file_tab_meta", ticket_tab_file_tab_meta);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|