some methods from templates/item.cpp moved to ItemContent

This commit is contained in:
2021-06-20 21:22:08 +02:00
parent 801fc062ef
commit ade96bf6d3
10 changed files with 261 additions and 118 deletions

View File

@@ -375,75 +375,75 @@ void item_sort(Info & i)
void item_meta_str(Info & i)
{
cur->request->last_item->item_content.meta.serialize_to_space_stream(i.out, true);
}
void item_meta(Info & i)
{
space_value(i, cur->request->last_item->item_content.meta);
}
void item_meta_noescape(Info & i)
{
space_value(i, cur->request->last_item->item_content.meta, false);
}
//void item_meta_str(Info & i)
//{
// cur->request->last_item->item_content.meta.serialize_to_space_stream(i.out, true);
//}
//
//
//void item_meta(Info & i)
//{
// space_value(i, cur->request->last_item->item_content.meta);
//}
//
//
//void item_meta_noescape(Info & i)
//{
// space_value(i, cur->request->last_item->item_content.meta, false);
//}
void item_meta_tab(Info & i)
{
space_list_tab(i, cur->request->last_item->item_content.meta);
}
void item_meta_tab_value(Info & i)
{
space_list_tab_value(i, cur->request->last_item->item_content.meta, L"item_meta_tab");
}
void item_meta_tab_has_next(Info & i)
{
space_list_tab_has_next(i, cur->request->last_item->item_content.meta, L"item_meta_tab");
}
//void item_meta_tab(Info & i)
//{
// space_list_tab(i, cur->request->last_item->item_content.meta);
//}
//
//
//void item_meta_tab_value(Info & i)
//{
// space_list_tab_value(i, cur->request->last_item->item_content.meta, L"item_meta_tab");
//}
//
//
//
//void item_meta_tab_has_next(Info & i)
//{
// space_list_tab_has_next(i, cur->request->last_item->item_content.meta, L"item_meta_tab");
//}
void item_admin_meta_str(Info & i)
{
cur->request->last_item->item_content.meta_admin.serialize_to_space_stream(i.out, true);
}
void item_admin_meta(Info & i)
{
space_value(i, cur->request->last_item->item_content.meta_admin);
}
void item_admin_meta_tab(Info & i)
{
space_list_tab(i, cur->request->last_item->item_content.meta_admin);
}
void item_admin_meta_tab_value(Info & i)
{
space_list_tab_value(i, cur->request->last_item->item_content.meta_admin, L"item_admin_meta_tab");
}
void item_admin_meta_tab_has_next(Info & i)
{
space_list_tab_has_next(i, cur->request->last_item->item_content.meta_admin, L"item_admin_meta_tab");
}
//void item_admin_meta_str(Info & i)
//{
// cur->request->last_item->item_content.meta_admin.serialize_to_space_stream(i.out, true);
//}
//
//
//void item_admin_meta(Info & i)
//{
// space_value(i, cur->request->last_item->item_content.meta_admin);
//}
//
//
//void item_admin_meta_tab(Info & i)
//{
// space_list_tab(i, cur->request->last_item->item_content.meta_admin);
//}
//
//
//void item_admin_meta_tab_value(Info & i)
//{
// space_list_tab_value(i, cur->request->last_item->item_content.meta_admin, L"item_admin_meta_tab");
//}
//
//
//void item_admin_meta_tab_has_next(Info & i)
//{
// space_list_tab_has_next(i, cur->request->last_item->item_content.meta_admin, L"item_admin_meta_tab");
//}
//
void item_can_content_be_html_filtered(Info & i)
{

View File

@@ -161,6 +161,25 @@ void print_user_name(Info & i, User * puser, const std::wstring & guest_name)
}
bool should_escape(Info & env)
{
bool res = true;
for(size_t i=0 ; i < env.params.size() ; ++i)
{
// CHECKME what about env.params[i].is_function ?
if( env.params[i].str == L"noescape" || env.params[i].str == L"raw" )
{
res = false;
break;
}
}
return res;
}

View File

@@ -82,6 +82,7 @@ void print_date_nice(Info & i, const pt::Date & date);
void print_user_name(Info & i, User * puser, const std::wstring & guest_name);
bool should_escape(Info & env);
} // namespace TemplatesFunctions

View File

@@ -475,17 +475,17 @@ void Templates::CreateFunctions()
ezc_functions.Insert("item_is_link_redirect", item_is_link_redirect);
ezc_functions.Insert("item_file_size", item_file_size);
ezc_functions.Insert("item_sort", item_sort);
ezc_functions.Insert("item_meta_str", item_meta_str);
ezc_functions.Insert("item_meta", item_meta);
ezc_functions.Insert("item_meta_noescape", item_meta_noescape);
ezc_functions.Insert("item_meta_tab", item_meta_tab);
ezc_functions.Insert("item_meta_tab_value", item_meta_tab_value);
ezc_functions.Insert("item_meta_tab_has_next", item_meta_tab_has_next);
ezc_functions.Insert("item_admin_meta_str", item_admin_meta_str);
ezc_functions.Insert("item_admin_meta", item_admin_meta);
ezc_functions.Insert("item_admin_meta_tab", item_admin_meta_tab);
ezc_functions.Insert("item_admin_meta_tab_value", item_admin_meta_tab_value);
ezc_functions.Insert("item_admin_meta_tab_has_next", item_admin_meta_tab_has_next);
// ezc_functions.Insert("item_meta_str", item_meta_str);
// ezc_functions.Insert("item_meta", item_meta);
// ezc_functions.Insert("item_meta_noescape", item_meta_noescape);
// ezc_functions.Insert("item_meta_tab", item_meta_tab);
// ezc_functions.Insert("item_meta_tab_value", item_meta_tab_value);
// ezc_functions.Insert("item_meta_tab_has_next", item_meta_tab_has_next);
// ezc_functions.Insert("item_admin_meta_str", item_admin_meta_str);
// ezc_functions.Insert("item_admin_meta", item_admin_meta);
// ezc_functions.Insert("item_admin_meta_tab", item_admin_meta_tab);
// ezc_functions.Insert("item_admin_meta_tab_value", item_admin_meta_tab_value);
// ezc_functions.Insert("item_admin_meta_tab_has_next", item_admin_meta_tab_has_next);
ezc_functions.Insert("item_can_content_be_html_filtered", item_can_content_be_html_filtered);
/*

View File

@@ -365,17 +365,17 @@ namespace TemplatesFunctions
void item_is_link_redirect(Info & i);
void item_file_size(Info & i);
void item_sort(Info & i);
void item_meta_str(Info & i);
void item_meta(Info & i);
void item_meta_noescape(Info & i);
void item_meta_tab(Info & i);
void item_meta_tab_value(Info & i);
void item_meta_tab_has_next(Info & i);
void item_admin_meta_str(Info & i);
void item_admin_meta(Info & i);
void item_admin_meta_tab(Info & i);
void item_admin_meta_tab_value(Info & i);
void item_admin_meta_tab_has_next(Info & i);
//void item_meta_str(Info & i);
//void item_meta(Info & i);
//void item_meta_noescape(Info & i);
// void item_meta_tab(Info & i);
// void item_meta_tab_value(Info & i);
// void item_meta_tab_has_next(Info & i);
// void item_admin_meta_str(Info & i);
// void item_admin_meta(Info & i);
// void item_admin_meta_tab(Info & i);
// void item_admin_meta_tab_value(Info & i);
// void item_admin_meta_tab_has_next(Info & i);
void item_can_content_be_html_filtered(Info & i);
/*