--- a/templates.diff Thu Aug 16 00:25:08 2012 +0300
+++ b/templates.diff Sun Oct 14 16:52:27 2012 +0300
@@ -4,7 +4,7 @@
diff -r 00b93fdbb1de mcabber/CMakeLists.txt
--- a/mcabber/CMakeLists.txt Thu Aug 09 00:54:37 2012 +0300
-+++ b/mcabber/CMakeLists.txt Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/CMakeLists.txt Tue Aug 28 20:37:28 2012 +0300
@@ -154,8 +154,8 @@
## Define targets
@@ -16,9 +16,23 @@
xmpp xmpp_helper xmpp_iq xmpp_iqrequest xmpp_muc xmpp_s10n )
if ( NOT MODULES_ENABLE )
list ( APPEND mcabber_SUBSYSTEMS extcmd fifo )
+diff -r 00b93fdbb1de mcabber/mcabber/hooks.c
+--- a/mcabber/mcabber/hooks.c Thu Aug 09 00:54:37 2012 +0300
++++ b/mcabber/mcabber/hooks.c Tue Aug 28 20:37:28 2012 +0300
+@@ -612,6 +612,10 @@
+ ns[0] = imstatus2char[new_status];
+
+ hk_run_handlers(HOOK_MY_STATUS_CHANGE, args);
++
++ // FIXME not when modules_enable, but when templates_enable
++ settings_set(SETTINGS_TYPE_OPTION, "my_status", ns);
++ settings_tmpl_set("my_message", msg);
+ }
+ #endif
+
diff -r 00b93fdbb1de mcabber/mcabber/parser.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/mcabber/mcabber/parser.c Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/mcabber/parser.c Tue Aug 28 20:37:28 2012 +0300
@@ -0,0 +1,1116 @@
+
+/* Copyright 2012 Myhailo Danylenko
@@ -1138,7 +1152,7 @@
+/* vim: se ts=4 sw=4: */
diff -r 00b93fdbb1de mcabber/mcabber/parser.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/mcabber/mcabber/parser.h Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/mcabber/parser.h Tue Aug 28 20:37:28 2012 +0300
@@ -0,0 +1,154 @@
+
+#ifndef MCABBER_PARSER_H
@@ -1296,7 +1310,7 @@
+
diff -r 00b93fdbb1de mcabber/mcabber/settings.c
--- a/mcabber/mcabber/settings.c Thu Aug 09 00:54:37 2012 +0300
-+++ b/mcabber/mcabber/settings.c Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/mcabber/settings.c Tue Aug 28 20:37:28 2012 +0300
@@ -363,6 +363,32 @@
return 0;
}
@@ -1332,7 +1346,7 @@
// - if there is a user-defined message ("message" option),
diff -r 00b93fdbb1de mcabber/mcabber/settings.h
--- a/mcabber/mcabber/settings.h Thu Aug 09 00:54:37 2012 +0300
-+++ b/mcabber/mcabber/settings.h Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/mcabber/settings.h Tue Aug 28 20:37:28 2012 +0300
@@ -37,6 +37,7 @@
void settings_opt_set_raw(const gchar *key, const gchar *value);
void settings_set(guint type, const gchar *key, const gchar *value);
@@ -1343,8 +1357,8 @@
const gchar *settings_get_status_msg(enum imstatus status);
diff -r 00b93fdbb1de mcabber/mcabber/templates.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/mcabber/mcabber/templates.c Thu Aug 16 00:23:26 2012 +0300
-@@ -0,0 +1,468 @@
++++ b/mcabber/mcabber/templates.c Tue Aug 28 20:37:28 2012 +0300
+@@ -0,0 +1,467 @@
+
+/* Copyright 2012 Myhailo Danylenko
+ *
@@ -1588,9 +1602,8 @@
+ GError *error = NULL;
+ expansion = tmpl_var_expand ( expression, strlen ( expression ), tmpl_get_var, template, NULL, &error );
+ if ( error != NULL ) {
-+ scr_log_print ( LPRINT_LOGNORM, "Error: Expansion error on template '%s': %s.\nExpansion stopped at: '%s'", template -> name, error -> message, expansion );
++ scr_log_print ( LPRINT_LOGNORM, "Error: Expansion error on template '%s': %s", template -> name, error -> message );
+ g_error_free ( error );
-+ expansion = NULL;
+ }
+ }
+ // re-install guard on template itself
@@ -1815,7 +1828,7 @@
+/* vim: se ts=4 sw=4: */
diff -r 00b93fdbb1de mcabber/mcabber/templates.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/mcabber/mcabber/templates.h Thu Aug 16 00:23:26 2012 +0300
++++ b/mcabber/mcabber/templates.h Tue Aug 28 20:37:28 2012 +0300
@@ -0,0 +1,54 @@
+
+#ifndef MCABBER_TEMPLATES_H