updated to the new api from ezc: changed semantic of [def] and Vars moved outside of Generator

This commit is contained in:
Tomasz Sowa 2021-05-23 10:14:08 +02:00
parent d30c7254eb
commit 61fe6ea219
3 changed files with 40 additions and 18 deletions

View File

@ -1,19 +1,37 @@
[def winix_has_uikit "true"]
[def winix_has_jquery "false"]
[# def? means define a variable if such a variable does not exist yet]
[# true and false are ezc functions defined by winix]
[def? winix_has_uikit false]
[def? winix_has_jquery false]
[def? winix_load_uikit true]
[def? winix_set_charset true]
[def? winix_set_viewport true]
[# IMPROME ME we can add some conditionales such as 'do_not_set_charset']
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
[# UIkit CSS]
<link rel="stylesheet" href="[doc_base_url_common]/uikit/uikit-3.6.22/css/uikit.min.css">
[# UIkit JS]
<script src="[doc_base_url_common]/uikit/uikit-3.6.22/js/uikit.min.js"></script>
<script src="[doc_base_url_common]/uikit/uikit-3.6.22/js/uikit-icons.min.js"></script>
[if winix_set_charset]
<meta charset="UTF-8">
[end]
[if winix_set_viewport]
<meta name="viewport" content="width=device-width, initial-scale=1">
[end]
[if winix_load_uikit]
[def winix_has_uikit true]
[# UIkit CSS]
<link rel="stylesheet" href="[doc_base_url_common]/uikit/uikit-3.6.22/css/uikit.min.css">
[# UIkit JS]
<script src="[doc_base_url_common]/uikit/uikit-3.6.22/js/uikit.min.js"></script>
<script src="[doc_base_url_common]/uikit/uikit-3.6.22/js/uikit-icons.min.js"></script>
[end]
[if winix_function_is "emacs"]
@ -106,7 +124,7 @@ cm.save()
[if winix_function_is "ckeditor"]
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/ckeditor_4.9.2/ckeditor.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/winix/update_button.js"></script>
@ -119,7 +137,7 @@ cm.save()
[# tinymce can use a special theme called 'mobile' - it is used when /mobile param is provided]
<script type="text/javascript" src="[doc_base_url]/var/tinymce.js[if winix_function_param_is "mobile"]/-/mobile[end]"></script>
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/winix/update_button.js"></script>
[end]
@ -136,7 +154,7 @@ cm.save()
[# info from version 0.5-rc1: this editor doesn't work on different domains by default, solution: http://forum.wymeditor.org/forum/viewtopic.php?f=2&t=731&p=2507#p2504 ]
[# you should add one file to winix: wymiframe.html ]
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/wymeditor/1.1.1/wymeditor/jquery.wymeditor.min.js"></script>
<link rel="stylesheet" type="text/css" href="[doc_base_url_common]/wymeditor/1.1.1/wymeditor/skins/default/skin.css">
@ -152,7 +170,7 @@ cm.save()
[if gallery_mount_type_arg_is "lightbox"]
[# https://lokeshdhakar.com/projects/lightbox2/ ]
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<link rel="stylesheet" href="[doc_base_url_common]/lightbox/2.11.3/dist/css/lightbox.min.css" type="text/css">
<script src="[doc_base_url_common]/lightbox/2.11.3/dist/js/lightbox.min.js" type="text/javascript"></script>
@ -162,7 +180,7 @@ cm.save()
[# https://galleriajs.github.io/ ]
[# formerly called aino-gallery ]
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<script src="[doc_base_url_common]/galleriajs/1.6.1/dist/galleria.min.js" type="text/javascript"></script>
[end]
@ -198,7 +216,7 @@ cm.save()
</noscript>
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
@ -256,7 +274,7 @@ cm.save()
[if winix_function_is "imgcrop"]
[def winix_has_jquery "true"]
[def winix_has_jquery true]
<script type="text/javascript" src="[doc_base_url_common]/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="[doc_base_url_common]/jcrop/0.9.15/js/jquery.Jcrop.min.js"></script>
<link type="text/css" rel="stylesheet" href="[doc_base_url_common]/jcrop/0.9.15/css/jquery.Jcrop.min.css">

View File

@ -47,7 +47,7 @@ namespace TemplatesFunctions
extern EzcFun ezc_functions;
extern Ezc::Blocks ezc_blocks;
extern Ezc::Vars ezc_vars;
void HtmlEscapeFormTxt(HtmlTextStream & out, const std::wstring & in)
@ -107,6 +107,7 @@ void InitGenerator(EzcGen & gen)
*/
gen.SetBlocks(ezc_blocks);
gen.SetFunctions(ezc_functions);
gen.SetVariables(ezc_vars);
}

View File

@ -62,6 +62,7 @@ Locale locale; // IMPROVE ME will be moved to a better place
EzcFun ezc_functions;
Ezc::Blocks ezc_blocks;
Ezc::Objects<HtmlTextStream> ezc_objects;
Ezc::Vars ezc_vars;
LocaleFilter locale_filter;
HTMLFilter html_filter;
@ -1118,6 +1119,7 @@ void Templates::Generate()
{
using namespace TemplatesFunctions;
ezc_vars.clear();
Ezc::Pattern * index = SelectIndexPattern();
if( index )
@ -1140,6 +1142,7 @@ void Templates::Generate(Ezc::Pattern & pattern)
{
using namespace TemplatesFunctions;
ezc_vars.clear();
InitGenerator(generator);
generator.SetPattern(pattern);
generator.Generate(cur->request->out_main_stream, cur->request->out_streams);