From c3f902bfe6e487d7179018aee74bf0da0d7a25f3 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Tue, 11 Feb 2014 10:17:07 +0000 Subject: [PATCH 01/37] Fix path to the logo in layout.handlebars --- .../pages/default/templates_src/server_side/layout.handlebars | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars index c34c306e..919ae0bb 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars @@ -17,7 +17,7 @@
{{/if}}
diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars index 91728f51..fe60281f 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars @@ -1 +1 @@ -{{L10n "typing.remote"}} \ No newline at end of file +{{l10n "typing.remote"}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars index cdbdffc3..6cb49ed6 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars @@ -1,6 +1,6 @@
- - {{L10n + + {{l10n
-
{{L10n "leavemessage.descr"}}
\ No newline at end of file +
{{l10n "leavemessage.descr"}}
\ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars index 30b1127d..c41e3fcd 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars @@ -8,16 +8,16 @@ - + - + {{#if groups}} - + - + {{/if}} - + @@ -46,7 +46,7 @@ {{/if}}
{{L10n "form.field.email"}}:{{l10n "form.field.email"}}:
{{L10n "form.field.name"}}:{{l10n "form.field.name"}}:
{{L10n "form.field.department"}}{{l10n "form.field.department"}}
{{L10n "form.field.department.description"}}{{l10n "form.field.department.description"}} {{#each groups}}{{#if this.selected}}{{this.description}}{{/if}}{{/each}}
{{L10n "form.field.message"}}:{{l10n "form.field.message"}}:
- {{L10n "mailthread.perform"}} + {{l10n "mailthread.perform"}}
 
Loading...
\ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars index 77406fc9..30e87801 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars @@ -1,6 +1,6 @@
- - {{L10n + + {{l10n
-
{{L10n "leavemessage.sent.message"}}
\ No newline at end of file +
{{l10n "leavemessage.sent.message"}}
\ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars index e3ffa2d4..fabb3134 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars @@ -12,7 +12,7 @@ {{#if groups}} - + - + {{/if}} - + {{#if showEmail}} - + {{/if}} {{#if showMessage}} - + {{/if}}
{{L10n "form.field.department"}}{{l10n "form.field.department"}}
{{L10n "form.field.department.description"}}{{l10n "form.field.department.description"}} {{#each groups}}{{#if this.selected}}{{this.description}}{{/if}}{{/each}}
{{L10n "presurvey.name"}}{{l10n "presurvey.name"}}
{{L10n "presurvey.mail"}}{{l10n "presurvey.mail"}}
{{L10n "presurvey.question"}}{{l10n "presurvey.question"}}
- {{L10n "presurvey.submit"}} + {{l10n "presurvey.submit"}}
 
Loading...
\ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars b/src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars index f2f9abd5..3218043b 100644 --- a/src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars +++ b/src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars @@ -28,9 +28,9 @@
- {{L10n + {{l10n
-
{{L10n "presurvey.intro"}}
+
{{l10n "presurvey.intro"}}
diff --git a/src/mibew/styles/dialogs/default/js/compiled/templates.js b/src/mibew/styles/dialogs/default/js/compiled/templates.js index 19bc03b4..0fc3aa26 100644 --- a/src/mibew/styles/dialogs/default/js/compiled/templates.js +++ b/src/mibew/styles/dialogs/default/js/compiled/templates.js @@ -5,61 +5,61 @@ http://www.apache.org/licenses/LICENSE-2.0 */ (function(){var r=Handlebars.template,s=Handlebars.templates=Handlebars.templates||{};s.chat_avatar=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h=this.escapeExpression;return(a=e["if"].call(b,b.imageLink,{hash:{},inverse:this.program(3,function(){return'
'},c),fn:this.program(1,function(a,b){var d,c;d=''},c),data:c}))||0===a?a:""});s.chat_controls_close=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_history=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers); -c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_redirect=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;return(a=e["if"].call(b,(h=b.user,null==h||!1===h?h:h.canPost),{hash:{},inverse:this.noop, -fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),data:c}))||0===a?a:""});s.chat_controls_refresh=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_secure_mode=r(function(a,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,a.helpers);return'
'});s.chat_controls_send_mail=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_sound=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h=e.helperMissing,q=this.escapeExpression;return(a=e["if"].call(b,b.enabled,{hash:{},inverse:this.program(3,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),data:c}))||0===a?a:""});s.chat_controls_user_name=r(function(a,b,e,d,c){function h(a,b){var m,f,d;m=""+('\n
\n \n '}function q(a,d){var m,f,b;b={hash:{},data:d};m='\n '+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+'\n \n '}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var p,t="function",g=this.escapeExpression,k=e.helperMissing,j=this;return(a=e["if"].call(b,(p=b.user,null==p|| -!1===p?p:p.canChangeName),{hash:{},inverse:j.program(6,function(a,b){var m,f;m={hash:{},data:b};return m="\n"+(g((f=e.L10n||a.L10n,f?f.call(a,"chat.client.name",m):k.call(a,"L10n","chat.client.name",m)))+" "+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+"\n")},c),fn:j.program(1,function(a,b){var m,f;m={hash:{},data:b};m='\n '+(g((f=e.L10n||a.L10n,f?f.call(a,"chat.client.name",m):k.call(a,"L10n","chat.client.name",m)))+"\n "); +h(c)+'" border="0" alt="" />'},c),data:c}))||0===a?a:""});s.chat_controls_close=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_history=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers); +c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_redirect=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;return(a=e["if"].call(b,(h=b.user,null==h||!1===h?h:h.canPost),{hash:{},inverse:this.noop, +fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),data:c}))||0===a?a:""});s.chat_controls_refresh=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_secure_mode=r(function(a,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,a.helpers);return'
'});s.chat_controls_send_mail=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
')});s.chat_controls_sound=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h=e.helperMissing,q=this.escapeExpression;return(a=e["if"].call(b,b.enabled,{hash:{},inverse:this.program(3,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
\n')},c),data:c}))||0===a?a:""});s.chat_controls_user_name=r(function(a,b,e,d,c){function h(a,b){var m,f,d;m=""+('\n
\n \n '}function q(a,d){var m,f,b;b={hash:{},data:d};m='\n '+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+'\n \n '}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var p,t="function",g=this.escapeExpression,k=e.helperMissing,j=this;return(a=e["if"].call(b,(p=b.user,null==p|| +!1===p?p:p.canChangeName),{hash:{},inverse:j.program(6,function(a,b){var m,f;m={hash:{},data:b};return m="\n"+(g((f=e.l10n||a.l10n,f?f.call(a,"chat.client.name",m):k.call(a,"l10n","chat.client.name",m)))+" "+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+"\n")},c),fn:j.program(1,function(a,b){var m,f;m={hash:{},data:b};m='\n '+(g((f=e.l10n||a.l10n,f?f.call(a,"chat.client.name",m):k.call(a,"l10n","chat.client.name",m)))+"\n "); if((f=e["if"].call(a,a.nameInput,{hash:{},inverse:j.program(4,q,b),fn:j.program(2,h,b),data:b}))||0===f)m+=f;return m+="\n"},c),data:c}))||0===a?a:""});s.chat_layout=r(function(a,b,e,d,c){function h(a){var f;return a=""+("\n \n \n \n ')}function q(a){var f;return a=""+('\n \n ')}function p(a){var f;return a=""+("\n \n \n \n ')}function t(a){var f;return a=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers); c=c||{};var g,k,j="function",l=this.escapeExpression,n=this;d=e.helperMissing;a='\n
\n \n
\n\n\n
\n
\n \n
\n
\n
\n\n\n
\n
\n '; -if((k=e.unless.call(b,(g=b.user,null==g||!1===g?g:g.isAgent),{hash:{},inverse:n.noop,fn:n.program(11,function(){return'\n
\n '},c),data:c}))||0===k)a+=k;c={hash:{},data:c};return a=a+'\n \n
\n \n
\n
\n
\n\n\n
\n\n\n')});s.chat_message=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=this.escapeExpression,p=e.helperMissing;a={hash:{},data:c};a=""+(q((h=e.formatTime||b.formatTime,h?h.call(b,b.created,a):p.call(b,"formatTime",b.created,a)))+" \n");if((h=e["if"].call(b,b.name,{hash:{},inverse:this.noop,fn:this.program(1, +if((k=e.unless.call(b,(g=b.user,null==g||!1===g?g:g.isAgent),{hash:{},inverse:n.noop,fn:n.program(11,function(){return'\n
\n '},c),data:c}))||0===k)a+=k;c={hash:{},data:c};return a=a+'\n \n
\n \n
\n \n\n\n\n
\n\n\n')});s.chat_message=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=this.escapeExpression,p=e.helperMissing;a={hash:{},data:c};a=""+(q((h=e.formatTime||b.formatTime,h?h.call(b,b.created,a):p.call(b,"formatTime",b.created,a)))+" \n");if((h=e["if"].call(b,b.name,{hash:{},inverse:this.noop,fn:this.program(1, function(a,b){var d,c;d="";(c=e.name)?c=c.call(a,{hash:{},data:b}):(c=a.name,c="function"===typeof c?c.apply(a):c);return d+=q(c)+": "},c),data:c}))||0===h)a+=h;a+="\n";if((h=e["if"].call(b,b.allowFormatting,{hash:{},inverse:this.program(5,function(a, b){var d,c;c={hash:{},data:b};return q((d=e.apply||a.apply,d?d.call(a,a.message,"urlReplace, nl2br",c):p.call(a,"apply",a.message,"urlReplace, nl2br",c)))},c),fn:this.program(3,function(a,b){var d,c;c={hash:{},data:b};return q((d=e.apply||a.apply,d?d.call(a,a.message,"urlReplace, nl2br, allowTags",c):p.call(a,"apply",a.message,"urlReplace, nl2br, allowTags",c)))},c),data:c}))||0===h)a+=h;return a+="
"});s.chat_message_form=r(function(a,b,e,d,c){function h(a,b){var d,f;d={hash:{},data:b}; -d='\n \n "}function q(a){var d;return a=""+("\n \n ")}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var p,r="function",g=this.escapeExpression,k=e.helperMissing,j=this;a='
\n';if((d=e["if"].call(b,(p=b.user,null==p||!1===p?p:p.canPost),{hash:{},inverse:j.noop,fn:j.program(1,function(){return'\n
\n \n
\n'}, c),data:c}))||0===d)a+=d;a+='\n
\n\n
\n';if((d=e["if"].call(b,(p=b.user,null==p||!1===p?p:p.canPost),{hash:{},inverse:j.noop,fn:j.program(3,function(a,d){var b,f,c;b='\n
\n
\n ';if((c=e["if"].call(a,(f=a.user,null==f||!1===f?f:f.isAgent),{hash:{},inverse:j.noop,fn:j.program(4,h,d),data:d}))||0===c)b+=c;c={hash:{},data:d};b=b+'\n
\n ');c={hash:{},data:d};return b+=g((f=e.L10n||a.L10n,f?f.call(a,"chat.window.send_message_short_and_shortcut",c):k.call(a,"L10n","chat.window.send_message_short_and_shortcut",c)))+"\n
\n"},c),data:c}))||0===d)a+=d;return a+'\n
\n
'});s.chat_status_base=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};a=this.escapeExpression; +(g((f=e.l10n||a.l10n,f?f.call(a,"chat.window.send_message",c):k.call(a,"l10n","chat.window.send_message",c)))+'">');c={hash:{},data:d};return b+=g((f=e.l10n||a.l10n,f?f.call(a,"chat.window.send_message_short_and_shortcut",c):k.call(a,"l10n","chat.window.send_message_short_and_shortcut",c)))+"\n \n"},c),data:c}))||0===d)a+=d;return a+'\n\n
'});s.chat_status_base=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};a=this.escapeExpression; (e=e.title)?e=e.call(b,{hash:{},data:c}):(e=b.title,e="function"===typeof e?e.apply(b):e);return a(e)});s.chat_status_message=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};a=this.escapeExpression;(e=e.message)?e=e.call(b,{hash:{},data:c}):(e=b.message,e="function"===typeof e?e.apply(b):e);return a(e)});s.chat_status_typing=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression; -c={hash:{},data:c};return d((h=e.L10n||b.L10n,h?h.call(b,"typing.remote",c):a.call(b,"L10n","typing.remote",c)))});s.invitation_layout=r(function(a,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,a.helpers);return'
'});s.leave_message_description=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;d={hash:{},data:c};a='
\n \n ');d={hash:{},data:c};a+=p((h=e.L10n||b.L10n,h?h.call(b,\n \n
\n
';d={hash:{},data:c};return a+=p((h=e.L10n||b.L10n,h?h.call(b,"leavemessage.descr", -d):q.call(b,"L10n","leavemessage.descr",d)))+"
"});s.leave_message_form=r(function(a,b,e,d,c){function h(a,d){var b,c;b=''}function q(a,d){var b,c,m;b=""+('\n \n "}function p(){return'selected="selected"'}function r(){return" (offline)"} function g(b,a){var d;return(d=e["if"].call(b,b.selected,{hash:{},inverse:m.noop,fn:m.program(15,k,a),data:a}))||0===d?d:""}function k(b){var a;return n((a=b.description,typeof a===l?a.apply(b):a))}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var j,l="function",n=this.escapeExpression,m=this,f=e.helperMissing;a=""+('
\n \n \n \n \n ';if((d=e.unless.call(b,b.showEmail,{hash:{},inverse:m.noop,fn:m.program(1,function(b,a){var d,c;d=''},c),data:c}))||0===d)a+=d;a+="\n ";if((d=e.unless.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(3,function(b,a){var d;return(d=e["if"].call(b,b.groupId,{hash:{},inverse:m.noop,fn:m.program(4,h,a),data:a}))||0===d?d:""},c),data:c}))||0===d)a+=d;a+="\n ";if((d=e.unless.call(b,b.showMessage,{hash:{},inverse:m.noop,fn:m.program(6,function(b,a){var d,c;d=''},c),data:c}))||0===d)a+=d;a+='\n\n
\n\n \n ';if((d=e["if"].call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(8,function(b,a){var d,c,h;h={hash:{},data:a};d="\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===d)a+=d;d={hash:{},data:c};a=a+"\n \n \n \n \n ";if((d=e["if"].call(b,b.showEmail,{hash:{},inverse:m.noop,fn:m.program(19,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n '}, -c),data:c}))||0===d)a+=d;a+="\n ";if((d=e["if"].call(b,b.showMessage,{hash:{},inverse:m.noop,fn:m.program(21,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n "},c),data:c}))||0===d)a+=d;a+='\n
"+(n((c=e.L10n||b.L10n,c?c.call(b,"form.field.department",h):f.call(b,"L10n","form.field.department",h)))+'\n \n
";h={hash:{},data:a};d+=n((c=e.L10n||b.L10n,c?c.call(b,"form.field.department.description",h):f.call(b,"L10n","form.field.department.description",h)))+'';if((h=e.each.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(14,g,a),data:a}))||0===h)d+= -h;return d+="
"+(n((j=e.L10n||b.L10n,j?j.call(b,"presurvey.name",d):f.call(b,"L10n","presurvey.name",d)))+'
"+(n((c=e.L10n||b.L10n,c?c.call(b,"presurvey.mail",d):f.call(b,"L10n","presurvey.mail",d)))+'
"+(n((c=e.L10n||b.L10n,c?c.call(b,"presurvey.question",d):f.call(b,"L10n","presurvey.question",d)))+'
\n ';d={hash:{},data:c};return a+=n((j=e.L10n||b.L10n,j?j.call(b,"presurvey.submit",d):f.call(b,"L10n","presurvey.submit",d)))+'\n
 
\n
\n
Loading...
'});s.survey_layout= +(c=e.message)?c=c.call(b,{hash:{},data:a}):(c=b.message,c=typeof c===l?c.apply(b):c);return d+=n(c)+'"/>'},c),data:c}))||0===d)a+=d;a+='\n\n
\n\n \n ';if((d=e["if"].call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(8,function(b,a){var d,c,h;h={hash:{},data:a};d="\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===d)a+=d;d={hash:{},data:c};a=a+"\n \n \n \n \n ";if((d=e["if"].call(b,b.showEmail,{hash:{},inverse:m.noop,fn:m.program(19,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n '}, +c),data:c}))||0===d)a+=d;a+="\n ";if((d=e["if"].call(b,b.showMessage,{hash:{},inverse:m.noop,fn:m.program(21,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n "},c),data:c}))||0===d)a+=d;a+='\n
"+(n((c=e.l10n||b.l10n,c?c.call(b,"form.field.department",h):f.call(b,"l10n","form.field.department",h)))+'\n \n
";h={hash:{},data:a};d+=n((c=e.l10n||b.l10n,c?c.call(b,"form.field.department.description",h):f.call(b,"l10n","form.field.department.description",h)))+'';if((h=e.each.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(14,g,a),data:a}))||0===h)d+= +h;return d+="
"+(n((j=e.l10n||b.l10n,j?j.call(b,"presurvey.name",d):f.call(b,"l10n","presurvey.name",d)))+'
"+(n((c=e.l10n||b.l10n,c?c.call(b,"presurvey.mail",d):f.call(b,"l10n","presurvey.mail",d)))+'
"+(n((c=e.l10n||b.l10n,c?c.call(b,"presurvey.question",d):f.call(b,"l10n","presurvey.question",d)))+'
\n ';d={hash:{},data:c};return a+=n((j=e.l10n||b.l10n,j?j.call(b,"presurvey.submit",d):f.call(b,"l10n","presurvey.submit",d)))+'\n
 
\n\n
Loading...
'});s.survey_layout= r(function(a,b,e,d,c){function h(b){var a;return b=""+("\n \n \n \n ')}function q(a){var b;return a= ""+('\n \n ')}function p(b){var a;return b=""+("\n \n \n \n ')}function r(a){var b;return a=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var g,k,j="function",l=this.escapeExpression,n=this;d=e.helperMissing;a='\n
\n \n
\n\n\n
\n
\n
\n ';k={hash:{},data:c};a+=l((g=e.L10n||b.L10n,g?g.call(b,\n
\n
';k={hash:{},data:c};return a+=l((g=e.L10n||b.L10n,g?g.call(b,"presurvey.intro", -k):d.call(b,"L10n","presurvey.intro",k)))+'
\n
\n
\n\n\n
'})})(); +k={hash:{},data:c};a+=l((g=e.l10n||b.l10n,g?g.call(b,"leavemessage.close",k):d.call(b,"l10n","leavemessage.close",k)))+'">';k={hash:{},data:c};a+=l((g=e.l10n||b.l10n,g?g.call(b,\n \n
';k={hash:{},data:c};return a+=l((g=e.l10n||b.l10n,g?g.call(b,"presurvey.intro", +k):d.call(b,"l10n","presurvey.intro",k)))+'
\n \n\n\n\n
'})})(); diff --git a/src/mibew/styles/pages/default/templates_compiled/client_side/users_app.tpl.js b/src/mibew/styles/pages/default/templates_compiled/client_side/users_app.tpl.js index 4c346b2f..b13adce0 100644 --- a/src/mibew/styles/pages/default/templates_compiled/client_side/users_app.tpl.js +++ b/src/mibew/styles/pages/default/templates_compiled/client_side/users_app.tpl.js @@ -4,31 +4,31 @@ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 */ -(function(){var k=Handlebars.template,l=Handlebars.templates=Handlebars.templates||{};l.visitor=k(function(b,c,e,a,d){function f(){return"-"}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var g,h=e.helperMissing,j=this.escapeExpression;b='\n ';if((a=e.unless.call(c,c.invitationInfo,{hash:{},inverse:this.program(3,function(a,b){var c;(c=e.userName)?c=c.call(a,{hash:{},data:b}):(c=a.userName,c="function"===typeof c?c.apply(a):c);return j(c)},d),fn:this.program(1, -function(a,b){var c,d;c={hash:{},data:b};c='');(d=e.userName)?d=d.call(a,{hash:{},data:b}):(d=a.userName,d="function"===typeof d?d.apply(a):d);return c+=j(d)+""},d),data:d}))||0===a)b+=a;g={hash:{},data:d};b=b+'\n\n\n
\n
\n
\n
\n\n');if((a=e["if"].call(c,c.userIp,{hash:{},inverse:this.program(7,function(a,c){var b;(b=e.remote)?b=b.call(a,{hash:{},data:c}):(b=a.remote,b="function"===typeof b?b.apply(a):b);return j(b)},d),fn:this.program(5,function(a,b){var c,d;c=''; -(d=e.remote)?d=d.call(a,{hash:{},data:b}):(d=a.remote,d="function"===typeof d?d.apply(a):d);return c+=j(d)+""},d),data:d}))||0===a)b+=a;b+='\n\n\n';if((a=e["if"].call(c,c.invitationInfo,{hash:{},inverse:this.program(11,f,d),fn:this.program(9,function(a){var b;return j((b=(b=a.invitationInfo,null==b||!1===b?b:b.agentName),"function"===typeof b?b.apply(a):b))},d),data:d}))||0===a)b+=a;b+='\n';if((a=e["if"].call(c,c.invitationInfo,{hash:{},inverse:this.program(11,f,d),fn:this.program(13,function(a){var b;return a=""+('')},d),data:d}))||0===a)b+=a;b+='\n';(a=e.invitations)?a=a.call(c,{hash:{},data:d}):(a=c.invitations,a="function"===typeof a?a.apply(c):a);b+=j(a)+" / ";(a=e.chats)?a=a.call(c,{hash:{},data:d}):(a=c.chats,a="function"===typeof a?a.apply(c):a);b+=j(a)+'\n';(a=e.userAgent)?a=a.call(c,{hash:{},data:d}):(a=c.userAgent,a="function"===typeof a?a.apply(c):a);return b+=j(a)+""}); -l.queued_thread=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f=e.helperMissing,g=this.escapeExpression;b='\n
';if((a=e["if"].call(c,c.ban,{hash:{},inverse:this.noop,fn:this.program(5,function(a,b){var c,d;c={hash:{},data:b};return c=""+(g((d=e.L10n||a.L10n,d?d.call(a,"chat.client.spam.prefix",c):f.call(a,"L10n","chat.client.spam.prefix",c)))+" ")},d),data:d}))||0===a)b+=a;(a=e.userName)?a=a.call(c,{hash:{},data:d}):(a=c.userName,a="function"=== -typeof a?a.apply(c):a);b+=g(a)+"
\n ";if((a=e["if"].call(c,c.firstMessage,{hash:{},inverse:this.noop,fn:this.program(7,function(a,b){var c,d;c='
';(d=e.firstMessagePreview)?d=d.call(a,{hash:{},data:b}):(d=a.firstMessagePreview,d="function"===typeof d?d.apply(a):d);return c+=g(d)+"
"},d),data:d}))||0=== -a)b+=a;b+='\n\n\n
\n ';if((a=e["if"].call(c,c.canOpen,{hash:{},inverse:this.noop,fn:this.program(9,function(a,b){var c,d;c={hash:{},data:b};return c='\n
\n ')},d),data:d}))||0===a)b+=a;b+="\n ";if((a=e["if"].call(c, -c.canView,{hash:{},inverse:this.noop,fn:this.program(11,function(a,b){var c,d;c={hash:{},data:b};return c='\n
\n ')},d),data:d}))||0===a)b+=a;b+="\n ";if((a=e["if"].call(c,c.tracked,{hash:{},inverse:this.noop,fn:this.program(13,function(a,b){var c,d;c={hash:{},data:b};return c='\n
\n ')},d),data:d}))||0===a)b+=a;b+="\n ";if((a=e["if"].call(c,c.canBan,{hash:{},inverse:this.noop,fn:this.program(15,function(a,b){var c,d;c={hash:{},data:b};return c='\n
\n ')},d),data:d}))||0=== -a)b+=a;b+='\n
\n
\n\n';if((a=e["if"].call(c,c.userIp,{hash:{},inverse:this.program(19,function(a,b){var c;(c=e.remote)?c=c.call(a,{hash:{},data:b}):(c=a.remote,c="function"===typeof c?c.apply(a):c);return g(c)},d),fn:this.program(17,function(a,c){var b,d;b='';(d=e.remote)?d=d.call(a,{hash:{},data:c}):(d=a.remote,d="function"===typeof d?d.apply(a): -d);return b+=g(d)+""},d),data:d}))||0===a)b+=a;b+='\n';(a=e.stateDesc)?a=a.call(c,{hash:{},data:d}):(a=c.stateDesc,a="function"===typeof a?a.apply(c):a);b+=g(a)+'\n';(a=e.agentName)?a=a.call(c,{hash:{},data:d}):(a=c.agentName,a="function"===typeof a?a.apply(c):a);b+=g(a)+'\n\n';if((a=e.unless.call(c,c.chatting,{hash:{},inverse:this.program(23,function(){return"-"},d),fn:this.program(21,function(a,c){var b,d;b=''},d),data:d}))||0===a)b+=a;b+='\n';if((a=e["if"].call(c,c.ban,{hash:{},inverse:this.program(27,function(a,c){var b;(b=e.userAgent)?b= -b.call(a,{hash:{},data:c}):(b=a.userAgent,b="function"===typeof b?b.apply(a):b);return g(b)},d),fn:this.program(25,function(a){var b;return g((b=(b=a.ban,null==b||!1===b?b:b.reason),"function"===typeof b?b.apply(a):b))},d),data:d}))||0===a)b+=a;return b+""});l.no_visitors=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f;b=e.helperMissing;a=this.escapeExpression;d={hash:{},data:d};return c=''+(a((f=e.L10n||c.L10n, -f?f.call(c,"visitors.no_visitors",d):b.call(c,"L10n","visitors.no_visitors",d)))+"")});l.no_threads=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f;b=e.helperMissing;a=this.escapeExpression;d={hash:{},data:d};return c=''+(a((f=e.L10n||c.L10n,f?f.call(c,"clients.no_clients",d):b.call(c,"L10n","clients.no_clients",d)))+"")});l.status_panel=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e, -b.helpers);d=d||{};var f,g=e.helperMissing,h=this.escapeExpression;b='
';(a=e.message)?a=a.call(c,{hash:{},data:d}):(a=c.message,a="function"===typeof a?a.apply(c):a);b+=h(a);if((f=e["if"].call(c,(a=c.agent,null==a||!1===a?a:a.away),{hash:{},inverse:this.program(3,function(a,b){var c,d;d={hash:{},data:b};return h((c=e.L10n||a.L10n,c?c.call(a,"pending.status.online",d):g.call(a,"L10n","pending.status.online",d)))},d),fn:this.program(1,function(a,b){var c,d;d={hash:{},data:b};return h((c= -e.L10n||a.L10n,c?c.call(a,"pending.status.away",d):g.call(a,"L10n","pending.status.away",d)))},d),data:d}))||0===f)b+=f;b+='
"});l.threads_collection=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f,g=e.helperMissing,h=this.escapeExpression;a={hash:{},data:d};b='\n\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n
'+(h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.name",a):g.call(c,"L10n","pending.table.head.name", -a)))+"");a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.actions",a):g.call(c,"L10n","pending.table.head.actions",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.contactid",a):g.call(c,"L10n","pending.table.head.contactid",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.state",a):g.call(c,"L10n","pending.table.head.state",a)))+"";a={hash:{},data:d}; -b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.operator",a):g.call(c,"L10n","pending.table.head.operator",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.total",a):g.call(c,"L10n","pending.table.head.total",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.waittime",a):g.call(c,"L10n","pending.table.head.waittime",a)))+"";a={hash:{},data:d};return b+=h((f=e.L10n||c.L10n,f?f.call(c,"pending.table.head.etc", -a):g.call(c,"L10n","pending.table.head.etc",a)))+'
'});l.visitors_collection=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f,g=e.helperMissing,h=this.escapeExpression;a={hash:{},data:d};b='\n\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n
'+(h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.name",a):g.call(c,"L10n","visitors.table.head.name", -a)))+"");a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.actions",a):g.call(c,"L10n","visitors.table.head.actions",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.contactid",a):g.call(c,"L10n","visitors.table.head.contactid",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.firsttimeonsite",a):g.call(c,"L10n","visitors.table.head.firsttimeonsite",a)))+""; -a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.lasttimeonsite",a):g.call(c,"L10n","visitors.table.head.lasttimeonsite",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.invited.by",a):g.call(c,"L10n","visitors.table.head.invited.by",a)))+"";a={hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.invitationtime",a):g.call(c,"L10n","visitors.table.head.invitationtime",a)))+"";a= -{hash:{},data:d};b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.invitations",a):g.call(c,"L10n","visitors.table.head.invitations",a)))+"";a={hash:{},data:d};return b+=h((f=e.L10n||c.L10n,f?f.call(c,"visitors.table.head.etc",a):g.call(c,"L10n","visitors.table.head.etc",a)))+'
'});l.agent=k(function(b,c,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,b.helpers);d=d||{};var f=e.helperMissing,g=this.escapeExpression; -b='';(a=e.name)?a=a.call(c,{hash:{},data:d}):(a=c.name,a="function"===typeof a?a.apply(c):a);b+=g(a);if((a=e.unless.call(c,c.isLast,{hash:{},inverse:this.noop,fn:this.program(9,function(){return","},d),data:d}))||0===a)b+=a;return b})})(); +(function(){var l=Handlebars.template,m=Handlebars.templates=Handlebars.templates||{};m.agent=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f=e.helperMissing,h=this.escapeExpression;c='';(a=e.name)?a=a.call(b,{hash:{},data:d}):(a=b.name,a="function"===typeof a?a.apply(b):a);c+=h(a);if((a=e.unless.call(b,b.isLast,{hash:{},inverse:this.noop, +fn:this.program(9,function(){return","},d),data:d}))||0===a)c+=a;return c});m.no_threads=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f;c=e.helperMissing;a=this.escapeExpression;d={hash:{},data:d};return b=''+(a((f=e.l10n||b.l10n,f?f.call(b,"clients.no_clients",d):c.call(b,"l10n","clients.no_clients",d)))+"")});m.no_visitors=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d|| +{};var f;c=e.helperMissing;a=this.escapeExpression;d={hash:{},data:d};return b=''+(a((f=e.l10n||b.l10n,f?f.call(b,"visitors.no_visitors",d):c.call(b,"l10n","visitors.no_visitors",d)))+"")});m.queued_thread=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f=e.helperMissing,h=this.escapeExpression;c='\n
';if((a=e["if"].call(b,b.ban,{hash:{},inverse:this.noop,fn:this.program(5,function(a,c){var b,g;b={hash:{},data:c}; +return b=""+(h((g=e.l10n||a.l10n,g?g.call(a,"chat.client.spam.prefix",b):f.call(a,"l10n","chat.client.spam.prefix",b)))+" ")},d),data:d}))||0===a)c+=a;(a=e.userName)?a=a.call(b,{hash:{},data:d}):(a=b.userName,a="function"===typeof a?a.apply(b):a);c+=h(a)+"
\n ";if((a=e["if"].call(b,b.firstMessage,{hash:{},inverse:this.noop,fn:this.program(7,function(a,b){var c,g;c='
';(g=e.firstMessagePreview)?g=g.call(a,{hash:{},data:b}):(g=a.firstMessagePreview,g="function"===typeof g?g.apply(a):g);return c+=h(g)+"
"},d),data:d}))||0===a)c+=a;c+='\n\n\n
\n ';if((a=e["if"].call(b,b.canOpen,{hash:{},inverse:this.noop,fn:this.program(9,function(a,c){var b,g;b={hash:{},data:c};return b='\n
\n ')},d),data:d}))||0===a)c+=a;c+="\n ";if((a=e["if"].call(b,b.canView,{hash:{},inverse:this.noop,fn:this.program(11,function(a,b){var c,g;c={hash:{},data:b};return c='\n
\n ')},d),data:d}))||0=== +a)c+=a;c+="\n ";if((a=e["if"].call(b,b.tracked,{hash:{},inverse:this.noop,fn:this.program(13,function(a,c){var b,g;b={hash:{},data:c};return b='\n
\n ')},d),data:d}))||0===a)c+=a;c+="\n ";if((a=e["if"].call(b,b.canBan,{hash:{},inverse:this.noop,fn:this.program(15,function(a,b){var c,g;c={hash:{},data:b}; +return c='\n
\n ')},d),data:d}))||0===a)c+=a;c+='\n
\n
\n\n';if((a=e["if"].call(b,b.userIp,{hash:{},inverse:this.program(19,function(a,c){var b;(b=e.remote)?b=b.call(a,{hash:{},data:c}):(b=a.remote,b="function"===typeof b?b.apply(a):b);return h(b)}, +d),fn:this.program(17,function(a,b){var c,g;c='';(g=e.remote)?g=g.call(a,{hash:{},data:b}):(g=a.remote,g="function"===typeof g?g.apply(a):g);return c+=h(g)+""},d),data:d}))||0===a)c+=a;c+='\n';(a=e.stateDesc)?a=a.call(b,{hash:{},data:d}):(a=b.stateDesc,a="function"===typeof a?a.apply(b):a);c+=h(a)+'\n';(a=e.agentName)?a=a.call(b,{hash:{},data:d}):(a=b.agentName,a="function"===typeof a? +a.apply(b):a);c+=h(a)+'\n\n';if((a=e.unless.call(b,b.chatting,{hash:{},inverse:this.program(23,function(){return"-"},d),fn:this.program(21,function(a,b){var c,g;c=''},d),data:d}))||0===a)c+=a;c+='\n';if((a=e["if"].call(b,b.ban,{hash:{},inverse:this.program(27,function(a,b){var c;(c=e.userAgent)?c=c.call(a,{hash:{},data:b}):(c=a.userAgent,c="function"===typeof c?c.apply(a):c);return h(c)},d),fn:this.program(25,function(a){var c;return h((c=(c=a.ban,null==c||!1===c?c:c.reason),"function"===typeof c?c.apply(a):c))},d),data:d}))||0===a)c+=a;return c+""});m.status_panel=l(function(c,b,e,a,d){this.compilerInfo= +[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f,h=e.helperMissing,j=this.escapeExpression;c='
';(a=e.message)?a=a.call(b,{hash:{},data:d}):(a=b.message,a="function"===typeof a?a.apply(b):a);c+=j(a);if((f=e["if"].call(b,(a=b.agent,null==a||!1===a?a:a.away),{hash:{},inverse:this.program(3,function(a,c){var b,d;d={hash:{},data:c};return j((b=e.l10n||a.l10n,b?b.call(a,"pending.status.online",d):h.call(a,"l10n","pending.status.online",d)))},d),fn:this.program(1,function(a,c){var b, +d;d={hash:{},data:c};return j((b=e.l10n||a.l10n,b?b.call(a,"pending.status.away",d):h.call(a,"l10n","pending.status.away",d)))},d),data:d}))||0===f)c+=f;c+='
"});m.threads_collection=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f,h=e.helperMissing,j=this.escapeExpression;a={hash:{},data:d};c='\n\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n
'+(j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.name", +a):h.call(b,"l10n","pending.table.head.name",a)))+"");a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.actions",a):h.call(b,"l10n","pending.table.head.actions",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.contactid",a):h.call(b,"l10n","pending.table.head.contactid",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.state",a):h.call(b,"l10n","pending.table.head.state", +a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.operator",a):h.call(b,"l10n","pending.table.head.operator",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.total",a):h.call(b,"l10n","pending.table.head.total",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.waittime",a):h.call(b,"l10n","pending.table.head.waittime",a)))+"";a={hash:{},data:d}; +return c+=j((f=e.l10n||b.l10n,f?f.call(b,"pending.table.head.etc",a):h.call(b,"l10n","pending.table.head.etc",a)))+'
'});m.visitor=l(function(c,b,e,a,d){function f(){return"-"}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var h,j=e.helperMissing,k=this.escapeExpression;c='\n ';if((a=e.unless.call(b,b.invitationInfo,{hash:{},inverse:this.program(3,function(a,c){var b;(b=e.userName)? +b=b.call(a,{hash:{},data:c}):(b=a.userName,b="function"===typeof b?b.apply(a):b);return k(b)},d),fn:this.program(1,function(a,b){var c,d;c={hash:{},data:b};c='');(d=e.userName)?d=d.call(a,{hash:{},data:b}):(d=a.userName,d="function"===typeof d?d.apply(a):d);return c+=k(d)+""},d),data:d}))||0===a)c+=a;h={hash:{},data:d};c=c+'\n\n\n
\n
\n
\n
\n\n');if((a=e["if"].call(b,b.userIp,{hash:{},inverse:this.program(7,function(a,c){var b;(b=e.remote)?b=b.call(a,{hash:{},data:c}):(b=a.remote,b="function"===typeof b?b.apply(a):b);return k(b)},d),fn:this.program(5,function(a,b){var c,d;c=''; +(d=e.remote)?d=d.call(a,{hash:{},data:b}):(d=a.remote,d="function"===typeof d?d.apply(a):d);return c+=k(d)+""},d),data:d}))||0===a)c+=a;c+='\n\n\n';if((a=e["if"].call(b,b.invitationInfo,{hash:{},inverse:this.program(11,f,d),fn:this.program(9,function(a){var b;return k((b=(b=a.invitationInfo,null==b||!1===b?b:b.agentName),"function"===typeof b?b.apply(a):b))},d),data:d}))||0===a)c+=a;c+='\n';if((a=e["if"].call(b,b.invitationInfo,{hash:{},inverse:this.program(11,f,d),fn:this.program(13,function(a){var b;return a=""+('')},d),data:d}))||0===a)c+=a;c+='\n';(a=e.invitations)?a=a.call(b,{hash:{},data:d}):(a=b.invitations,a="function"===typeof a?a.apply(b):a);c+=k(a)+" / ";(a=e.chats)?a=a.call(b,{hash:{},data:d}):(a=b.chats,a="function"===typeof a?a.apply(b):a);c+=k(a)+'\n';(a=e.userAgent)?a=a.call(b,{hash:{},data:d}):(a=b.userAgent,a="function"===typeof a?a.apply(b):a);return c+=k(a)+""}); +m.visitors_collection=l(function(c,b,e,a,d){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,c.helpers);d=d||{};var f,h=e.helperMissing,j=this.escapeExpression;a={hash:{},data:d};c='\n\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n
'+(j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.name",a):h.call(b,"l10n","visitors.table.head.name",a)))+"");a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.actions",a):h.call(b,"l10n", +"visitors.table.head.actions",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.contactid",a):h.call(b,"l10n","visitors.table.head.contactid",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.firsttimeonsite",a):h.call(b,"l10n","visitors.table.head.firsttimeonsite",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.lasttimeonsite",a):h.call(b,"l10n","visitors.table.head.lasttimeonsite", +a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.invited.by",a):h.call(b,"l10n","visitors.table.head.invited.by",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.invitationtime",a):h.call(b,"l10n","visitors.table.head.invitationtime",a)))+"";a={hash:{},data:d};c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.invitations",a):h.call(b,"l10n","visitors.table.head.invitations",a)))+""; +a={hash:{},data:d};return c+=j((f=e.l10n||b.l10n,f?f.call(b,"visitors.table.head.etc",a):h.call(b,"l10n","visitors.table.head.etc",a)))+'
'})})(); diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/agent.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/agent.handlebars index a482a764..1e7464bb 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/agent.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/agent.handlebars @@ -1 +1 @@ -{{name}}{{#unless isLast}},{{/unless}} \ No newline at end of file +{{name}}{{#unless isLast}},{{/unless}} \ No newline at end of file diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/no_threads.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/no_threads.handlebars index 7a629f6e..0d076727 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/no_threads.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/no_threads.handlebars @@ -1 +1 @@ -{{L10n "clients.no_clients"}} \ No newline at end of file +{{l10n "clients.no_clients"}} \ No newline at end of file diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/no_visitors.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/no_visitors.handlebars index 17e3f3da..affba3e4 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/no_visitors.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/no_visitors.handlebars @@ -1 +1 @@ -{{L10n "visitors.no_visitors"}} \ No newline at end of file +{{l10n "visitors.no_visitors"}} \ No newline at end of file diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/queued_thread.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/queued_thread.handlebars index 339994e4..04e36c60 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/queued_thread.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/queued_thread.handlebars @@ -1,20 +1,20 @@ -
{{#if ban}}{{L10n "chat.client.spam.prefix"}} {{/if}}{{userName}}
+
{{#if ban}}{{l10n "chat.client.spam.prefix"}} {{/if}}{{userName}}
{{#if firstMessage}}
{{firstMessagePreview}}
{{/if}}
{{#if canOpen}} -
+
{{/if}} {{#if canView}} -
+
{{/if}} {{#if tracked}} -
+
{{/if}} {{#if canBan}} -
+
{{/if}}
diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/status_panel.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/status_panel.handlebars index 4f8ec934..14cff0a2 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/status_panel.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/status_panel.handlebars @@ -1 +1 @@ -
{{message}}{{#if agent.away}}{{L10n "pending.status.away"}}{{else}}{{L10n "pending.status.online"}}{{/if}}
\ No newline at end of file +
{{message}}{{#if agent.away}}{{l10n "pending.status.away"}}{{else}}{{l10n "pending.status.online"}}{{/if}}
\ No newline at end of file diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/threads_collection.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/threads_collection.handlebars index ede4845f..e588671c 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/threads_collection.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/threads_collection.handlebars @@ -1,14 +1,14 @@ - - - - - - - - + + + + + + + + diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/visitor.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/visitor.handlebars index 7d5b0132..1013f8b8 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/visitor.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/visitor.handlebars @@ -1,9 +1,9 @@ diff --git a/src/mibew/styles/pages/default/templates_src/client_side/users/visitors_collection.handlebars b/src/mibew/styles/pages/default/templates_src/client_side/users/visitors_collection.handlebars index cf263b83..b73c8e41 100644 --- a/src/mibew/styles/pages/default/templates_src/client_side/users/visitors_collection.handlebars +++ b/src/mibew/styles/pages/default/templates_src/client_side/users/visitors_collection.handlebars @@ -1,15 +1,15 @@
{{L10n "pending.table.head.name"}}{{L10n "pending.table.head.actions"}}{{L10n "pending.table.head.contactid"}}{{L10n "pending.table.head.state"}}{{L10n "pending.table.head.operator"}}{{L10n "pending.table.head.total"}}{{L10n "pending.table.head.waittime"}}{{L10n "pending.table.head.etc"}}{{l10n "pending.table.head.name"}}{{l10n "pending.table.head.actions"}}{{l10n "pending.table.head.contactid"}}{{l10n "pending.table.head.state"}}{{l10n "pending.table.head.operator"}}{{l10n "pending.table.head.total"}}{{l10n "pending.table.head.waittime"}}{{l10n "pending.table.head.etc"}}
- {{#unless invitationInfo}}{{userName}}{{else}}{{userName}}{{/unless}} + {{#unless invitationInfo}}{{userName}}{{else}}{{userName}}{{/unless}}
-
+
- - - - - - - - - + + + + + + + + + From 3337aa8bb81372690b14a02b0606868a97eb7553 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Thu, 13 Feb 2014 13:32:09 +0000 Subject: [PATCH 03/37] Remove unneeded $page variable from PageStyle::render --- src/mibew/libs/classes/Mibew/Style/PageStyle.php | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/mibew/libs/classes/Mibew/Style/PageStyle.php b/src/mibew/libs/classes/Mibew/Style/PageStyle.php index 42196964..6741f034 100644 --- a/src/mibew/libs/classes/Mibew/Style/PageStyle.php +++ b/src/mibew/libs/classes/Mibew/Style/PageStyle.php @@ -81,18 +81,14 @@ class PageStyle extends AbstractStyle implements StyleInterface // Prepare to output html start_html_output(); - // $page variable is used in included views files, so we need to create - // it as an alias of $data argument. - $page = $data; - // Pass additional variables to template - $page['mibewRoot'] = MIBEW_WEB_ROOT; - $page['mibewVersion'] = MIBEW_VERSION; - $page['currentLocale'] = CURRENT_LOCALE; - $page['rtl'] = (getlocal("localedirection") == 'rtl'); - $page['stylePath'] = MIBEW_WEB_ROOT . '/' . $this->filesPath(); + $data['mibewRoot'] = MIBEW_WEB_ROOT; + $data['mibewVersion'] = MIBEW_VERSION; + $data['currentLocale'] = CURRENT_LOCALE; + $data['rtl'] = (getlocal("localedirection") == 'rtl'); + $data['stylePath'] = MIBEW_WEB_ROOT . '/' . $this->filesPath(); - echo($this->templateEngine->render($template_name, $page)); + echo($this->templateEngine->render($template_name, $data)); } /** From 3ad8bfb38088e165955eab7a5ec5f287440fb7f7 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 10:20:04 +0000 Subject: [PATCH 04/37] Rename "header" block to "head" in operator pages' templates --- .../templates_src/server_side/blocked_visitors.handlebars | 2 +- .../pages/default/templates_src/server_side/features.handlebars | 2 +- .../pages/default/templates_src/server_side/group.handlebars | 2 +- .../pages/default/templates_src/server_side/groups.handlebars | 2 +- .../pages/default/templates_src/server_side/index.handlebars | 2 +- .../default/templates_src/server_side/install_index.handlebars | 2 +- .../templates_src/server_side/invitation_themes.handlebars | 2 +- .../pages/default/templates_src/server_side/layout.handlebars | 2 +- .../default/templates_src/server_side/operators.handlebars | 2 +- .../default/templates_src/server_side/thread_log.handlebars | 2 +- .../pages/default/templates_src/server_side/updates.handlebars | 2 +- .../pages/default/templates_src/server_side/users.handlebars | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars index d7c68812..78b3fce9 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars @@ -1,7 +1,7 @@ {{#extends "layout"}} {{#override "menu"}}{{> _menu}}{{/override}} - {{#override "header"}} + {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars index 3a392ac0..043cc32a 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars @@ -1,7 +1,7 @@ {{#extends "layout"}} {{#override "menu"}}{{> _menu}}{{/override}} - {{#override "header"}} + {{#override "head"}} {{/override}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars index 919ae0bb..3598e5b2 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars @@ -10,7 +10,7 @@ - {{#block "header"}}{{/block}} + {{#block "head"}}{{/block}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars index 2ba0bdcf..3004ba69 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars @@ -1,7 +1,7 @@ {{#extends "layout"}} {{#override "menu"}}{{> _menu}}{{/override}} - {{#override "header"}} + {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars index 82ae7520..d2b6767c 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars @@ -1,7 +1,7 @@ {{#extends "layout"}} {{#override "menu"}}{{> _menu}}{{/override}} - {{#override "header"}} + {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars index 350f8488..6c5c5444 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars @@ -3,7 +3,7 @@ {{#override "menu"}}{{> _menu}}{{/override}} {{/if}} - {{#override "header"}} + {{#override "head"}} {{{additional_css}}} From 94d56890771f3073ab1ab7c1ce3d9ea7b42c4226 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 10:29:19 +0000 Subject: [PATCH 05/37] Pass style name to operator pages' templates --- src/mibew/libs/classes/Mibew/Style/PageStyle.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mibew/libs/classes/Mibew/Style/PageStyle.php b/src/mibew/libs/classes/Mibew/Style/PageStyle.php index 6741f034..73262686 100644 --- a/src/mibew/libs/classes/Mibew/Style/PageStyle.php +++ b/src/mibew/libs/classes/Mibew/Style/PageStyle.php @@ -87,6 +87,7 @@ class PageStyle extends AbstractStyle implements StyleInterface $data['currentLocale'] = CURRENT_LOCALE; $data['rtl'] = (getlocal("localedirection") == 'rtl'); $data['stylePath'] = MIBEW_WEB_ROOT . '/' . $this->filesPath(); + $data['styleName'] = $this->name(); echo($this->templateEngine->render($template_name, $data)); } From f4702e53810b37d79164242dab853fcb8ffecfea Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 10:43:02 +0000 Subject: [PATCH 06/37] Rename "layout" template to "_layout" --- .../server_side/{layout.handlebars => _layout.handlebars} | 0 .../pages/default/templates_src/server_side/avatar.handlebars | 2 +- .../pages/default/templates_src/server_side/ban.handlebars | 2 +- .../templates_src/server_side/blocked_visitors.handlebars | 2 +- .../pages/default/templates_src/server_side/canned.handlebars | 2 +- .../default/templates_src/server_side/canned_edit.handlebars | 2 +- .../pages/default/templates_src/server_side/confirm.handlebars | 2 +- .../pages/default/templates_src/server_side/features.handlebars | 2 +- .../pages/default/templates_src/server_side/get_code.handlebars | 2 +- .../pages/default/templates_src/server_side/group.handlebars | 2 +- .../default/templates_src/server_side/group_members.handlebars | 2 +- .../pages/default/templates_src/server_side/groups.handlebars | 2 +- .../pages/default/templates_src/server_side/history.handlebars | 2 +- .../pages/default/templates_src/server_side/index.handlebars | 2 +- .../default/templates_src/server_side/install_err.handlebars | 2 +- .../default/templates_src/server_side/install_index.handlebars | 2 +- .../templates_src/server_side/invitation_themes.handlebars | 2 +- .../pages/default/templates_src/server_side/license.handlebars | 2 +- .../pages/default/templates_src/server_side/login.handlebars | 2 +- .../pages/default/templates_src/server_side/operator.handlebars | 2 +- .../templates_src/server_side/operator_groups.handlebars | 2 +- .../default/templates_src/server_side/operators.handlebars | 2 +- .../default/templates_src/server_side/page_themes.handlebars | 2 +- .../default/templates_src/server_side/performance.handlebars | 2 +- .../default/templates_src/server_side/permissions.handlebars | 2 +- .../pages/default/templates_src/server_side/resetpwd.handlebars | 2 +- .../pages/default/templates_src/server_side/restore.handlebars | 2 +- .../pages/default/templates_src/server_side/settings.handlebars | 2 +- .../default/templates_src/server_side/statistics.handlebars | 2 +- .../pages/default/templates_src/server_side/themes.handlebars | 2 +- .../default/templates_src/server_side/thread_log.handlebars | 2 +- .../pages/default/templates_src/server_side/tracked.handlebars | 2 +- .../default/templates_src/server_side/translate.handlebars | 2 +- .../default/templates_src/server_side/translate_list.handlebars | 2 +- .../pages/default/templates_src/server_side/updates.handlebars | 2 +- .../default/templates_src/server_side/user_history.handlebars | 2 +- .../pages/default/templates_src/server_side/users.handlebars | 2 +- 37 files changed, 36 insertions(+), 36 deletions(-) rename src/mibew/styles/pages/default/templates_src/server_side/{layout.handlebars => _layout.handlebars} (100%) diff --git a/src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/_layout.handlebars similarity index 100% rename from src/mibew/styles/pages/default/templates_src/server_side/layout.handlebars rename to src/mibew/styles/pages/default/templates_src/server_side/_layout.handlebars diff --git a/src/mibew/styles/pages/default/templates_src/server_side/avatar.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/avatar.handlebars index 049ed6a6..9b1338ab 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/avatar.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/avatar.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/ban.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/ban.handlebars index 3e0fc337..dfe3d31c 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/ban.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/ban.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{#if saved}} {{l10n "page_ban.sent" address}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars index 78b3fce9..623d73fd 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/blocked_visitors.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/canned.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/canned.handlebars index ea1206ac..542745da 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/canned.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/canned.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/canned_edit.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/canned_edit.handlebars index 136d7bfd..c06f1e59 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/canned_edit.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/canned_edit.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{#if saved}} {{l10n "cannededit.done"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/confirm.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/confirm.handlebars index c686a0a2..b7aef6bb 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/confirm.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/confirm.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}}
diff --git a/src/mibew/styles/pages/default/templates_src/server_side/features.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/features.handlebars index 2c3fba73..e1604c5c 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/features.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/features.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/get_code.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/get_code.handlebars index 8accbab4..936b798f 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/get_code.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/get_code.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/group.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/group.handlebars index 495f0c44..3942fe85 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/group.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/group.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/group_members.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/group_members.handlebars index fcb88fa4..44765ea8 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/group_members.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/group_members.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/groups.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/groups.handlebars index 3b00e0f2..37cdbd6a 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/groups.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/groups.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/history.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/history.handlebars index ce93de91..693365c7 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/history.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/history.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/index.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/index.handlebars index 5b621bbe..aab8c6eb 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/index.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/index.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "head"}} {{#if localeLinks}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/install_err.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/install_err.handlebars index d7a3abf1..0d248c7b 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/install_err.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/install_err.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{> _errors}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars index f42bb413..a98884eb 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#if localeLinks}} {{#override "menu"}}{{> _locales}}{{/override}} {{/if}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars index 043cc32a..dfcdba53 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/invitation_themes.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/license.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/license.handlebars index 24b3112d..360051db 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/license.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/license.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}}

Copyright 2005-2013 the original author or authors.

diff --git a/src/mibew/styles/pages/default/templates_src/server_side/login.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/login.handlebars index 4ab94836..4b6fc61b 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/login.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/login.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#if localeLinks}} {{#override "menu"}}{{> _locales}}{{/override}} {{/if}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/operator.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/operator.handlebars index 08652125..45e00d11 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/operator.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/operator.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/operator_groups.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/operator_groups.handlebars index 3332717a..92c9e14a 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/operator_groups.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/operator_groups.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars index 3004ba69..32b368b8 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/operators.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/page_themes.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/page_themes.handlebars index e7f4bf2a..1f1e0db6 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/page_themes.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/page_themes.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/performance.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/performance.handlebars index 69fd9f12..00b47d60 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/performance.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/performance.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/permissions.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/permissions.handlebars index b2f83352..04a0289c 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/permissions.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/permissions.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/resetpwd.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/resetpwd.handlebars index 0bfe1102..38e8fa41 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/resetpwd.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/resetpwd.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#if localeLinks}} {{#override "menu"}}{{> _locales}}{{/override}} {{/if}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/restore.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/restore.handlebars index 136bad45..ccee4a2c 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/restore.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/restore.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#if localeLinks}} {{#override "menu"}}{{> _locales}}{{/override}} {{/if}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/settings.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/settings.handlebars index 8a380937..ff8c8995 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/settings.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/settings.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/statistics.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/statistics.handlebars index 9a2bdc2c..3e12ceb2 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/statistics.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/statistics.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/themes.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/themes.handlebars index da59cd31..ae930a39 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/themes.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/themes.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/thread_log.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/thread_log.handlebars index 5c015901..78a26aea 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/thread_log.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/thread_log.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/tracked.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/tracked.handlebars index 3d94c5b3..aceecac4 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/tracked.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/tracked.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{l10n "tracked.intro"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/translate.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/translate.handlebars index fb493e98..c4eee921 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/translate.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/translate.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{#if saved}} {{l10n "page.translate.done"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/translate_list.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/translate_list.handlebars index 4fa0fd8a..32b2fd0d 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/translate_list.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/translate_list.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "content"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars index d2b6767c..457484d6 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/updates.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "menu"}}{{> _menu}}{{/override}} {{#override "head"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/user_history.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/user_history.handlebars index 61998641..922e4af2 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/user_history.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/user_history.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#override "content"}} {{l10n "page.analysis.userhistory.intro"}} diff --git a/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars index 6c5c5444..e93d9a65 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/users.handlebars @@ -1,4 +1,4 @@ -{{#extends "layout"}} +{{#extends "_layout"}} {{#if havemenu}} {{#override "menu"}}{{> _menu}}{{/override}} {{/if}} From 9e82414728b9b5aca315ab5ba8acbb1cdc639516 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 10:51:22 +0000 Subject: [PATCH 07/37] Use handlebars.php for dialogs' templates --- .../libs/classes/Mibew/Style/ChatStyle.php | 28 +- .../TemplateEngine/ChatTemplateEngine.php | 262 ------------------ src/mibew/styles/dialogs/default/chat.css | 5 +- .../dialogs/default/templates/agentchat.tpl | 1 - .../dialogs/default/templates/agentrochat.tpl | 1 - .../styles/dialogs/default/templates/chat.tpl | 119 -------- .../dialogs/default/templates/error.tpl | 45 --- .../styles/dialogs/default/templates/mail.tpl | 56 ---- .../dialogs/default/templates/mailsent.tpl | 45 --- .../dialogs/default/templates/nochat.tpl | 45 --- .../dialogs/default/templates/redirect.tpl | 62 ----- .../dialogs/default/templates/redirected.tpl | 45 --- .../server_side/_layout.handlebars | 56 ++++ .../server_side/agentchat.handlebars | 1 + .../server_side/agentrochat.handlebars | 1 + .../templates_src/server_side/chat.handlebars | 116 ++++++++ .../server_side/error.handlebars | 23 ++ .../templates_src/server_side/mail.handlebars | 34 +++ .../server_side/mailsent.handlebars | 11 + .../server_side/nochat.handlebars | 15 + .../server_side/redirect.handlebars | 32 +++ .../server_side/redirected.handlebars | 11 + 22 files changed, 325 insertions(+), 689 deletions(-) delete mode 100644 src/mibew/libs/classes/Mibew/TemplateEngine/ChatTemplateEngine.php delete mode 100644 src/mibew/styles/dialogs/default/templates/agentchat.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/agentrochat.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/chat.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/error.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/mail.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/mailsent.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/nochat.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/redirect.tpl delete mode 100644 src/mibew/styles/dialogs/default/templates/redirected.tpl create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/agentchat.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/agentrochat.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/error.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/mail.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/mailsent.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/nochat.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/redirect.handlebars create mode 100644 src/mibew/styles/dialogs/default/templates_src/server_side/redirected.handlebars diff --git a/src/mibew/libs/classes/Mibew/Style/ChatStyle.php b/src/mibew/libs/classes/Mibew/Style/ChatStyle.php index c75155d9..2f77c694 100644 --- a/src/mibew/libs/classes/Mibew/Style/ChatStyle.php +++ b/src/mibew/libs/classes/Mibew/Style/ChatStyle.php @@ -19,7 +19,7 @@ namespace Mibew\Style; // Import namespaces and classes of the core use Mibew\Settings; -use Mibew\TemplateEngine\ChatTemplateEngine; +use Mibew\Handlebars\HelpersSet; /** * Represents a chat style @@ -29,7 +29,7 @@ class ChatStyle extends AbstractStyle implements StyleInterface /** * Template engine for chat templates. * - * @var \Mibew\TemplateEngine\ChatTemplateEngine + * @var \Handlebars\Handlebars */ protected $templateEngine; @@ -42,10 +42,19 @@ class ChatStyle extends AbstractStyle implements StyleInterface { parent::__construct($style_name); - $this->templateEngine = new ChatTemplateEngine( - $this->filesPath(), - $this->name() + $templates_loader = new \Handlebars\Loader\FilesystemLoader( + MIBEW_FS_ROOT . '/' . $this->filesPath() . '/templates_src/server_side/' ); + + $this->templateEngine = new \Handlebars\Handlebars(array( + 'loader' => $templates_loader, + 'partials_loader' => $templates_loader, + 'helpers' => new \Handlebars\Helpers(HelpersSet::getHelpers()) + )); + + // Use custom function to escape strings + $this->templateEngine->setEscape('safe_htmlspecialchars'); + $this->templateEngine->setEscapeArgs(array()); } /** @@ -70,6 +79,15 @@ class ChatStyle extends AbstractStyle implements StyleInterface public function render($template_name, $data = array()) { start_html_output(); + + // Pass additional variables to template + $data['mibewRoot'] = MIBEW_WEB_ROOT; + $data['mibewVersion'] = MIBEW_VERSION; + $data['currentLocale'] = CURRENT_LOCALE; + $data['rtl'] = (getlocal("localedirection") == 'rtl'); + $data['stylePath'] = MIBEW_WEB_ROOT . '/' . $this->filesPath(); + $data['styleName'] = $this->name(); + echo($this->templateEngine->render($template_name, $data)); } diff --git a/src/mibew/libs/classes/Mibew/TemplateEngine/ChatTemplateEngine.php b/src/mibew/libs/classes/Mibew/TemplateEngine/ChatTemplateEngine.php deleted file mode 100644 index 1c01018f..00000000 --- a/src/mibew/libs/classes/Mibew/TemplateEngine/ChatTemplateEngine.php +++ /dev/null @@ -1,262 +0,0 @@ -stylePath = $style_path; - $this->styleName = $style_name; - } - - /** - * Renders template and returns HTML for it. - * - * @param string $template_name Name of a template with neither path nor - * extension. - * @param array $data Data for substitutions. - * @return string Rendered HTML markup. - */ - public function render($template_name, $data) - { - $this->flattenTemplateData = array_flatten_recursive($data); - $this->templateData = $data; - $contents = $this->getTemplateFileContent($template_name); - - return $this->expandText($contents); - } - - /** - * Check if condition form conditional construction is true. - * - * @param string $condition Condition name. Can be any element name of the - * template data array. - */ - public function checkCondition($condition) - { - if ($condition == 'errors') { - return !empty($this->templateData['errors']) - && is_array($this->templateData['errors']); - } - - return !empty($this->flattenTemplateData[$condition]); - } - - /** - * Process conditional construction. This function is a callback for - * "preg_replace_callback" function. - * - * @param array $matches matches passed from "preg_replace_callback" - * function. - * @return string One of conditional blocks depending of conditional value. - */ - public function expandCondition($matches) - { - $value = $this->checkCondition($matches[2]) ^ ($matches[1] != 'if'); - - if ($value) { - return preg_replace_callback( - self::IF_REGEXP, - array($this, "expandCondition"), - $matches[3] - ); - } elseif (isset($matches[4])) { - return preg_replace_callback( - self::IF_REGEXP, - array($this, "expandCondition"), - substr($matches[4], strpos($matches[4], "}") + 1) - ); - } - - return ""; - } - - /** - * Replace variables in template with its values. This function is a - * callback for "preg_replace_callback" function. - * - * @param array $matches matches passed from "preg_replace_callback" - * function. - * @return string Value of the variable or empty string if the value was not - * passed in with template data. - */ - public function expandVar($matches) - { - $prefix = $matches[1]; - $var = $matches[2]; - - if (!$prefix) { - if ($var == 'mibewroot') { - return MIBEW_WEB_ROOT; - } elseif ($var == 'tplroot') { - return MIBEW_WEB_ROOT . "/" . $this->stylePath; - } elseif ($var == 'styleid') { - return $this->styleName; - } elseif ($var == 'pagination') { - return generate_pagination( - MIBEW_WEB_ROOT . '/' . $this->stylePath, - $this->templateData['pagination'] - ); - } elseif ($var == 'errors' || $var == 'harderrors') { - $errors_data_exists = !empty($this->templateData['errors']) - && is_array($this->templateData['errors']); - if ($errors_data_exists) { - $result = getlocal("$var.header"); - foreach ($this->templateData['errors'] as $e) { - $result .= getlocal("errors.prefix") - . $e - . getlocal("errors.suffix"); - } - $result .= getlocal("errors.footer"); - - return $result; - } - } - } elseif ($prefix == 'msg:' || $prefix == 'msgjs:' || $prefix == 'url:') { - $message = ''; - if (strpos($var, ",") !== false) { - $pos = strpos($var, ","); - $param = substr($var, $pos + 1); - $var = substr($var, 0, $pos); - $message = getlocal2($var, array($this->flattenTemplateData[$param])); - } else { - $message = getlocal($var); - } - if ($prefix == 'msgjs:') { - return json_encode($message); - } - return $message; - } elseif ($prefix == 'form:') { - return form_value($this->templateData, $var); - } elseif ($prefix == 'page:' || $prefix == 'pagejs:') { - $message = isset($this->flattenTemplateData[$var]) - ? $this->flattenTemplateData[$var] - : ""; - - return ($prefix == 'pagejs:') ? json_encode($message) : $message; - } elseif ($prefix == 'if:' || $prefix == 'else:' || $prefix == 'endif:' || $prefix == 'ifnot:') { - return ""; - } - - return ""; - } - - /** - * Process "include" control structure. This function is a callback for - * "preg_replace_callback" function. - * - * @param array $matches matches passed from "preg_replace_callback" - * function. - * @return string Contents of including file - */ - public function expandInclude($matches) - { - $template_name = $matches[1]; - - return $this->getTemplateFileContent($template_name); - } - - /** - * Converts all control structures to markup. - * - * @param string $text Source text - * @return string Markup with no control structures - */ - public function expandText($text) - { - $text = preg_replace_callback( - "/\\\${include:([\w\.]+)}/", - array($this, "expandInclude"), - $text - ); - - $text = preg_replace_callback( - self::IF_REGEXP, - array($this, "expandCondition"), - $text - ); - - return preg_replace_callback( - "/\\\${(\w+:)?([\w\.,]+)}/", - array($this, "expandVar"), - $text - ); - } - - /** - * Loads content of a template file. - * - * @param string $template_name Name of a template file to load. - * @return string Template file's content. - * - * @throws \RuntimeException If there is no such template file or the file - * is not readable. - */ - protected function getTemplateFileContent($template_name) - { - $full_file_path = MIBEW_FS_ROOT . '/' . $this->stylePath - . '/templates/' . $template_name . '.tpl'; - - if (!is_readable($full_file_path)) { - throw new \RuntimeException( - 'Cannot load template file: "' . $full_file_path . '"' - ); - } - - return file_get_contents($full_file_path); - } -} diff --git a/src/mibew/styles/dialogs/default/chat.css b/src/mibew/styles/dialogs/default/chat.css index 88fbaf76..69ee6e24 100644 --- a/src/mibew/styles/dialogs/default/chat.css +++ b/src/mibew/styles/dialogs/default/chat.css @@ -104,9 +104,8 @@ img { text-decoration: none; } #page-title { - position: absolute; - right: 14px; - bottom: 5px; + float: right; + margin-top: 5px; text-align: right; } /* ----------- */ diff --git a/src/mibew/styles/dialogs/default/templates/agentchat.tpl b/src/mibew/styles/dialogs/default/templates/agentchat.tpl deleted file mode 100644 index 9b720b3f..00000000 --- a/src/mibew/styles/dialogs/default/templates/agentchat.tpl +++ /dev/null @@ -1 +0,0 @@ -${include:chat.tpl} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/agentrochat.tpl b/src/mibew/styles/dialogs/default/templates/agentrochat.tpl deleted file mode 100644 index 9b720b3f..00000000 --- a/src/mibew/styles/dialogs/default/templates/agentrochat.tpl +++ /dev/null @@ -1 +0,0 @@ -${include:chat.tpl} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/chat.tpl b/src/mibew/styles/dialogs/default/templates/chat.tpl deleted file mode 100644 index e006481e..00000000 --- a/src/mibew/styles/dialogs/default/templates/chat.tpl +++ /dev/null @@ -1,119 +0,0 @@ - - - - - ${msg:chat.window.title.agent} - - - - ${page:additional_css} - - - - - - - - - - - - - - - - - - - - - ${page:additional_js} - - - - - - - -
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/error.tpl b/src/mibew/styles/dialogs/default/templates/error.tpl deleted file mode 100644 index 116df0ce..00000000 --- a/src/mibew/styles/dialogs/default/templates/error.tpl +++ /dev/null @@ -1,45 +0,0 @@ - - - - ${msg:chat.error_page.title} - - - - -
- -
-
-
-
- ${msg:chat.error_page.close} -
-
 
-
-
-
- ${harderrors} -
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/mail.tpl b/src/mibew/styles/dialogs/default/templates/mail.tpl deleted file mode 100644 index 850d415d..00000000 --- a/src/mibew/styles/dialogs/default/templates/mail.tpl +++ /dev/null @@ -1,56 +0,0 @@ - - - - ${msg:chat.window.title.user} - - - - - -
- - -
- -
-
-
-
- ${msg:mailthread.close} -
-
- ${msg:mailthread.enter_email} -   - ${msg:mailthread.perform} -
-
-
-
- ${if:errors} - ${errors} - ${endif:errors} -
- - - diff --git a/src/mibew/styles/dialogs/default/templates/mailsent.tpl b/src/mibew/styles/dialogs/default/templates/mailsent.tpl deleted file mode 100644 index b978fff3..00000000 --- a/src/mibew/styles/dialogs/default/templates/mailsent.tpl +++ /dev/null @@ -1,45 +0,0 @@ - - - - ${msg:chat.window.title.user} - - - - -
- -
-
-
-
- ${msg:chat.mailthread.sent.close} -
-
${msg:chat.mailthread.sent.content,email}
-
-
-
-   -
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/nochat.tpl b/src/mibew/styles/dialogs/default/templates/nochat.tpl deleted file mode 100644 index 54a3317b..00000000 --- a/src/mibew/styles/dialogs/default/templates/nochat.tpl +++ /dev/null @@ -1,45 +0,0 @@ - - - - ${msg:chat.window.title.user} - - - - -
- -
-
-
-
- ${msg:page.chat.old_browser.close} -
-
${msg:page.chat.old_browser.problem}
-
-
-
- ${msg:page.chat.old_browser.list} -
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/redirect.tpl b/src/mibew/styles/dialogs/default/templates/redirect.tpl deleted file mode 100644 index 9696874c..00000000 --- a/src/mibew/styles/dialogs/default/templates/redirect.tpl +++ /dev/null @@ -1,62 +0,0 @@ - - - - ${msg:chat.window.title.agent} - - - - -
- -
-
-
-
- ${msg:chat.redirect.back} -
-
${msg:chat.redirect.choose}
-
-
-
-
- ${if:redirectToAgent} - ${msg:chat.redirect.operator} -
    - ${page:redirectToAgent} -
- ${endif:redirectToAgent} -
-
- ${if:redirectToGroup} - ${msg:chat.redirect.group} -
    - ${page:redirectToGroup} -
- ${endif:redirectToGroup} -
-
%nbsp;
-
${pagination}
-
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates/redirected.tpl b/src/mibew/styles/dialogs/default/templates/redirected.tpl deleted file mode 100644 index de11039b..00000000 --- a/src/mibew/styles/dialogs/default/templates/redirected.tpl +++ /dev/null @@ -1,45 +0,0 @@ - - - - ${msg:chat.window.title.user} - - - - -
- -
-
-
-
- ${msg:chat.redirected.close} -
-
${page:message}
-
-
-
-   -
- - \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars new file mode 100644 index 00000000..2f5232bf --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars @@ -0,0 +1,56 @@ + + + + + {{#block "windowTitle"}}{{l10n "chat.window.title.user"}}{{/block}} + + + {{#block "head"}}{{/block}} + + + + {{#block "page"}} + {{! Logo block}} +
+ +
+ + {{! Header block. Contains page description and buttons}} +
+
+
+ {{#block "buttons"}}{{/block}} +
+
+ {{#block "message"}} {{/block}} +
+
+
+ + {{! Main content block}} +
+ {{#block "content"}} {{/block}} +
+ {{/block}} + + \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/agentchat.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/agentchat.handlebars new file mode 100644 index 00000000..1f928c3d --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/agentchat.handlebars @@ -0,0 +1 @@ +{{> chat}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/agentrochat.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/agentrochat.handlebars new file mode 100644 index 00000000..1f928c3d --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/agentrochat.handlebars @@ -0,0 +1 @@ +{{> chat}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars new file mode 100644 index 00000000..c24b263d --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars @@ -0,0 +1,116 @@ +{{#extends "_layout"}} + {{#override "head"}} + + + {{additional_css}} + + + + + + + + + + + + + + + + + + + + + {{additional_js}} + + + + + + {{/override}} + + {{#override "page"}} +
+ {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/error.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/error.handlebars new file mode 100644 index 00000000..b415c0d3 --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/error.handlebars @@ -0,0 +1,23 @@ +{{#extends "_layout"}} + {{#override "windowTitle"}}{{l10n "chat.error_page.title"}}{{/override}} + + {{#override "pageTitle"}}{{l10n "chat.error_page.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'chat.error_page.close'}} + + {{/override}} + + {{#override "content"}} + {{#if errors}} + {{l10n "harderrors.header"}} + {{#each errors}} + {{l10n "errors.prefix"}} + {{{this}}} + {{l10n "errors.suffix"}} + {{/each}} + {{l10n "errors.footer"}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/mail.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/mail.handlebars new file mode 100644 index 00000000..52795c85 --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/mail.handlebars @@ -0,0 +1,34 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "mailthread.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'mailthread.close'}} + + {{/override}} + + {{#override "message"}} +
+ + + + + + {{l10n "mailthread.enter_email"}} +   + {{l10n "mailthread.perform"}} + + {{/override}} + + {{#override "content"}} + {{#if errors}} + {{l10n "errors.header"}} + {{#each errors}} + {{l10n "errors.prefix"}} + {{{this}}} + {{l10n "errors.suffix"}} + {{/each}} + {{l10n "errors.footer"}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/mailsent.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/mailsent.handlebars new file mode 100644 index 00000000..71b5a566 --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/mailsent.handlebars @@ -0,0 +1,11 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "chat.mailthread.sent.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'chat.mailthread.sent.close'}} + + {{/override}} + + {{#override "message"}}{{l10n "chat.mailthread.sent.content" email}}{{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/nochat.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/nochat.handlebars new file mode 100644 index 00000000..5806383c --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/nochat.handlebars @@ -0,0 +1,15 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "chat.error_page.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'page.chat.old_browser.close'}} + + {{/override}} + + {{#override "message"}}{{l10n "page.chat.old_browser.problem"}}{{/override}} + + {{#override "content"}} + {{l10n "page.chat.old_browser.list"}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/redirect.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/redirect.handlebars new file mode 100644 index 00000000..69585813 --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/redirect.handlebars @@ -0,0 +1,32 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "chat.redirect.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'chat.redirect.back'}} + + {{/override}} + + {{#override "message"}}{{l10n "chat.redirect.choose"}}{{/override}} + + {{#override "content"}} +
+ {{#if redirectToAgent}} + {{l10n "chat.redirect.operator"}} +
    + {{{redirectToAgent}}} +
+ {{/if}} +
+
+ {{#if redirectToGroup}} + {{l10n "chat.redirect.group"}} +
    + {{{redirectToGroup}}} +
+ {{/if}} +
+
 
+
{{generatePagination stylePath pagination}}
+ {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/redirected.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/redirected.handlebars new file mode 100644 index 00000000..77e5cc32 --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/redirected.handlebars @@ -0,0 +1,11 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "chat.redirected.title"}}{{/override}} + + {{#override "buttons"}} + + {{l10n 'chat.redirected.close'}} + + {{/override}} + + {{#override "message"}}{{message}}{{/override}} +{{/extends}} \ No newline at end of file From 921f382c6ae8e6a4dc86a53c6dac72777f60c6cf Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 11:44:14 +0000 Subject: [PATCH 08/37] Reorganize dialog style Move client side templates from "handlebars_templates" to "templates_src/client_side" --- src/build.xml | 26 +++++++++---------- .../client_side}/templates.js | 0 .../client_side}/chat/avatar.handlebars | 0 .../chat/controls/close.handlebars | 0 .../chat/controls/history.handlebars | 0 .../chat/controls/redirect.handlebars | 0 .../chat/controls/refresh.handlebars | 0 .../chat/controls/secure_mode.handlebars | 0 .../chat/controls/send_mail.handlebars | 0 .../chat/controls/sound.handlebars | 0 .../chat/controls/user_name.handlebars | 0 .../client_side}/chat/layout.handlebars | 0 .../client_side}/chat/message.handlebars | 0 .../client_side}/chat/message_form.handlebars | 0 .../client_side}/chat/status/base.handlebars | 0 .../chat/status/message.handlebars | 0 .../chat/status/typing.handlebars | 0 .../client_side}/invitation/layout.handlebars | 0 .../leave_message/description.handlebars | 0 .../leave_message/form.handlebars | 0 .../leave_message/layout.handlebars | 0 .../leave_message/sent_description.handlebars | 0 .../client_side}/survey/form.handlebars | 0 .../client_side}/survey/layout.handlebars | 0 .../templates_src/server_side/chat.handlebars | 2 +- 25 files changed, 14 insertions(+), 14 deletions(-) rename src/mibew/styles/dialogs/default/{js/compiled => templates_compiled/client_side}/templates.js (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/avatar.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/close.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/history.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/redirect.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/refresh.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/secure_mode.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/send_mail.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/sound.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/controls/user_name.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/layout.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/message.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/message_form.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/status/base.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/status/message.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/chat/status/typing.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/invitation/layout.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/leave_message/description.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/leave_message/form.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/leave_message/layout.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/leave_message/sent_description.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/survey/form.handlebars (100%) rename src/mibew/styles/dialogs/default/{handlebars_templates => templates_src/client_side}/survey/layout.handlebars (100%) diff --git a/src/build.xml b/src/build.xml index 0b73a386..0f2eeef8 100644 --- a/src/build.xml +++ b/src/build.xml @@ -18,20 +18,20 @@ - + - + - + - + - + Compile templates @@ -41,13 +41,13 @@ - + - + @@ -57,7 +57,7 @@ - + @@ -66,7 +66,7 @@ some info to files --> - + @@ -80,19 +80,19 @@ + 'delete' task because it does not work with dirsets --> Remove temporary files - + - + diff --git a/src/mibew/styles/dialogs/default/js/compiled/templates.js b/src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js similarity index 100% rename from src/mibew/styles/dialogs/default/js/compiled/templates.js rename to src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/avatar.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/avatar.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/avatar.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/avatar.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/close.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/close.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/close.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/close.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/history.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/history.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/history.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/history.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/redirect.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/redirect.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/redirect.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/redirect.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/refresh.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/refresh.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/refresh.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/refresh.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/secure_mode.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/secure_mode.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/secure_mode.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/secure_mode.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/send_mail.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/send_mail.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/send_mail.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/send_mail.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/sound.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/sound.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/sound.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/sound.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/user_name.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/user_name.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/controls/user_name.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/controls/user_name.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/layout.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/message.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/message.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/message.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/message.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/message_form.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/message_form.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/message_form.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/message_form.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/base.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/base.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/status/base.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/base.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/message.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/message.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/status/message.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/message.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/typing.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/chat/status/typing.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/chat/status/typing.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/invitation/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/invitation/layout.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/invitation/layout.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/invitation/layout.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/description.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/leave_message/description.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/description.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/form.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/leave_message/form.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/form.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/leave_message/layout.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/sent_description.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/leave_message/sent_description.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/sent_description.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/survey/form.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/survey/form.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/survey/form.handlebars diff --git a/src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars similarity index 100% rename from src/mibew/styles/dialogs/default/handlebars_templates/survey/layout.handlebars rename to src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars index c24b263d..e749b203 100644 --- a/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/chat.handlebars @@ -15,7 +15,7 @@ - + From c70ad9e6a2fac022589f201e061113a4bbe74a37 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 12:04:12 +0000 Subject: [PATCH 09/37] Fix undefined "mibewroot" var (see issue #21) --- src/mibew/install/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mibew/install/index.php b/src/mibew/install/index.php index 8bae8eab..ff8cc6f8 100644 --- a/src/mibew/install/index.php +++ b/src/mibew/install/index.php @@ -373,7 +373,7 @@ function check_status() if (!check_admin($link)) { $page['nextstep'] = getlocal("installed.login_link"); - $page['nextnotice'] = getlocal2("installed.notice", array("${mibewroot}/install/")); + $page['nextnotice'] = getlocal2("installed.notice", array(MIBEW_WEB_ROOT . "/install/")); $page['nextstepurl'] = MIBEW_WEB_ROOT . "/operator/login.php?login=admin"; } From db2f3367dd9bd5d6d86b35c54ed13c64b8dab8d1 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 12:05:49 +0000 Subject: [PATCH 10/37] Fix extra escaping at the install page --- .../default/templates_src/server_side/install_index.handlebars | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars b/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars index a98884eb..46fd5449 100644 --- a/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars +++ b/src/mibew/styles/pages/default/templates_src/server_side/install_index.handlebars @@ -57,7 +57,7 @@
  • {{#if nextnotice}} - {{nextnotice}}

    + {{{nextnotice}}}

    {{/if}} {{nextstep}} From 4b284126482414c2a1cebe24bae537dd4dd69545 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 14 Feb 2014 14:37:32 +0000 Subject: [PATCH 11/37] Add favicon to dialog style --- .../styles/dialogs/default/images/favicon.ico | Bin 0 -> 894 bytes .../templates_src/server_side/_layout.handlebars | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 src/mibew/styles/dialogs/default/images/favicon.ico diff --git a/src/mibew/styles/dialogs/default/images/favicon.ico b/src/mibew/styles/dialogs/default/images/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..2497c2b60ba72b8a65b647ee041d3bacf24efe09 GIT binary patch literal 894 zcmZQzU<5(|0R|u`!H~hsz#zuJz@P!dKp_SNAO?w(4Q7_=LlAxwfNFpW;EEw!G!bN3 z8nLGr>rBa0nUbqAHD7gduJZIEZCn=3DA8Nk=ydMDvfGyr-@Lg0=7oKCt{%I5eB-hX zzZu24Xu5!kmv#6)x_fzPo7a?l)#*iAK$EBDs{u`Tc<17#8Ra=^aVjp=$0ZB&*VF=aWP5?!871hRg)3Om6?pgB31E0a zM1Wqtd;KIZ1mFtL80)7be*5`E;KaPy}XYCX7herdZm lTmc#b=r3UWA`1e!c)|f$B`)^=?+gt8p966_{`8GY763#9J8=L2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars index 2f5232bf..9056fb81 100644 --- a/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars +++ b/src/mibew/styles/dialogs/default/templates_src/server_side/_layout.handlebars @@ -3,7 +3,7 @@ {{#block "windowTitle"}}{{l10n "chat.window.title.user"}}{{/block}} - + {{#block "head"}}{{/block}} From 0f17cac6263fe3c75f8507c190b2bebfa4e56eb9 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Mon, 17 Feb 2014 10:54:49 +0000 Subject: [PATCH 12/37] Reduse code duplication in dialogs' client side templates --- src/mibew/js/compiled/default/init.js | 2 +- src/mibew/js/compiled/default_app.js | 2 +- src/mibew/js/source/default/init.js | 15 ++- .../client_side/templates.js | 111 ++++++++---------- .../client_side/_logo.handlebars | 25 ++++ .../client_side/chat/layout.handlebars | 25 +--- .../leave_message/layout.handlebars | 25 +--- .../client_side/survey/layout.handlebars | 25 +--- 8 files changed, 95 insertions(+), 135 deletions(-) create mode 100644 src/mibew/styles/dialogs/default/templates_src/client_side/_logo.handlebars diff --git a/src/mibew/js/compiled/default/init.js b/src/mibew/js/compiled/default/init.js index 8fe6de9f..29b332a9 100644 --- a/src/mibew/js/compiled/default/init.js +++ b/src/mibew/js/compiled/default/init.js @@ -5,4 +5,4 @@ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 */ -var Mibew={};(function(a,b){b.Marionette.TemplateCache.prototype.compileTemplate=function(a){return Handlebars.compile(a)};a.Models={};a.Collections={};a.Views={};a.Objects={};a.Objects.Models={};a.Objects.Collections={}})(Mibew,Backbone); +var Mibew={};(function(a,d,b){d.Marionette.TemplateCache.prototype.compileTemplate=function(a){return b.compile(a)};for(var c in b.templates)b.templates.hasOwnProperty(c)&&b.registerPartial(c,b.templates[c]);a.Models={};a.Collections={};a.Views={};a.Objects={};a.Objects.Models={};a.Objects.Collections={}})(Mibew,Backbone,Handlebars); diff --git a/src/mibew/js/compiled/default_app.js b/src/mibew/js/compiled/default_app.js index ac80e185..d1c57cf4 100644 --- a/src/mibew/js/compiled/default_app.js +++ b/src/mibew/js/compiled/default_app.js @@ -4,7 +4,7 @@ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 */ -var Mibew={};(function(a,b){b.Marionette.TemplateCache.prototype.compileTemplate=function(a){return Handlebars.compile(a)};a.Models={};a.Collections={};a.Views={};a.Objects={};a.Objects.Models={};a.Objects.Collections={}})(Mibew,Backbone); +var Mibew={};(function(a,d,b){d.Marionette.TemplateCache.prototype.compileTemplate=function(a){return b.compile(a)};for(var c in b.templates)b.templates.hasOwnProperty(c)&&b.registerPartial(c,b.templates[c]);a.Models={};a.Collections={};a.Views={};a.Objects={};a.Objects.Models={};a.Objects.Collections={}})(Mibew,Backbone,Handlebars); /* Copyright 2005-2013 the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"). diff --git a/src/mibew/js/source/default/init.js b/src/mibew/js/source/default/init.js index 5722d26c..1e6f1473 100644 --- a/src/mibew/js/source/default/init.js +++ b/src/mibew/js/source/default/init.js @@ -11,13 +11,24 @@ */ var Mibew = {}; -(function(Mibew, Backbone){ +(function(Mibew, Backbone, Handlebars){ // Use Backbone.Marionette with handlebars.js Backbone.Marionette.TemplateCache.prototype.compileTemplate = function(rawTemplate) { return Handlebars.compile(rawTemplate); } + // Use all handlebars template as partials too + // We does not use Handlebars.partials property because of it can be changed + // in latter versions of Handlebars.js + for (var index in Handlebars.templates) { + if (!Handlebars.templates.hasOwnProperty(index)) { + continue; + } + + Handlebars.registerPartial(index, Handlebars.templates[index]); + } + /** * @namespace Holds Backbone Models constructors */ @@ -48,4 +59,4 @@ var Mibew = {}; */ Mibew.Objects.Collections = {}; -})(Mibew, Backbone); \ No newline at end of file +})(Mibew, Backbone, Handlebars); \ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js b/src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js index 0fc3aa26..9f67d2fe 100644 --- a/src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js +++ b/src/mibew/styles/dialogs/default/templates_compiled/client_side/templates.js @@ -4,62 +4,55 @@ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 */ -(function(){var r=Handlebars.template,s=Handlebars.templates=Handlebars.templates||{};s.chat_avatar=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h=this.escapeExpression;return(a=e["if"].call(b,b.imageLink,{hash:{},inverse:this.program(3,function(){return'
    '},c),fn:this.program(1,function(a,b){var d,c;d=''},c),data:c}))||0===a?a:""});s.chat_controls_close=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
    ')});s.chat_controls_history=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers); -c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
    ')});s.chat_controls_redirect=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;return(a=e["if"].call(b,(h=b.user,null==h||!1===h?h:h.canPost),{hash:{},inverse:this.noop, -fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
    \n')},c),data:c}))||0===a?a:""});s.chat_controls_refresh=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
    ')});s.chat_controls_secure_mode=r(function(a,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,a.helpers);return'
    '});s.chat_controls_send_mail=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression;c={hash:{},data:c};return b='
    ')});s.chat_controls_sound=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h=e.helperMissing,q=this.escapeExpression;return(a=e["if"].call(b,b.enabled,{hash:{},inverse:this.program(3,function(a,b){var d,c;d={hash:{},data:b};return d='\n
    \n')},c),fn:this.program(1,function(a,b){var d,c;d={hash:{},data:b};return d='\n
    \n')},c),data:c}))||0===a?a:""});s.chat_controls_user_name=r(function(a,b,e,d,c){function h(a,b){var m,f,d;m=""+('\n
    \n \n '}function q(a,d){var m,f,b;b={hash:{},data:d};m='\n '+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+'\n \n '}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var p,t="function",g=this.escapeExpression,k=e.helperMissing,j=this;return(a=e["if"].call(b,(p=b.user,null==p|| -!1===p?p:p.canChangeName),{hash:{},inverse:j.program(6,function(a,b){var m,f;m={hash:{},data:b};return m="\n"+(g((f=e.l10n||a.l10n,f?f.call(a,"chat.client.name",m):k.call(a,"l10n","chat.client.name",m)))+" "+g((f=(f=a.user,null==f||!1===f?f:f.name),typeof f===t?f.apply(a):f))+"\n")},c),fn:j.program(1,function(a,b){var m,f;m={hash:{},data:b};m='\n '+(g((f=e.l10n||a.l10n,f?f.call(a,"chat.client.name",m):k.call(a,"l10n","chat.client.name",m)))+"\n "); -if((f=e["if"].call(a,a.nameInput,{hash:{},inverse:j.program(4,q,b),fn:j.program(2,h,b),data:b}))||0===f)m+=f;return m+="\n"},c),data:c}))||0===a?a:""});s.chat_layout=r(function(a,b,e,d,c){function h(a){var f;return a=""+("\n \n \n \n ')}function q(a){var f;return a=""+('\n \n ')}function p(a){var f;return a=""+("\n \n \n \n ')}function t(a){var f;return a=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers); -c=c||{};var g,k,j="function",l=this.escapeExpression,n=this;d=e.helperMissing;a='\n
    \n \n
    \n\n\n
    \n
    \n \n
    \n
    \n
    \n\n\n
    \n
    \n '; -if((k=e.unless.call(b,(g=b.user,null==g||!1===g?g:g.isAgent),{hash:{},inverse:n.noop,fn:n.program(11,function(){return'\n
    \n '},c),data:c}))||0===k)a+=k;c={hash:{},data:c};return a=a+'\n \n
    \n \n
    \n
    \n
    \n\n\n
    \n\n\n')});s.chat_message=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=this.escapeExpression,p=e.helperMissing;a={hash:{},data:c};a=""+(q((h=e.formatTime||b.formatTime,h?h.call(b,b.created,a):p.call(b,"formatTime",b.created,a)))+" \n");if((h=e["if"].call(b,b.name,{hash:{},inverse:this.noop,fn:this.program(1, -function(a,b){var d,c;d="";(c=e.name)?c=c.call(a,{hash:{},data:b}):(c=a.name,c="function"===typeof c?c.apply(a):c);return d+=q(c)+": "},c),data:c}))||0===h)a+=h;a+="\n";if((h=e["if"].call(b,b.allowFormatting,{hash:{},inverse:this.program(5,function(a, -b){var d,c;c={hash:{},data:b};return q((d=e.apply||a.apply,d?d.call(a,a.message,"urlReplace, nl2br",c):p.call(a,"apply",a.message,"urlReplace, nl2br",c)))},c),fn:this.program(3,function(a,b){var d,c;c={hash:{},data:b};return q((d=e.apply||a.apply,d?d.call(a,a.message,"urlReplace, nl2br, allowTags",c):p.call(a,"apply",a.message,"urlReplace, nl2br, allowTags",c)))},c),data:c}))||0===h)a+=h;return a+="
    "});s.chat_message_form=r(function(a,b,e,d,c){function h(a,b){var d,f;d={hash:{},data:b}; -d='\n \n "}function q(a){var d;return a=""+("\n \n ")}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var p,r="function",g=this.escapeExpression,k=e.helperMissing,j=this;a='
    \n';if((d=e["if"].call(b,(p=b.user,null==p||!1===p?p:p.canPost),{hash:{},inverse:j.noop,fn:j.program(1,function(){return'\n
    \n \n
    \n'}, -c),data:c}))||0===d)a+=d;a+='\n
    \n\n
    \n';if((d=e["if"].call(b,(p=b.user,null==p||!1===p?p:p.canPost),{hash:{},inverse:j.noop,fn:j.program(3,function(a,d){var b,f,c;b='\n
    \n
    \n ';if((c=e["if"].call(a,(f=a.user,null==f||!1===f?f:f.isAgent),{hash:{},inverse:j.noop,fn:j.program(4,h,d),data:d}))||0===c)b+=c;c={hash:{},data:d};b=b+'\n
    \n ');c={hash:{},data:d};return b+=g((f=e.l10n||a.l10n,f?f.call(a,"chat.window.send_message_short_and_shortcut",c):k.call(a,"l10n","chat.window.send_message_short_and_shortcut",c)))+"\n
    \n"},c),data:c}))||0===d)a+=d;return a+'\n
    \n
    '});s.chat_status_base=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};a=this.escapeExpression; -(e=e.title)?e=e.call(b,{hash:{},data:c}):(e=b.title,e="function"===typeof e?e.apply(b):e);return a(e)});s.chat_status_message=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};a=this.escapeExpression;(e=e.message)?e=e.call(b,{hash:{},data:c}):(e=b.message,e="function"===typeof e?e.apply(b):e);return a(e)});s.chat_status_typing=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h;a=e.helperMissing;d=this.escapeExpression; -c={hash:{},data:c};return d((h=e.l10n||b.l10n,h?h.call(b,"typing.remote",c):a.call(b,"l10n","typing.remote",c)))});s.invitation_layout=r(function(a,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,a.helpers);return'
    '});s.leave_message_description=r(function(a,b,e,d,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;d={hash:{},data:c};a='
    \n \n ');d={hash:{},data:c};a+=p((h=e.l10n||b.l10n,h?h.call(b,\n \n
    \n
    ';d={hash:{},data:c};return a+=p((h=e.l10n||b.l10n,h?h.call(b,"leavemessage.descr", -d):q.call(b,"l10n","leavemessage.descr",d)))+"
    "});s.leave_message_form=r(function(a,b,e,d,c){function h(a,d){var b,c;b=''}function q(a,d){var b,c,m;b=""+('\n \n "}function p(){return'selected="selected"'}function r(a,d){var b;return(b=e["if"].call(a,a.selected,{hash:{},inverse:n.noop,fn:n.program(9,g,d),data:d}))||0===b?b:""}function g(a){var d;return l((d=a.description,typeof d===j?d.apply(a):d))}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var k,j="function",l=this.escapeExpression,n=this,m=e.helperMissing;a=""+('
    \n \n \n \n ';if((d=e.unless.call(b,b.groups,{hash:{},inverse:n.noop,fn:n.program(1,function(a,d){var b;return(b=e["if"].call(a,a.groupId,{hash:{}, -inverse:n.noop,fn:n.program(2,h,d),data:d}))||0===b?b:""},c),data:c}))||0===d)a+=d;d={hash:{},data:c};a=a+'\n\n
    \n\n
{{L10n "visitors.table.head.name"}}{{L10n "visitors.table.head.actions"}}{{L10n "visitors.table.head.contactid"}}{{L10n "visitors.table.head.firsttimeonsite"}}{{L10n "visitors.table.head.lasttimeonsite"}}{{L10n "visitors.table.head.invited.by"}}{{L10n "visitors.table.head.invitationtime"}}{{L10n "visitors.table.head.invitations"}}{{L10n "visitors.table.head.etc"}}{{l10n "visitors.table.head.name"}}{{l10n "visitors.table.head.actions"}}{{l10n "visitors.table.head.contactid"}}{{l10n "visitors.table.head.firsttimeonsite"}}{{l10n "visitors.table.head.lasttimeonsite"}}{{l10n "visitors.table.head.invited.by"}}{{l10n "visitors.table.head.invitationtime"}}{{l10n "visitors.table.head.invitations"}}{{l10n "visitors.table.head.etc"}}
\n \n \n \n \n \n \n \n \n ';if((d=e["if"].call(b,b.groups,{hash:{},inverse:n.noop,fn:n.program(4, -function(a,d){var b,c,g;g={hash:{},data:d};b='\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===d)a+=d;a+="\n \n \n \n \n ";if((d=e["if"].call(b,b.showCaptcha,{hash:{},inverse:n.noop,fn:n.program(11,function(){return'\n \n \n \n \n '}, -c),data:c}))||0===d)a+=d;a+='\n
'+(l((k=e.l10n||b.l10n,k?k.call(b,"form.field.email",d):m.call(b,"l10n","form.field.email",d)))+':
';d={hash:{},data:c};a+=l((k=e.l10n||b.l10n,k?k.call(b,"form.field.name",d):m.call(b,"l10n","form.field.name",d)))+':
'+(l((c=e.l10n||a.l10n,c?c.call(a,"form.field.department",g):m.call(a,"l10n","form.field.department",g)))+'\n \n
'; -g={hash:{},data:d};b+=l((c=e.l10n||a.l10n,c?c.call(a,"form.field.department.description",g):m.call(a,"l10n","form.field.department.description",g)))+'\n ';if((g=e.each.call(a,a.groups,{hash:{},inverse:n.noop,fn:n.program(8,r,d),data:d}))||0===g)b+=g;return b+="\n
";d={hash:{},data:c};a+=l((k=e.l10n||b.l10n,k? -k.call(b,"form.field.message",d):m.call(b,"l10n","form.field.message",d)))+':\n \n
\n ';d={hash:{},data:c};return a+=l((k=e.l10n||b.l10n,k?k.call(b,"mailthread.perform",d):m.call(b,"l10n","mailthread.perform",d)))+'\n
 
\n\n
Loading...
'});s.leave_message_layout=r(function(a,b,e,d,c){function h(a){var b; -return a=""+("\n \n \n \n ')}function q(a){var b;return a=""+('\n \n ')}function p(a){var b;return a=""+("\n \n \n \n ')} -function r(a){var b;return a=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var g,k="function",j=this.escapeExpression,l=this;a='\n
\n \n
\n\n\n
\n
\n
\n
\n\n\n
'});s.leave_message_sent_description=r(function(a,b,e,d,c){this.compilerInfo= -[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var h,q=e.helperMissing,p=this.escapeExpression;d={hash:{},data:c};a='
\n \n ');d={hash:{},data:c};a+=p((h=
-e.l10n||b.l10n,h?h.call(b,\n \n
\n
';d={hash:{},data:c};return a+=p((h=e.l10n||b.l10n,h?h.call(b,"leavemessage.sent.message",d):q.call(b,"l10n","leavemessage.sent.message",d)))+"
"});s.survey_form=r(function(a,b,e,d,c){function h(b,a){var d,c;d=''}function q(b,a){var d,c,f;d=""+('\n \n "}function p(){return'selected="selected"'}function r(){return" (offline)"} -function g(b,a){var d;return(d=e["if"].call(b,b.selected,{hash:{},inverse:m.noop,fn:m.program(15,k,a),data:a}))||0===d?d:""}function k(b){var a;return n((a=b.description,typeof a===l?a.apply(b):a))}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var j,l="function",n=this.escapeExpression,m=this,f=e.helperMissing;a=""+('
\n \n \n \n \n ';if((d=e.unless.call(b,b.showEmail,{hash:{},inverse:m.noop,fn:m.program(1,function(b,a){var d,c;d=''},c),data:c}))||0===d)a+=d;a+="\n ";if((d=e.unless.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(3,function(b,a){var d;return(d=e["if"].call(b,b.groupId,{hash:{},inverse:m.noop,fn:m.program(4,h,a),data:a}))||0===d?d:""},c),data:c}))||0===d)a+=d;a+="\n ";if((d=e.unless.call(b,b.showMessage,{hash:{},inverse:m.noop,fn:m.program(6,function(b,a){var d,c;d=''},c),data:c}))||0===d)a+=d;a+='\n\n
\n\n \n ';if((d=e["if"].call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(8,function(b,a){var d,c,h;h={hash:{},data:a};d="\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===d)a+=d;d={hash:{},data:c};a=a+"\n \n \n \n \n ";if((d=e["if"].call(b,b.showEmail,{hash:{},inverse:m.noop,fn:m.program(19,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n '}, -c),data:c}))||0===d)a+=d;a+="\n ";if((d=e["if"].call(b,b.showMessage,{hash:{},inverse:m.noop,fn:m.program(21,function(b,a){var d,c;d={hash:{},data:a};d="\n \n \n \n \n "},c),data:c}))||0===d)a+=d;a+='\n
"+(n((c=e.l10n||b.l10n,c?c.call(b,"form.field.department",h):f.call(b,"l10n","form.field.department",h)))+'\n \n
";h={hash:{},data:a};d+=n((c=e.l10n||b.l10n,c?c.call(b,"form.field.department.description",h):f.call(b,"l10n","form.field.department.description",h)))+'';if((h=e.each.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(14,g,a),data:a}))||0===h)d+= -h;return d+="
"+(n((j=e.l10n||b.l10n,j?j.call(b,"presurvey.name",d):f.call(b,"l10n","presurvey.name",d)))+'
"+(n((c=e.l10n||b.l10n,c?c.call(b,"presurvey.mail",d):f.call(b,"l10n","presurvey.mail",d)))+'
"+(n((c=e.l10n||b.l10n,c?c.call(b,"presurvey.question",d):f.call(b,"l10n","presurvey.question",d)))+'
\n ';d={hash:{},data:c};return a+=n((j=e.l10n||b.l10n,j?j.call(b,"presurvey.submit",d):f.call(b,"l10n","presurvey.submit",d)))+'\n
 
\n
\n
Loading...
'});s.survey_layout= -r(function(a,b,e,d,c){function h(b){var a;return b=""+("\n \n \n \n ')}function q(a){var b;return a= -""+('\n \n ')}function p(b){var a;return b=""+("\n \n \n \n ')}function r(a){var b;return a=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,a.helpers);c=c||{};var g,k,j="function",l=this.escapeExpression,n=this;d=e.helperMissing;a='\n
\n \n
\n\n\n
\n
\n
\n ';k={hash:{},data:c};a+=l((g=e.l10n||b.l10n,g?g.call(b,\n
\n
';k={hash:{},data:c};return a+=l((g=e.l10n||b.l10n,g?g.call(b,"presurvey.intro", -k):d.call(b,"l10n","presurvey.intro",k)))+'
\n
\n
\n\n\n
'})})(); +(function(){var r=Handlebars.template,q=Handlebars.templates=Handlebars.templates||{};q._logo=r(function(d,b,e,a,c){function f(a){var e;return a=""+("\n \n \n \n ')}function n(e){var a;return e=""+('\n \n ')}function j(a){var e;return a=""+("\n \n \n \n ')}function t(e){var a;return e=""+('\n \n ')}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var l,h="function",g=this.escapeExpression,k=this; +d='\n
\n \n
'});q.chat_avatar=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f=this.escapeExpression;return(d=e["if"].call(b,b.imageLink,{hash:{}, +inverse:this.program(3,function(){return'
'},c),fn:this.program(1,function(a,d){var b,c;b=''},c),data:c}))||0===d?d:""});q.chat_controls_close=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f;d=e.helperMissing;a=this.escapeExpression;c={hash:{},data:c};return b='
')});q.chat_controls_history=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f;d=e.helperMissing;a=this.escapeExpression;c={hash:{},data:c};return b='
')});q.chat_controls_redirect= +r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f,n=e.helperMissing,j=this.escapeExpression;return(d=e["if"].call(b,(f=b.user,null==f||!1===f?f:f.canPost),{hash:{},inverse:this.noop,fn:this.program(1,function(a,d){var b,c;b={hash:{},data:d};return b='\n
\n')},c),data:c}))||0===d?d:""});q.chat_controls_refresh= +r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f;d=e.helperMissing;a=this.escapeExpression;c={hash:{},data:c};return b='
')});q.chat_controls_secure_mode=r(function(d,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,d.helpers);return'
'});q.chat_controls_send_mail= +r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f;d=e.helperMissing;a=this.escapeExpression;c={hash:{},data:c};return b='
')});q.chat_controls_sound=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f=e.helperMissing,n=this.escapeExpression;return(d= +e["if"].call(b,b.enabled,{hash:{},inverse:this.program(3,function(a,d){var b,c;b={hash:{},data:d};return b='\n
\n')},c),fn:this.program(1,function(a,d){var b,c;b={hash:{},data:d};return b='\n
\n')},c),data:c}))||0===d?d:""});q.chat_controls_user_name=r(function(d,b,e,a,c){function f(a,b){var d,c,f;d=""+('\n
\n \n '}function n(a,b){var d,c,f;f={hash:{},data:b};d='\n '+l((c=(c=a.user,null==c||!1===c?c:c.name),typeof c===t?c.apply(a):c))+'\n \n '}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var j,t="function",l=this.escapeExpression,h=e.helperMissing,g=this;return(d=e["if"].call(b,(j=b.user,null==j||!1===j?j:j.canChangeName),{hash:{},inverse:g.program(6,function(a,c){var d,b;d={hash:{},data:c};return d="\n"+(l((b=e.l10n||a.l10n,b?b.call(a,"chat.client.name",d):h.call(a,"l10n","chat.client.name",d)))+ +" "+l((b=(b=a.user,null==b||!1===b?b:b.name),typeof b===t?b.apply(a):b))+"\n")},c),fn:g.program(1,function(a,b){var c,d;c={hash:{},data:b};c='\n '+(l((d=e.l10n||a.l10n,d?d.call(a,"chat.client.name",c):h.call(a,"l10n","chat.client.name",c)))+"\n ");if((d=e["if"].call(a,a.nameInput,{hash:{},inverse:g.program(4,n,b),fn:g.program(2,f,b),data:b}))||0===d)c+=d;return c+="\n"},c),data:c}))||0===d?d:""});q.chat_layout=r(function(d,b,e,a,c){this.compilerInfo= +[4,">= 1.0.0"];e=this.merge(e,d.helpers);a=this.merge(a,d.partials);c=c||{};var f,n=e.helperMissing,j=this.escapeExpression;d="\n";if((a=this.invokePartial(a._logo,"_logo",b,e,a,c))||0===a)d+=a;d+='\n\n\n
\n
\n \n
\n
\n
\n\n\n
\n
\n ';if((f= +e.unless.call(b,(a=b.user,null==a||!1===a?a:a.isAgent),{hash:{},inverse:this.noop,fn:this.program(1,function(){return'\n
\n '},c),data:c}))||0===f)d+=f;c={hash:{},data:c};return d=d+'\n \n
\n \n
\n
\n
\n\n\n
\n\n\n')});q.chat_message=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f,n=this.escapeExpression,j=e.helperMissing;d={hash:{},data:c};d=""+(n((f=e.formatTime||b.formatTime,f?f.call(b,b.created,d):j.call(b,"formatTime",b.created,d)))+" \n");if((f=e["if"].call(b,b.name,{hash:{},inverse:this.noop,fn:this.program(1, +function(a,b){var c,d;c="";(d=e.name)?d=d.call(a,{hash:{},data:b}):(d=a.name,d="function"===typeof d?d.apply(a):d);return c+=n(d)+": "},c),data:c}))||0===f)d+=f;d+="\n";if((f=e["if"].call(b,b.allowFormatting,{hash:{},inverse:this.program(5,function(a, +d){var b,c;c={hash:{},data:d};return n((b=e.apply||a.apply,b?b.call(a,a.message,"urlReplace, nl2br",c):j.call(a,"apply",a.message,"urlReplace, nl2br",c)))},c),fn:this.program(3,function(a,d){var b,c;c={hash:{},data:d};return n((b=e.apply||a.apply,b?b.call(a,a.message,"urlReplace, nl2br, allowTags",c):j.call(a,"apply",a.message,"urlReplace, nl2br, allowTags",c)))},c),data:c}))||0===f)d+=f;return d+="
"});q.chat_message_form=r(function(d,b,e,a,c){function f(a,d){var b,c;b={hash:{},data:d}; +b='\n \n "}function n(a){var e;return a=""+("\n \n ")}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var j,r="function",l=this.escapeExpression,h=e.helperMissing,g=this;d='
\n';if((a=e["if"].call(b,(j=b.user,null==j||!1===j?j:j.canPost),{hash:{},inverse:g.noop,fn:g.program(1,function(){return'\n
\n \n
\n'}, +c),data:c}))||0===a)d+=a;d+='\n
\n\n
\n';if((a=e["if"].call(b,(j=b.user,null==j||!1===j?j:j.canPost),{hash:{},inverse:g.noop,fn:g.program(3,function(a,d){var b,c,s;b='\n
\n
\n ';if((s=e["if"].call(a,(c=a.user,null==c||!1===c?c:c.isAgent),{hash:{},inverse:g.noop,fn:g.program(4,f,d),data:d}))||0===s)b+=s;s={hash:{},data:d};b=b+'\n
\n ');s={hash:{},data:d};return b+=l((c=e.l10n||a.l10n,c?c.call(a,"chat.window.send_message_short_and_shortcut",s):h.call(a,"l10n","chat.window.send_message_short_and_shortcut",s)))+"\n
\n"},c),data:c}))||0===a)d+=a;return d+'\n
\n
'});q.chat_status_base=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};d=this.escapeExpression; +(e=e.title)?e=e.call(b,{hash:{},data:c}):(e=b.title,e="function"===typeof e?e.apply(b):e);return d(e)});q.chat_status_message=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};d=this.escapeExpression;(e=e.message)?e=e.call(b,{hash:{},data:c}):(e=b.message,e="function"===typeof e?e.apply(b):e);return d(e)});q.chat_status_typing=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f;d=e.helperMissing;a=this.escapeExpression; +c={hash:{},data:c};return a((f=e.l10n||b.l10n,f?f.call(b,"typing.remote",c):d.call(b,"l10n","typing.remote",c)))});q.invitation_layout=r(function(d,b,e){this.compilerInfo=[4,">= 1.0.0"];this.merge(e,d.helpers);return'
'});q.leave_message_description=r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f,n=e.helperMissing,j=this.escapeExpression;a={hash:{},data:c};d='
\n \n ');a={hash:{},data:c};d+=j((f=e.l10n||b.l10n,f?f.call(b,\n \n
\n
';a={hash:{},data:c};return d+=j((f=e.l10n||b.l10n,f?f.call(b,"leavemessage.descr", +a):n.call(b,"l10n","leavemessage.descr",a)))+"
"});q.leave_message_form=r(function(d,b,e,a,c){function f(a,c){var b,d;b=''}function n(a,d){var b,c,f;b=""+('\n \n "}function j(){return'selected="selected"'}function r(a,c){var d;return(d=e["if"].call(a,a.selected,{hash:{},inverse:m.noop,fn:m.program(9,l,c),data:c}))||0===d?d:""}function l(a){var c;return k((c=a.description,typeof c===g?c.apply(a):c))}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var h,g="function",k=this.escapeExpression,m=this,p=e.helperMissing;d=""+('
\n \n \n \n ';if((a=e.unless.call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(1,function(a,c){var d;return(d=e["if"].call(a,a.groupId,{hash:{}, +inverse:m.noop,fn:m.program(2,f,c),data:c}))||0===d?d:""},c),data:c}))||0===a)d+=a;a={hash:{},data:c};d=d+'\n\n
\n\n \n \n \n \n \n \n \n \n \n ';if((a=e["if"].call(b,b.groups,{hash:{},inverse:m.noop,fn:m.program(4, +function(a,c){var d,b,f;f={hash:{},data:c};d='\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===a)d+=a;d+="\n \n \n \n \n ";if((a=e["if"].call(b,b.showCaptcha,{hash:{},inverse:m.noop,fn:m.program(11,function(){return'\n \n \n \n \n '}, +c),data:c}))||0===a)d+=a;d+='\n
'+(k((h=e.l10n||b.l10n,h?h.call(b,"form.field.email",a):p.call(b,"l10n","form.field.email",a)))+':
';a={hash:{},data:c};d+=k((h=e.l10n||b.l10n,h?h.call(b,"form.field.name",a):p.call(b,"l10n","form.field.name",a)))+':
'+(k((b=e.l10n||a.l10n,b?b.call(a,"form.field.department",f):p.call(a,"l10n","form.field.department",f)))+'\n \n
'; +f={hash:{},data:c};d+=k((b=e.l10n||a.l10n,b?b.call(a,"form.field.department.description",f):p.call(a,"l10n","form.field.department.description",f)))+'\n ';if((f=e.each.call(a,a.groups,{hash:{},inverse:m.noop,fn:m.program(8,r,c),data:c}))||0===f)d+=f;return d+="\n
";a={hash:{},data:c};d+=k((h=e.l10n||b.l10n,h? +h.call(b,"form.field.message",a):p.call(b,"l10n","form.field.message",a)))+':\n \n
\n ';a={hash:{},data:c};return d+=k((h=e.l10n||b.l10n,h?h.call(b,"mailthread.perform",a):p.call(b,"l10n","mailthread.perform",a)))+'\n
 
\n
\n
Loading...
'});q.leave_message_layout=r(function(d,b,e,a,c){this.compilerInfo= +[4,">= 1.0.0"];e=this.merge(e,d.helpers);a=this.merge(a,d.partials);c=c||{};d="\n";if((b=this.invokePartial(a._logo,"_logo",b,e,a,c))||0===b)d+=b;return d+'\n\n\n
\n
\n
\n
\n\n\n
'});q.leave_message_sent_description=r(function(d, +b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var f,n=e.helperMissing,j=this.escapeExpression;a={hash:{},data:c};d='
\n \n ');
+a={hash:{},data:c};d+=j((f=e.l10n||b.l10n,f?f.call(b,\n \n
\n
';a={hash:{},data:c};return d+=j((f=e.l10n||b.l10n,f?f.call(b,"leavemessage.sent.message",a):n.call(b,"l10n","leavemessage.sent.message",a)))+"
"});q.survey_form=r(function(d,b,e,a,c){function f(a,d){var c,b;c=''}function n(a,c){var d,b,f;d=""+('\n \n "}function j(){return'selected="selected"'}function r(){return" (offline)"} +function l(a,d){var c;return(c=e["if"].call(a,a.selected,{hash:{},inverse:p.noop,fn:p.program(15,h,d),data:d}))||0===c?c:""}function h(a){var d;return m((d=a.description,typeof d===k?d.apply(a):d))}this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);c=c||{};var g,k="function",m=this.escapeExpression,p=this,q=e.helperMissing;d=""+('
\n \n \n \n \n ';if((a=e.unless.call(b,b.showEmail,{hash:{},inverse:p.noop,fn:p.program(1,function(a,d){var c,b;c=''},c),data:c}))||0===a)d+=a;d+="\n ";if((a=e.unless.call(b,b.groups,{hash:{},inverse:p.noop,fn:p.program(3,function(a,d){var c;return(c=e["if"].call(a,a.groupId,{hash:{},inverse:p.noop,fn:p.program(4,f,d),data:d}))||0===c?c:""},c),data:c}))||0===a)d+=a;d+="\n ";if((a=e.unless.call(b,b.showMessage,{hash:{},inverse:p.noop,fn:p.program(6,function(a,d){var c,b;c=''},c),data:c}))||0===a)d+=a;d+='\n\n
\n\n \n ';if((a=e["if"].call(b,b.groups,{hash:{},inverse:p.noop,fn:p.program(8,function(a,d){var b,c,f;f={hash:{},data:d};b="\n \n \n \n \n \n \n \n \n "},c),data:c}))||0===a)d+=a;a={hash:{},data:c};d=d+"\n \n \n \n \n ";if((a=e["if"].call(b,b.showEmail,{hash:{},inverse:p.noop,fn:p.program(19,function(a,b){var d,c;d={hash:{},data:b};d="\n \n \n \n \n '}, +c),data:c}))||0===a)d+=a;d+="\n ";if((a=e["if"].call(b,b.showMessage,{hash:{},inverse:p.noop,fn:p.program(21,function(a,c){var d,b;d={hash:{},data:c};d="\n \n \n \n \n "},c),data:c}))||0===a)d+=a;d+='\n
"+(m((c=e.l10n||a.l10n,c?c.call(a,"form.field.department",f):q.call(a,"l10n","form.field.department",f)))+'\n \n
";f={hash:{},data:d};b+=m((c=e.l10n||a.l10n,c?c.call(a,"form.field.department.description",f):q.call(a,"l10n","form.field.department.description",f)))+'';if((f=e.each.call(a,a.groups,{hash:{},inverse:p.noop,fn:p.program(14,l,d),data:d}))||0===f)b+= +f;return b+="
"+(m((g=e.l10n||b.l10n,g?g.call(b,"presurvey.name",a):q.call(b,"l10n","presurvey.name",a)))+'
"+(m((c=e.l10n||a.l10n,c?c.call(a,"presurvey.mail",d):q.call(a,"l10n","presurvey.mail",d)))+'
"+(m((b=e.l10n||a.l10n,b?b.call(a,"presurvey.question",d):q.call(a,"l10n","presurvey.question",d)))+'
\n ';a={hash:{},data:c};return d+=m((g=e.l10n||b.l10n,g?g.call(b,"presurvey.submit",a):q.call(b,"l10n","presurvey.submit",a)))+'\n
 
\n
\n
Loading...
'});q.survey_layout= +r(function(d,b,e,a,c){this.compilerInfo=[4,">= 1.0.0"];e=this.merge(e,d.helpers);a=this.merge(a,d.partials);c=c||{};var f,n=e.helperMissing,j=this.escapeExpression;d="\n";if((a=this.invokePartial(a._logo,"_logo",b,e,a,c))||0===a)d+=a;f={hash:{},data:c};d=d+'\n\n\n
\n
\n
\n ');f={hash:{},data:c};d+=j((a=e.l10n||b.l10n,a?a.call(b,\n
\n
';f={hash:{},data:c};return d+=j((a=e.l10n||b.l10n,a?a.call(b,"presurvey.intro", +f):n.call(b,"l10n","presurvey.intro",f)))+'
\n
\n
\n\n\n
'})})(); diff --git a/src/mibew/styles/dialogs/default/templates_src/client_side/_logo.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/_logo.handlebars new file mode 100644 index 00000000..73beb57e --- /dev/null +++ b/src/mibew/styles/dialogs/default/templates_src/client_side/_logo.handlebars @@ -0,0 +1,25 @@ +{{! Logo block}} +
+ +
\ No newline at end of file diff --git a/src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars index e36934f9..65356a1e 100644 --- a/src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars +++ b/src/mibew/styles/dialogs/default/templates_src/client_side/chat/layout.handlebars @@ -1,28 +1,5 @@ {{! Chat window top. Includes logo and some info about company}} -
- -
+{{> _logo}} {{! Chat header}}
diff --git a/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars index 426bd51f..1247ce3a 100644 --- a/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars +++ b/src/mibew/styles/dialogs/default/templates_src/client_side/leave_message/layout.handlebars @@ -1,28 +1,5 @@ {{! Logo block}} -
- -
+{{> _logo}} {{! Header block. Contains description}}
diff --git a/src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars b/src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars index 3218043b..a5b76be4 100644 --- a/src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars +++ b/src/mibew/styles/dialogs/default/templates_src/client_side/survey/layout.handlebars @@ -1,28 +1,5 @@ {{! Logo block}} -
- -
+{{> _logo}} {{! Header block. Contains description and close link}}
From f0f612b11a7f87484d5ee824b073f4ba314f2cf4 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Tue, 18 Feb 2014 09:10:03 +0000 Subject: [PATCH 13/37] Use correct default config params for page and chat styles --- .../libs/classes/Mibew/Style/ChatStyle.php | 19 ++++--------------- .../libs/classes/Mibew/Style/PageStyle.php | 19 +++++++++++++++---- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/mibew/libs/classes/Mibew/Style/ChatStyle.php b/src/mibew/libs/classes/Mibew/Style/ChatStyle.php index 2f77c694..4871d27f 100644 --- a/src/mibew/libs/classes/Mibew/Style/ChatStyle.php +++ b/src/mibew/libs/classes/Mibew/Style/ChatStyle.php @@ -170,22 +170,11 @@ class ChatStyle extends AbstractStyle implements StyleInterface protected function defaultConfigurations() { return array( - 'history' => array( - 'window_params' => '', + 'chat' => array( + 'window_params' => '' ), - 'users' => array( - 'thread_tag' => 'div', - 'visitor_tag' => 'div', - ), - 'tracked' => array( - 'user_window_params' => '', - 'visitor_window_params' => '', - ), - 'invitation' => array( - 'window_params' => '', - ), - 'ban' => array( - 'window_params' => '', + 'mail' => array( + 'window_params' => '' ), 'screenshots' => array(), ); diff --git a/src/mibew/libs/classes/Mibew/Style/PageStyle.php b/src/mibew/libs/classes/Mibew/Style/PageStyle.php index 73262686..1bbdbef4 100644 --- a/src/mibew/libs/classes/Mibew/Style/PageStyle.php +++ b/src/mibew/libs/classes/Mibew/Style/PageStyle.php @@ -149,11 +149,22 @@ class PageStyle extends AbstractStyle implements StyleInterface protected function defaultConfigurations() { return array( - 'chat' => array( - 'window_params' => '' + 'history' => array( + 'window_params' => '', ), - 'mail' => array( - 'window_params' => '' + 'users' => array( + 'thread_tag' => 'div', + 'visitor_tag' => 'div', + ), + 'tracked' => array( + 'user_window_params' => '', + 'visitor_window_params' => '', + ), + 'invitation' => array( + 'window_params' => '', + ), + 'ban' => array( + 'window_params' => '', ), 'screenshots' => array(), ); From aa3435bfd7cad69dbdcaf64d068033ff2de1fa77 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Tue, 18 Feb 2014 09:11:47 +0000 Subject: [PATCH 14/37] Use chat window params from config for button generation --- src/mibew/libs/getcode.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/mibew/libs/getcode.php b/src/mibew/libs/getcode.php index cf5c156e..ec8d99c5 100644 --- a/src/mibew/libs/getcode.php +++ b/src/mibew/libs/getcode.php @@ -17,6 +17,7 @@ // Import namespaces and classes of the core use Mibew\Settings; +use Mibew\Style\ChatStyle; use Mibew\Style\InvitationStyle; function generate_button( @@ -48,7 +49,15 @@ function generate_button( "'" . $link, "url='+escape(document.location.href$modsecfix)+'&referrer='+escape(document.referrer$modsecfix)" ); - $popup_options = "toolbar=0,scrollbars=0,location=0,status=1,menubar=0,width=640,height=480,resizable=1"; + + // Get popup window configurations + if ($style) { + $chat_style = new ChatStyle($style); + $chat_configurations = $chat_style->configurations(); + $popup_options = $chat_configurations['chat']['window_params']; + } else { + $popup_options = "toolbar=0,scrollbars=0,location=0,status=1,menubar=0,width=640,height=480,resizable=1"; + } // Generate operator code field if ($operator_code) { From 8c0dca3df7fbdb464e010a37f27e2c2c45b1afd7 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Tue, 18 Feb 2014 11:17:35 +0000 Subject: [PATCH 15/37] Use chat style defined params for invitation window --- src/mibew/operator/users.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mibew/operator/users.php b/src/mibew/operator/users.php index 699ca8e9..035ff9c6 100644 --- a/src/mibew/operator/users.php +++ b/src/mibew/operator/users.php @@ -49,6 +49,7 @@ $page['geoWindowParams'] = Settings::get('geolinkparams'); $chat_style = new ChatStyle(ChatStyle::currentStyle()); $style_config = $chat_style->configurations(); $page['chatStyles.chatWindowParams'] = $style_config['chat']['window_params']; +$page['coreStyles.inviteWindowParams'] = $style_config['chat']['window_params']; // Load page style options $page_style = new PageStyle(PageStyle::currentStyle()); @@ -57,7 +58,6 @@ $page['coreStyles.threadTag'] = $style_config['users']['thread_tag']; $page['coreStyles.visitorTag'] = $style_config['users']['visitor_tag']; $page['coreStyles.trackedUserWindowParams'] = $style_config['tracked']['user_window_params']; $page['coreStyles.trackedVisitorWindowParams'] = $style_config['tracked']['visitor_window_params']; -$page['coreStyles.inviteWindowParams'] = $style_config['invitation']['window_params']; $page['coreStyles.banWindowParams'] = $style_config['ban']['window_params']; $page['title'] = getlocal("clients.title"); From 15b494a2ac3afc9aa08330325fcbfea7754bedc1 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Tue, 18 Feb 2014 12:32:37 +0000 Subject: [PATCH 16/37] Remove invitation iframe border in IE<9 --- src/mibew/js/compiled/widget.js | 6 +++--- src/mibew/js/source/widget.js | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/mibew/js/compiled/widget.js b/src/mibew/js/compiled/widget.js index bae97b3b..ad47ca45 100644 --- a/src/mibew/js/compiled/widget.js +++ b/src/mibew/js/compiled/widget.js @@ -13,6 +13,6 @@ this.loadScript(f));for(var j in a)a.hasOwnProperty(j)&&(j in this.handlersDepen b.Widget.prototype.loadScript=function(a){var c=this,b=this.doLoadScript(this.requestedScripts[a].url,a);b.onload=function(){c.scriptReady(a)};b.onreadystatechange=function(){("complete"==this.readyState||"loaded"==this.readyState)&&c.scriptReady(a)}};b.Widget.prototype.doLoadScript=function(a,b){var d=document.createElement("script");d.setAttribute("type","text/javascript");d.setAttribute("src",a);d.setAttribute("id",b);document.getElementsByTagName("head")[0].appendChild(d);return d};b.Widget.prototype.scriptReady= function(a){this.requestedScripts[a].status="ready";for(var b in this.handlers)this.handlers.hasOwnProperty(b)&&this.canRunHandler(b)&&(this.handlers[b](),delete this.handlers[b])};b.Widget.prototype.canRunHandler=function(a){a=this.handlersDependences[a];for(var b=0;b
';if(b=document.getElementById("mibewinvitation"))b.innerHTML=a};b.Invitation.show=function(){var a= -document.getElementById("mibewinvitationpopup");a&&(a.style.display="block")};b.Invitation.hide=function(){var a=document.getElementById("mibewinvitationpopup");a&&a.parentNode.removeChild(a)};b.Invitation.accept=function(){document.getElementById("mibewAgentButton")&&(document.getElementById("mibewAgentButton").onclick(),b.Invitation.hide())};b.Invitation.reject=function(){b.Objects.widget.sendToServer({invitation_rejected:1});b.Invitation.hide()};b.APIFunctions={};b.APIFunctions.updateUserId=function(a){b.Utils.createCookie(b.Objects.widget.visitorCookieName, -a.user.id)};b.APIFunctions.invitationCreate=function(a){b.Invitation.create(a.invitation)};b.APIFunctions.invitationClose=function(){b.Invitation.hide()}})(Mibew); +b&&(a+='

'+b+"

");d&&(a+=''+b+'');e&&(a+='');h&&(a+='
'+h+"
");a+='
';if(b=document.getElementById("mibewinvitation"))b.innerHTML=a};b.Invitation.show= +function(){var a=document.getElementById("mibewinvitationpopup");a&&(a.style.display="block")};b.Invitation.hide=function(){var a=document.getElementById("mibewinvitationpopup");a&&a.parentNode.removeChild(a)};b.Invitation.accept=function(){document.getElementById("mibewAgentButton")&&(document.getElementById("mibewAgentButton").onclick(),b.Invitation.hide())};b.Invitation.reject=function(){b.Objects.widget.sendToServer({invitation_rejected:1});b.Invitation.hide()};b.APIFunctions={};b.APIFunctions.updateUserId= +function(a){b.Utils.createCookie(b.Objects.widget.visitorCookieName,a.user.id)};b.APIFunctions.invitationCreate=function(a){b.Invitation.create(a.invitation)};b.APIFunctions.invitationClose=function(){b.Invitation.hide()}})(Mibew); diff --git a/src/mibew/js/source/widget.js b/src/mibew/js/source/widget.js index e01a964c..f9628d55 100644 --- a/src/mibew/js/source/widget.js +++ b/src/mibew/js/source/widget.js @@ -404,8 +404,9 @@ var Mibew = {}; // Broadcast message from the thread related with invitation into iframe if (threadUrl) { - popuptext += ''; + popuptext += ''; } // Add accept button if acceptCaption set From 7e188d1b0545f8771890934fdb087f5ebee8a357 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Wed, 19 Feb 2014 08:53:20 +0000 Subject: [PATCH 17/37] Fix typos and split long lines in comments --- src/mibew/libs/canned.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/mibew/libs/canned.php b/src/mibew/libs/canned.php index a662d191..b133d0ec 100644 --- a/src/mibew/libs/canned.php +++ b/src/mibew/libs/canned.php @@ -24,7 +24,8 @@ use Mibew\Database; * @param string $locale 2-digit ISO-639-1 code for language * @param integer $group_id Group ID for the canned messages * - * @return array Each its element is canned message structure. contains (id integer, vctitle string, vcvalue string) + * @return array Each its element is canned message structure. contains + * (id integer, vctitle string, vcvalue string) */ function load_canned_messages($locale, $group_id) { @@ -47,9 +48,10 @@ function load_canned_messages($locale, $group_id) /** * Get information about first existing canned message from database * - * @param integer $key ID of canned message witch will be returned + * @param integer $key ID of canned message which will be returned * - * @return null|array It is canned message structure. contains (vctitle string, vcvalue string) + * @return null|array It is canned message structure. contains (vctitle string, + * vcvalue string) */ function load_canned_message($key) { @@ -66,7 +68,7 @@ function load_canned_message($key) /** * Updates information about existing canned message in database * - * @param integer $key id of canned message witch must be update + * @param integer $key id of canned message which must be update * @param string $title new title for this canned message * @param string $message new message for this canned message */ From 92f14d52f325f8ec1cd15967f91972a894ecf9fd Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Wed, 19 Feb 2014 10:43:56 +0000 Subject: [PATCH 18/37] Update access restrictions for chat style's files --- src/mibew/styles/dialogs/.htaccess | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mibew/styles/dialogs/.htaccess b/src/mibew/styles/dialogs/.htaccess index f3bd0a6b..1fe358ef 100644 --- a/src/mibew/styles/dialogs/.htaccess +++ b/src/mibew/styles/dialogs/.htaccess @@ -1,3 +1,3 @@ - + Deny from all \ No newline at end of file From 87c5569dabb8652b24f955d94c6bcd6d73c38a8a Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Wed, 19 Feb 2014 10:46:21 +0000 Subject: [PATCH 19/37] Update access restrictions for pages styles' files --- src/mibew/styles/pages/.htaccess | 3 +++ src/mibew/styles/pages/default/templates_src/.htaccess | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 src/mibew/styles/pages/.htaccess delete mode 100644 src/mibew/styles/pages/default/templates_src/.htaccess diff --git a/src/mibew/styles/pages/.htaccess b/src/mibew/styles/pages/.htaccess new file mode 100644 index 00000000..1fe358ef --- /dev/null +++ b/src/mibew/styles/pages/.htaccess @@ -0,0 +1,3 @@ + + Deny from all + \ No newline at end of file diff --git a/src/mibew/styles/pages/default/templates_src/.htaccess b/src/mibew/styles/pages/default/templates_src/.htaccess deleted file mode 100644 index 14249c50..00000000 --- a/src/mibew/styles/pages/default/templates_src/.htaccess +++ /dev/null @@ -1 +0,0 @@ -Deny from all \ No newline at end of file From c495135e56b4bbb8a97c0f7b4091132beec271c0 Mon Sep 17 00:00:00 2001 From: "Fedor A. Fetisov" Date: Wed, 19 Feb 2014 20:06:33 +0400 Subject: [PATCH 20/37] Rewrite script for headers update --- src/tools/header_update.pl | 264 +++++++++++++++++++++++++++++++------ 1 file changed, 223 insertions(+), 41 deletions(-) diff --git a/src/tools/header_update.pl b/src/tools/header_update.pl index c34ab643..f29ac144 100755 --- a/src/tools/header_update.pl +++ b/src/tools/header_update.pl @@ -1,56 +1,238 @@ #!/usr/bin/perl +=head1 cli-script for headers update -$sourceFolder = "../mibew"; + Copyright 2005-2013 the original author or authors. -sub file_content($) { - my $input = $_[0]; - open( IN1, "< $input" ) or die "cannot find file $input"; - $/ = EOI; - $content = ; - $content =~ s/\r//g; - close( IN1 ); - return $content; + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +=head2 Usage + +header_update.pl [--quiet] --dir --header
+[--exclude-dir ...] + +header_update.pl --help + +=head2 Example + +header_update.pl --dir ../mibew --header header.txt +=cut + +use strict; +use warnings; + +use Getopt::Long qw(:config no_ignore_case bundling no_auto_abbrev); + +my $options = {}; +my @exclude_dirs; + +# get and check specified cli options +unless ( GetOptions( $options, + 'help|h', + 'quiet|q', + 'dir=s', + 'header=s', + 'exclude-dir=s' => \@exclude_dirs ) && + scalar(keys(%$options)) && + ( !$options->{'help'} && + ($options->{'dir'} && + $options->{'header'}) ) ) { + + print STDERR "Usage:\t$0 [--quiet] --dir " . + "--header
[--exclude-dir ...]" . + "\n\t$0 --help\n\n" . + "Example: $0 --dir ../mibew --header header.txt\n\n\n"; + exit(1); + +} +$options->{'quiet'} ||= 0; + +# get new header as a raw text +unless (open(IN, '<', $options->{'header'})) { + print STDERR "[fatal] Can't read header file: $!\n"; + exit(1); } -$php_header = file_content("header.txt"); -$php_header =~ s/\s+$//; +# transform header into a valid comment +print "[info] Reading header file\n" unless $options->{'quiet'}; +my $header = "/*\n"; +while() { + chomp; + $header .= $_ ? " * $_\n" : " *\n"; +} +close(IN); +$header .= " */"; -@allfiles = (); +# fix paths of the excluded directories +map { $_ = fix_dir_name($_) } @exclude_dirs; -sub process_folder($) { - my($from) = @_; - - opendir(DIR, $from) || die "can't opendir $from: $!"; - my @content = readdir(DIR); - closedir DIR; +# update headers +update_dir($options->{'dir'}, $header, \@exclude_dirs, $options->{'quiet'}); - for(grep { -f "$from/$_" && ($_ !~ /^\./ || $_ eq ".htaccess") } @content) { - push @allfiles, "$from/$_"; +############################################################################## + +# Function: update_dir +# Description +# Recursive function to update headers of all files in the directory and +# all of its subdirectories +# Argument(s) +# 1. (string) name of the directory +# 2. (string) new header as a valid comment +# 3. (link to array) list of excluded directories that should be skipped +# 4. (boolean) flag of the quiet mode +# Returns +# 1 on success or 0 on error +sub update_dir { + my $dir = shift; + my $header = shift; + my $exclude_dirs = shift; + my $quiet = shift || 0; + +# fix path of the directory + $dir = fix_dir_name($dir); + +# check whether the directory is excluded and should be skipped + foreach (@$exclude_dirs) { + if ($dir eq $_) { + print "[info] Skipped excluded directory $dir\n" unless $quiet; + return 0; } - for(grep { -d "$from/$_" && $_ !~ /^\./ } @content) { - process_folder("$from/$_"); + } + +# proceed with the directory + my $handler; + unless (opendir($handler, $dir)) { + print STDERR "[warn] Can't open directory $dir: $!\n"; + return 0; + } + while (my $item = readdir($handler)) { + next if ($item =~ /^\.*$/); + if (-d $dir . '/' . $item) { +# proceed with a subdirectory + print "[info] Processing directory $dir/$item\n" unless $quiet; + update_dir($dir . '/' . $item, $header, $exclude_dirs, $quiet); } + else { +# proceed with a file + print "[info] Updating file $dir/$item\n" unless $quiet; + update_file($dir . '/' . $item, $header, $quiet); + } + } + close($handler); + return 1; } -process_folder($sourceFolder); +# Function: update_file +# Description +# Function to update header of the (php) file +# Argument(s) +# 1. (string) name of the file +# 2. (string) new header as a valid comment +# 3. (boolean) flag of the quiet mode +# Returns +# 1 on success or 0 on error +sub update_file { + my $file = shift; + my $header = shift; + my $quiet = shift || 0; -P: for $phpfile (grep { /\.php$/ } @allfiles) { - $content = file_content($phpfile); - $content =~ s/\s+$//g; - die "not a php: $phpfile" unless $content =~ /^<\?php\n(\/\*.*?\*\/)?/s; - die "no comment in $phpfile" unless defined($1); - $comment = $1; - if($comment =~ /\[external\]/) { - next P; - }; - $newcomment = "$php_header"; - $newcomment =~ s/^/ * /gm; - $newcomment =~ s/\s+$//gm; - $newcomment = "/*\n$newcomment\n */"; - - $content =~ s/^(<\?php\n)\/\*.*?\*\//$1$newcomment/s; - - open( OUT, "> $phpfile" ) or die "cannot write file: $phpfile\n"; +# check file's extension + unless ($file =~ /\.php$/) { + print "[info] Skipped file $file: not a php script\n" unless $quiet; + return 0; + } + +# try to get the contents of the file + my $content = get_file_content($file); + unless ($content->{'success'}) { + print "[info] Skipped file $file: unable to get content\n" unless $quiet; + return 0; + } + +# check file's content to be a php code + unless ($content->{'content'} =~ /^<\?php/) { + print "[info] Skipped file $file: not a php script\n" unless $quiet; + return 0; + } + +# update header + $content->{'content'} =~ s~^(<\?php\n)/\*.*?\*/~$1$header~s; + +# try to set the new contents of the file + if (set_file_content($file, $content->{'content'})) { + print "[info] Successfully updated file $file\n" unless $quiet; + return 1; + } + else { + print "[info] Failed to update file $file\n" unless $quiet; + return 0; + } +} + +# Function: get_file_content +# Description +# Function to get a content of a file +# Argument(s) +# 1. (string) name of the file +# Returns +# (link to hash) result as a hash: +# +# { 'success' => 1 on success or 0 on error, +# 'content' => on success or +# empty string on error } +sub get_file_content { + my $file = shift; + unless (open(IN, '<', $file)) { + print STDERR "[warn] Can't read file $file: $!\n"; + return { 'success' => 0, + 'content' => '' }; + } + my @content = ; + close(IN); + return { 'success' => 1, + 'content' => join('', @content) }; +} + +# Function: set_file_content +# Description +# Function to set a content for a file +# Argument(s) +# 1. (string) name of the file +# 2. (string) new content +# Returns +# 1 on success or 0 on error +sub set_file_content { + my $file = shift; + my $content = shift; + unless (open(OUT, '>', $file)) { + print STDERR "[warn] Can't write file $file: $!\n"; + return 0; + } print OUT $content; - close( OUT ); + close(OUT); + return 1; +} + +# Function: fix_dir_name +# Description +# Function to fix a full name of a directory, i.e. to remove the double +# slashes and a trail slash +# Argument(s) +# 1. (string) full name of a directory +# Returns +# (string) fixed full name of a directory +sub fix_dir_name { + my $dir = shift; + $dir =~ s~/{2,}~/~g; + $dir =~ s~/$~~; + return $dir; } From c46be46bb8c4b7be172d0507b9796e8ba7e0076c Mon Sep 17 00:00:00 2001 From: "Fedor A. Fetisov" Date: Wed, 19 Feb 2014 20:13:34 +0400 Subject: [PATCH 21/37] Update source header and a header in the tool for headers update --- src/tools/header.txt | 2 +- src/tools/header_update.pl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tools/header.txt b/src/tools/header.txt index 1c735e25..cc3a208a 100644 --- a/src/tools/header.txt +++ b/src/tools/header.txt @@ -1,4 +1,4 @@ -Copyright 2005-2013 the original author or authors. +Copyright 2005-2014 the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/src/tools/header_update.pl b/src/tools/header_update.pl index f29ac144..25a9c96f 100755 --- a/src/tools/header_update.pl +++ b/src/tools/header_update.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl =head1 cli-script for headers update - Copyright 2005-2013 the original author or authors. + Copyright 2005-2014 the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From 3d09666c68c5cad2af3d729e43ccce79b6d63dfe Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Thu, 20 Feb 2014 12:35:49 +0000 Subject: [PATCH 22/37] Update Underscore.js to v.1.6.0 --- src/mibew/js/libs/underscore-min.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/mibew/js/libs/underscore-min.js b/src/mibew/js/libs/underscore-min.js index 4db97299..3434d6c5 100644 --- a/src/mibew/js/libs/underscore-min.js +++ b/src/mibew/js/libs/underscore-min.js @@ -1,7 +1,6 @@ -// Underscore.js 1.5.0 +// Underscore.js 1.6.0 // http://underscorejs.org -// (c) 2009-2011 Jeremy Ashkenas, DocumentCloud Inc. -// (c) 2011-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// (c) 2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors // Underscore may be freely distributed under the MIT license. -!function(){var n=this,t=n._,r={},e=Array.prototype,u=Object.prototype,i=Function.prototype,a=e.push,o=e.slice,c=e.concat,l=u.toString,f=u.hasOwnProperty,s=e.forEach,p=e.map,v=e.reduce,h=e.reduceRight,d=e.filter,g=e.every,m=e.some,y=e.indexOf,b=e.lastIndexOf,x=Array.isArray,_=Object.keys,w=i.bind,j=function(n){return n instanceof j?n:this instanceof j?(this._wrapped=n,void 0):new j(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=j),exports._=j):n._=j,j.VERSION="1.5.0";var A=j.each=j.forEach=function(n,t,e){if(null!=n)if(s&&n.forEach===s)n.forEach(t,e);else if(n.length===+n.length){for(var u=0,i=n.length;i>u;u++)if(t.call(e,n[u],u,n)===r)return}else for(var a in n)if(j.has(n,a)&&t.call(e,n[a],a,n)===r)return};j.map=j.collect=function(n,t,r){var e=[];return null==n?e:p&&n.map===p?n.map(t,r):(A(n,function(n,u,i){e.push(t.call(r,n,u,i))}),e)};var E="Reduce of empty array with no initial value";j.reduce=j.foldl=j.inject=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),v&&n.reduce===v)return e&&(t=j.bind(t,e)),u?n.reduce(t,r):n.reduce(t);if(A(n,function(n,i,a){u?r=t.call(e,r,n,i,a):(r=n,u=!0)}),!u)throw new TypeError(E);return r},j.reduceRight=j.foldr=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),h&&n.reduceRight===h)return e&&(t=j.bind(t,e)),u?n.reduceRight(t,r):n.reduceRight(t);var i=n.length;if(i!==+i){var a=j.keys(n);i=a.length}if(A(n,function(o,c,l){c=a?a[--i]:--i,u?r=t.call(e,r,n[c],c,l):(r=n[c],u=!0)}),!u)throw new TypeError(E);return r},j.find=j.detect=function(n,t,r){var e;return O(n,function(n,u,i){return t.call(r,n,u,i)?(e=n,!0):void 0}),e},j.filter=j.select=function(n,t,r){var e=[];return null==n?e:d&&n.filter===d?n.filter(t,r):(A(n,function(n,u,i){t.call(r,n,u,i)&&e.push(n)}),e)},j.reject=function(n,t,r){return j.filter(n,function(n,e,u){return!t.call(r,n,e,u)},r)},j.every=j.all=function(n,t,e){t||(t=j.identity);var u=!0;return null==n?u:g&&n.every===g?n.every(t,e):(A(n,function(n,i,a){return(u=u&&t.call(e,n,i,a))?void 0:r}),!!u)};var O=j.some=j.any=function(n,t,e){t||(t=j.identity);var u=!1;return null==n?u:m&&n.some===m?n.some(t,e):(A(n,function(n,i,a){return u||(u=t.call(e,n,i,a))?r:void 0}),!!u)};j.contains=j.include=function(n,t){return null==n?!1:y&&n.indexOf===y?n.indexOf(t)!=-1:O(n,function(n){return n===t})},j.invoke=function(n,t){var r=o.call(arguments,2),e=j.isFunction(t);return j.map(n,function(n){return(e?t:n[t]).apply(n,r)})},j.pluck=function(n,t){return j.map(n,function(n){return n[t]})},j.where=function(n,t,r){return j.isEmpty(t)?r?void 0:[]:j[r?"find":"filter"](n,function(n){for(var r in t)if(t[r]!==n[r])return!1;return!0})},j.findWhere=function(n,t){return j.where(n,t,!0)},j.max=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);if(!t&&j.isEmpty(n))return-1/0;var e={computed:-1/0,value:-1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;a>e.computed&&(e={value:n,computed:a})}),e.value},j.min=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);if(!t&&j.isEmpty(n))return 1/0;var e={computed:1/0,value:1/0};return A(n,function(n,u,i){var a=t?t.call(r,n,u,i):n;ae||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.indexi;){var o=i+a>>>1;r.call(e,n[o])=0})})},j.difference=function(n){var t=c.apply(e,o.call(arguments,1));return j.filter(n,function(n){return!j.contains(t,n)})},j.zip=function(){return j.unzip.apply(j,o.call(arguments))},j.unzip=function(){for(var n=j.max(j.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;n>r;r++)t[r]=j.pluck(arguments,""+r);return t},j.object=function(n,t){if(null==n)return{};for(var r={},e=0,u=n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},j.indexOf=function(n,t,r){if(null==n)return-1;var e=0,u=n.length;if(r){if("number"!=typeof r)return e=j.sortedIndex(n,t),n[e]===t?e:-1;e=0>r?Math.max(0,u+r):r}if(y&&n.indexOf===y)return n.indexOf(t,r);for(;u>e;e++)if(n[e]===t)return e;return-1},j.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var u=e?r:n.length;u--;)if(n[u]===t)return u;return-1},j.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=0,i=new Array(e);e>u;)i[u++]=n,n+=r;return i};var M=function(){};j.bind=function(n,t){var r,e;if(w&&n.bind===w)return w.apply(n,o.call(arguments,1));if(!j.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));M.prototype=n.prototype;var u=new M;M.prototype=null;var i=n.apply(u,r.concat(o.call(arguments)));return Object(i)===i?i:u}},j.partial=function(n){var t=o.call(arguments,1);return function(){return n.apply(this,t.concat(o.call(arguments)))}},j.bindAll=function(n){var t=o.call(arguments,1);if(0===t.length)throw new Error("bindAll must be passed function names");return A(t,function(t){n[t]=j.bind(n[t],n)}),n},j.memoize=function(n,t){var r={};return t||(t=j.identity),function(){var e=t.apply(this,arguments);return j.has(r,e)?r[e]:r[e]=n.apply(this,arguments)}},j.delay=function(n,t){var r=o.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},j.defer=function(n){return j.delay.apply(j,[n,1].concat(o.call(arguments,1)))},j.throttle=function(n,t,r){var e,u,i,a=null,o=0;r||(r={});var c=function(){o=new Date,a=null,i=n.apply(e,u)};return function(){var l=new Date;o||r.leading!==!1||(o=l);var f=t-(l-o);return e=this,u=arguments,0>=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u)):a||r.trailing===!1||(a=setTimeout(c,f)),i}},j.debounce=function(n,t,r){var e,u=null;return function(){var i=this,a=arguments,o=function(){u=null,r||(e=n.apply(i,a))},c=r&&!u;return clearTimeout(u),u=setTimeout(o,t),c&&(e=n.apply(i,a)),e}},j.once=function(n){var t,r=!1;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},j.wrap=function(n,t){return function(){var r=[n];return a.apply(r,arguments),t.apply(this,r)}},j.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},j.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},j.keys=_||function(n){if(n!==Object(n))throw new TypeError("Invalid object");var t=[];for(var r in n)j.has(n,r)&&t.push(r);return t},j.values=function(n){var t=[];for(var r in n)j.has(n,r)&&t.push(n[r]);return t},j.pairs=function(n){var t=[];for(var r in n)j.has(n,r)&&t.push([r,n[r]]);return t},j.invert=function(n){var t={};for(var r in n)j.has(n,r)&&(t[n[r]]=r);return t},j.functions=j.methods=function(n){var t=[];for(var r in n)j.isFunction(n[r])&&t.push(r);return t.sort()},j.extend=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},j.pick=function(n){var t={},r=c.apply(e,o.call(arguments,1));return A(r,function(r){r in n&&(t[r]=n[r])}),t},j.omit=function(n){var t={},r=c.apply(e,o.call(arguments,1));for(var u in n)j.contains(r,u)||(t[u]=n[u]);return t},j.defaults=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]===void 0&&(n[r]=t[r])}),n},j.clone=function(n){return j.isObject(n)?j.isArray(n)?n.slice():j.extend({},n):n},j.tap=function(n,t){return t(n),n};var S=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof j&&(n=n._wrapped),t instanceof j&&(t=t._wrapped);var u=l.call(n);if(u!=l.call(t))return!1;switch(u){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var i=r.length;i--;)if(r[i]==n)return e[i]==t;var a=n.constructor,o=t.constructor;if(a!==o&&!(j.isFunction(a)&&a instanceof a&&j.isFunction(o)&&o instanceof o))return!1;r.push(n),e.push(t);var c=0,f=!0;if("[object Array]"==u){if(c=n.length,f=c==t.length)for(;c--&&(f=S(n[c],t[c],r,e)););}else{for(var s in n)if(j.has(n,s)&&(c++,!(f=j.has(t,s)&&S(n[s],t[s],r,e))))break;if(f){for(s in t)if(j.has(t,s)&&!c--)break;f=!c}}return r.pop(),e.pop(),f};j.isEqual=function(n,t){return S(n,t,[],[])},j.isEmpty=function(n){if(null==n)return!0;if(j.isArray(n)||j.isString(n))return 0===n.length;for(var t in n)if(j.has(n,t))return!1;return!0},j.isElement=function(n){return!(!n||1!==n.nodeType)},j.isArray=x||function(n){return"[object Array]"==l.call(n)},j.isObject=function(n){return n===Object(n)},A(["Arguments","Function","String","Number","Date","RegExp"],function(n){j["is"+n]=function(t){return l.call(t)=="[object "+n+"]"}}),j.isArguments(arguments)||(j.isArguments=function(n){return!(!n||!j.has(n,"callee"))}),"function"!=typeof/./&&(j.isFunction=function(n){return"function"==typeof n}),j.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},j.isNaN=function(n){return j.isNumber(n)&&n!=+n},j.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==l.call(n)},j.isNull=function(n){return null===n},j.isUndefined=function(n){return n===void 0},j.has=function(n,t){return f.call(n,t)},j.noConflict=function(){return n._=t,this},j.identity=function(n){return n},j.times=function(n,t,r){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=t.call(r,u);return e},j.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))};var I={escape:{"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"}};I.unescape=j.invert(I.escape);var T={escape:new RegExp("["+j.keys(I.escape).join("")+"]","g"),unescape:new RegExp("("+j.keys(I.unescape).join("|")+")","g")};j.each(["escape","unescape"],function(n){j[n]=function(t){return null==t?"":(""+t).replace(T[n],function(t){return I[n][t]})}}),j.result=function(n,t){if(null==n)return void 0;var r=n[t];return j.isFunction(r)?r.call(n):r},j.mixin=function(n){A(j.functions(n),function(t){var r=j[t]=n[t];j.prototype[t]=function(){var n=[this._wrapped];return a.apply(n,arguments),D.call(this,r.apply(j,n))}})};var N=0;j.uniqueId=function(n){var t=++N+"";return n?n+t:t},j.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var q=/(.)^/,B={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},z=/\\|'|\r|\n|\t|\u2028|\u2029/g;j.template=function(n,t,r){var e;r=j.defaults({},r,j.templateSettings);var u=new RegExp([(r.escape||q).source,(r.interpolate||q).source,(r.evaluate||q).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(t,r,e,u,o){return a+=n.slice(i,o).replace(z,function(n){return"\\"+B[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(t)return e(t,j);var c=function(n){return e.call(this,n,j)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},j.chain=function(n){return j(n).chain()};var D=function(n){return this._chain?j(n).chain():n};j.mixin(j),A(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=e[n];j.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],D.call(this,r)}}),A(["concat","join","slice"],function(n){var t=e[n];j.prototype[n]=function(){return D.call(this,t.apply(this._wrapped,arguments))}}),j.extend(j.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}.call(this); +(function(){var n=this,t=n._,r={},e=Array.prototype,u=Object.prototype,i=Function.prototype,a=e.push,o=e.slice,c=e.concat,l=u.toString,f=u.hasOwnProperty,s=e.forEach,p=e.map,h=e.reduce,v=e.reduceRight,g=e.filter,d=e.every,m=e.some,y=e.indexOf,b=e.lastIndexOf,x=Array.isArray,w=Object.keys,_=i.bind,j=function(n){return n instanceof j?n:this instanceof j?void(this._wrapped=n):new j(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=j),exports._=j):n._=j,j.VERSION="1.6.0";var A=j.each=j.forEach=function(n,t,e){if(null==n)return n;if(s&&n.forEach===s)n.forEach(t,e);else if(n.length===+n.length){for(var u=0,i=n.length;i>u;u++)if(t.call(e,n[u],u,n)===r)return}else for(var a=j.keys(n),u=0,i=a.length;i>u;u++)if(t.call(e,n[a[u]],a[u],n)===r)return;return n};j.map=j.collect=function(n,t,r){var e=[];return null==n?e:p&&n.map===p?n.map(t,r):(A(n,function(n,u,i){e.push(t.call(r,n,u,i))}),e)};var O="Reduce of empty array with no initial value";j.reduce=j.foldl=j.inject=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),h&&n.reduce===h)return e&&(t=j.bind(t,e)),u?n.reduce(t,r):n.reduce(t);if(A(n,function(n,i,a){u?r=t.call(e,r,n,i,a):(r=n,u=!0)}),!u)throw new TypeError(O);return r},j.reduceRight=j.foldr=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),v&&n.reduceRight===v)return e&&(t=j.bind(t,e)),u?n.reduceRight(t,r):n.reduceRight(t);var i=n.length;if(i!==+i){var a=j.keys(n);i=a.length}if(A(n,function(o,c,l){c=a?a[--i]:--i,u?r=t.call(e,r,n[c],c,l):(r=n[c],u=!0)}),!u)throw new TypeError(O);return r},j.find=j.detect=function(n,t,r){var e;return k(n,function(n,u,i){return t.call(r,n,u,i)?(e=n,!0):void 0}),e},j.filter=j.select=function(n,t,r){var e=[];return null==n?e:g&&n.filter===g?n.filter(t,r):(A(n,function(n,u,i){t.call(r,n,u,i)&&e.push(n)}),e)},j.reject=function(n,t,r){return j.filter(n,function(n,e,u){return!t.call(r,n,e,u)},r)},j.every=j.all=function(n,t,e){t||(t=j.identity);var u=!0;return null==n?u:d&&n.every===d?n.every(t,e):(A(n,function(n,i,a){return(u=u&&t.call(e,n,i,a))?void 0:r}),!!u)};var k=j.some=j.any=function(n,t,e){t||(t=j.identity);var u=!1;return null==n?u:m&&n.some===m?n.some(t,e):(A(n,function(n,i,a){return u||(u=t.call(e,n,i,a))?r:void 0}),!!u)};j.contains=j.include=function(n,t){return null==n?!1:y&&n.indexOf===y?n.indexOf(t)!=-1:k(n,function(n){return n===t})},j.invoke=function(n,t){var r=o.call(arguments,2),e=j.isFunction(t);return j.map(n,function(n){return(e?t:n[t]).apply(n,r)})},j.pluck=function(n,t){return j.map(n,j.property(t))},j.where=function(n,t){return j.filter(n,j.matches(t))},j.findWhere=function(n,t){return j.find(n,j.matches(t))},j.max=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);var e=-1/0,u=-1/0;return A(n,function(n,i,a){var o=t?t.call(r,n,i,a):n;o>u&&(e=n,u=o)}),e},j.min=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);var e=1/0,u=1/0;return A(n,function(n,i,a){var o=t?t.call(r,n,i,a):n;u>o&&(e=n,u=o)}),e},j.shuffle=function(n){var t,r=0,e=[];return A(n,function(n){t=j.random(r++),e[r-1]=e[t],e[t]=n}),e},j.sample=function(n,t,r){return null==t||r?(n.length!==+n.length&&(n=j.values(n)),n[j.random(n.length-1)]):j.shuffle(n).slice(0,Math.max(0,t))};var E=function(n){return null==n?j.identity:j.isFunction(n)?n:j.property(n)};j.sortBy=function(n,t,r){return t=E(t),j.pluck(j.map(n,function(n,e,u){return{value:n,index:e,criteria:t.call(r,n,e,u)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=E(r),A(t,function(i,a){var o=r.call(e,i,a,t);n(u,o,i)}),u}};j.groupBy=F(function(n,t,r){j.has(n,t)?n[t].push(r):n[t]=[r]}),j.indexBy=F(function(n,t,r){n[t]=r}),j.countBy=F(function(n,t){j.has(n,t)?n[t]++:n[t]=1}),j.sortedIndex=function(n,t,r,e){r=E(r);for(var u=r.call(e,t),i=0,a=n.length;a>i;){var o=i+a>>>1;r.call(e,n[o])t?[]:o.call(n,0,t)},j.initial=function(n,t,r){return o.call(n,0,n.length-(null==t||r?1:t))},j.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:o.call(n,Math.max(n.length-t,0))},j.rest=j.tail=j.drop=function(n,t,r){return o.call(n,null==t||r?1:t)},j.compact=function(n){return j.filter(n,j.identity)};var M=function(n,t,r){return t&&j.every(n,j.isArray)?c.apply(r,n):(A(n,function(n){j.isArray(n)||j.isArguments(n)?t?a.apply(r,n):M(n,t,r):r.push(n)}),r)};j.flatten=function(n,t){return M(n,t,[])},j.without=function(n){return j.difference(n,o.call(arguments,1))},j.partition=function(n,t){var r=[],e=[];return A(n,function(n){(t(n)?r:e).push(n)}),[r,e]},j.uniq=j.unique=function(n,t,r,e){j.isFunction(t)&&(e=r,r=t,t=!1);var u=r?j.map(n,r,e):n,i=[],a=[];return A(u,function(r,e){(t?e&&a[a.length-1]===r:j.contains(a,r))||(a.push(r),i.push(n[e]))}),i},j.union=function(){return j.uniq(j.flatten(arguments,!0))},j.intersection=function(n){var t=o.call(arguments,1);return j.filter(j.uniq(n),function(n){return j.every(t,function(t){return j.contains(t,n)})})},j.difference=function(n){var t=c.apply(e,o.call(arguments,1));return j.filter(n,function(n){return!j.contains(t,n)})},j.zip=function(){for(var n=j.max(j.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;n>r;r++)t[r]=j.pluck(arguments,""+r);return t},j.object=function(n,t){if(null==n)return{};for(var r={},e=0,u=n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},j.indexOf=function(n,t,r){if(null==n)return-1;var e=0,u=n.length;if(r){if("number"!=typeof r)return e=j.sortedIndex(n,t),n[e]===t?e:-1;e=0>r?Math.max(0,u+r):r}if(y&&n.indexOf===y)return n.indexOf(t,r);for(;u>e;e++)if(n[e]===t)return e;return-1},j.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var u=e?r:n.length;u--;)if(n[u]===t)return u;return-1},j.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=0,i=new Array(e);e>u;)i[u++]=n,n+=r;return i};var R=function(){};j.bind=function(n,t){var r,e;if(_&&n.bind===_)return _.apply(n,o.call(arguments,1));if(!j.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));R.prototype=n.prototype;var u=new R;R.prototype=null;var i=n.apply(u,r.concat(o.call(arguments)));return Object(i)===i?i:u}},j.partial=function(n){var t=o.call(arguments,1);return function(){for(var r=0,e=t.slice(),u=0,i=e.length;i>u;u++)e[u]===j&&(e[u]=arguments[r++]);for(;r=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u),e=u=null):a||r.trailing===!1||(a=setTimeout(c,f)),i}},j.debounce=function(n,t,r){var e,u,i,a,o,c=function(){var l=j.now()-a;t>l?e=setTimeout(c,t-l):(e=null,r||(o=n.apply(i,u),i=u=null))};return function(){i=this,u=arguments,a=j.now();var l=r&&!e;return e||(e=setTimeout(c,t)),l&&(o=n.apply(i,u),i=u=null),o}},j.once=function(n){var t,r=!1;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},j.wrap=function(n,t){return j.partial(t,n)},j.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},j.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},j.keys=function(n){if(!j.isObject(n))return[];if(w)return w(n);var t=[];for(var r in n)j.has(n,r)&&t.push(r);return t},j.values=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},j.pairs=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},j.invert=function(n){for(var t={},r=j.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},j.functions=j.methods=function(n){var t=[];for(var r in n)j.isFunction(n[r])&&t.push(r);return t.sort()},j.extend=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},j.pick=function(n){var t={},r=c.apply(e,o.call(arguments,1));return A(r,function(r){r in n&&(t[r]=n[r])}),t},j.omit=function(n){var t={},r=c.apply(e,o.call(arguments,1));for(var u in n)j.contains(r,u)||(t[u]=n[u]);return t},j.defaults=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]===void 0&&(n[r]=t[r])}),n},j.clone=function(n){return j.isObject(n)?j.isArray(n)?n.slice():j.extend({},n):n},j.tap=function(n,t){return t(n),n};var S=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof j&&(n=n._wrapped),t instanceof j&&(t=t._wrapped);var u=l.call(n);if(u!=l.call(t))return!1;switch(u){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var i=r.length;i--;)if(r[i]==n)return e[i]==t;var a=n.constructor,o=t.constructor;if(a!==o&&!(j.isFunction(a)&&a instanceof a&&j.isFunction(o)&&o instanceof o)&&"constructor"in n&&"constructor"in t)return!1;r.push(n),e.push(t);var c=0,f=!0;if("[object Array]"==u){if(c=n.length,f=c==t.length)for(;c--&&(f=S(n[c],t[c],r,e)););}else{for(var s in n)if(j.has(n,s)&&(c++,!(f=j.has(t,s)&&S(n[s],t[s],r,e))))break;if(f){for(s in t)if(j.has(t,s)&&!c--)break;f=!c}}return r.pop(),e.pop(),f};j.isEqual=function(n,t){return S(n,t,[],[])},j.isEmpty=function(n){if(null==n)return!0;if(j.isArray(n)||j.isString(n))return 0===n.length;for(var t in n)if(j.has(n,t))return!1;return!0},j.isElement=function(n){return!(!n||1!==n.nodeType)},j.isArray=x||function(n){return"[object Array]"==l.call(n)},j.isObject=function(n){return n===Object(n)},A(["Arguments","Function","String","Number","Date","RegExp"],function(n){j["is"+n]=function(t){return l.call(t)=="[object "+n+"]"}}),j.isArguments(arguments)||(j.isArguments=function(n){return!(!n||!j.has(n,"callee"))}),"function"!=typeof/./&&(j.isFunction=function(n){return"function"==typeof n}),j.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},j.isNaN=function(n){return j.isNumber(n)&&n!=+n},j.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==l.call(n)},j.isNull=function(n){return null===n},j.isUndefined=function(n){return n===void 0},j.has=function(n,t){return f.call(n,t)},j.noConflict=function(){return n._=t,this},j.identity=function(n){return n},j.constant=function(n){return function(){return n}},j.property=function(n){return function(t){return t[n]}},j.matches=function(n){return function(t){if(t===n)return!0;for(var r in n)if(n[r]!==t[r])return!1;return!0}},j.times=function(n,t,r){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=t.call(r,u);return e},j.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},j.now=Date.now||function(){return(new Date).getTime()};var T={escape:{"&":"&","<":"<",">":">",'"':""","'":"'"}};T.unescape=j.invert(T.escape);var I={escape:new RegExp("["+j.keys(T.escape).join("")+"]","g"),unescape:new RegExp("("+j.keys(T.unescape).join("|")+")","g")};j.each(["escape","unescape"],function(n){j[n]=function(t){return null==t?"":(""+t).replace(I[n],function(t){return T[n][t]})}}),j.result=function(n,t){if(null==n)return void 0;var r=n[t];return j.isFunction(r)?r.call(n):r},j.mixin=function(n){A(j.functions(n),function(t){var r=j[t]=n[t];j.prototype[t]=function(){var n=[this._wrapped];return a.apply(n,arguments),z.call(this,r.apply(j,n))}})};var N=0;j.uniqueId=function(n){var t=++N+"";return n?n+t:t},j.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var q=/(.)^/,B={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;j.template=function(n,t,r){var e;r=j.defaults({},r,j.templateSettings);var u=new RegExp([(r.escape||q).source,(r.interpolate||q).source,(r.evaluate||q).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(t,r,e,u,o){return a+=n.slice(i,o).replace(D,function(n){return"\\"+B[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(t)return e(t,j);var c=function(n){return e.call(this,n,j)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},j.chain=function(n){return j(n).chain()};var z=function(n){return this._chain?j(n).chain():n};j.mixin(j),A(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=e[n];j.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],z.call(this,r)}}),A(["concat","join","slice"],function(n){var t=e[n];j.prototype[n]=function(){return z.call(this,t.apply(this._wrapped,arguments))}}),j.extend(j.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}}),"function"==typeof define&&define.amd&&define("underscore",[],function(){return j})}).call(this); //# sourceMappingURL=underscore-min.map \ No newline at end of file From 10aa1a8da04188edeafea3c5c8ddd04f2a8690a4 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Thu, 20 Feb 2014 12:48:27 +0000 Subject: [PATCH 23/37] Update Backbone.js to v.1.1.1 --- src/mibew/js/libs/backbone-min.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mibew/js/libs/backbone-min.js b/src/mibew/js/libs/backbone-min.js index 3541019c..c8301037 100644 --- a/src/mibew/js/libs/backbone-min.js +++ b/src/mibew/js/libs/backbone-min.js @@ -1,4 +1,2 @@ -(function(){var t=this;var e=t.Backbone;var i=[];var r=i.push;var s=i.slice;var n=i.splice;var a;if(typeof exports!=="undefined"){a=exports}else{a=t.Backbone={}}a.VERSION="1.0.0";var h=t._;if(!h&&typeof require!=="undefined")h=require("underscore");a.$=t.jQuery||t.Zepto||t.ender||t.$;a.noConflict=function(){t.Backbone=e;return this};a.emulateHTTP=false;a.emulateJSON=false;var o=a.Events={on:function(t,e,i){if(!l(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var r=this._events[t]||(this._events[t]=[]);r.push({callback:e,context:i,ctx:i||this});return this},once:function(t,e,i){if(!l(this,"once",t,[e,i])||!e)return this;var r=this;var s=h.once(function(){r.off(t,s);e.apply(this,arguments)});s._callback=e;return this.on(t,s,i)},off:function(t,e,i){var r,s,n,a,o,u,c,f;if(!this._events||!l(this,"off",t,[e,i]))return this;if(!t&&!e&&!i){this._events={};return this}a=t?[t]:h.keys(this._events);for(o=0,u=a.length;o").attr(t);this.setElement(e,false)}else{this.setElement(h.result(this,"el"),false)}}});a.sync=function(t,e,i){var r=k[t];h.defaults(i||(i={}),{emulateHTTP:a.emulateHTTP,emulateJSON:a.emulateJSON});var s={type:r,dataType:"json"};if(!i.url){s.url=h.result(e,"url")||U()}if(i.data==null&&e&&(t==="create"||t==="update"||t==="patch")){s.contentType="application/json";s.data=JSON.stringify(i.attrs||e.toJSON(i))}if(i.emulateJSON){s.contentType="application/x-www-form-urlencoded";s.data=s.data?{model:s.data}:{}}if(i.emulateHTTP&&(r==="PUT"||r==="DELETE"||r==="PATCH")){s.type="POST";if(i.emulateJSON)s.data._method=r;var n=i.beforeSend;i.beforeSend=function(t){t.setRequestHeader("X-HTTP-Method-Override",r);if(n)return n.apply(this,arguments)}}if(s.type!=="GET"&&!i.emulateJSON){s.processData=false}if(s.type==="PATCH"&&window.ActiveXObject&&!(window.external&&window.external.msActiveXFilteringEnabled)){s.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}var o=i.xhr=a.ajax(h.extend(s,i));e.trigger("request",e,o,i);return o};var k={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};a.ajax=function(){return a.$.ajax.apply(a.$,arguments)};var S=a.Router=function(t){t||(t={});if(t.routes)this.routes=t.routes;this._bindRoutes();this.initialize.apply(this,arguments)};var $=/\((.*?)\)/g;var T=/(\(\?)?:\w+/g;var H=/\*\w+/g;var A=/[\-{}\[\]+?.,\\\^$|#\s]/g;h.extend(S.prototype,o,{initialize:function(){},route:function(t,e,i){if(!h.isRegExp(t))t=this._routeToRegExp(t);if(h.isFunction(e)){i=e;e=""}if(!i)i=this[e];var r=this;a.history.route(t,function(s){var n=r._extractParameters(t,s);i&&i.apply(r,n);r.trigger.apply(r,["route:"+e].concat(n));r.trigger("route",e,n);a.history.trigger("route",r,e,n)});return this},navigate:function(t,e){a.history.navigate(t,e);return this},_bindRoutes:function(){if(!this.routes)return;this.routes=h.result(this,"routes");var t,e=h.keys(this.routes);while((t=e.pop())!=null){this.route(t,this.routes[t])}},_routeToRegExp:function(t){t=t.replace(A,"\\$&").replace($,"(?:$1)?").replace(T,function(t,e){return e?t:"([^/]+)"}).replace(H,"(.*?)");return new RegExp("^"+t+"$")},_extractParameters:function(t,e){var i=t.exec(e).slice(1);return h.map(i,function(t){return t?decodeURIComponent(t):null})}});var I=a.History=function(){this.handlers=[];h.bindAll(this,"checkUrl");if(typeof window!=="undefined"){this.location=window.location;this.history=window.history}};var N=/^[#\/]|\s+$/g;var P=/^\/+|\/+$/g;var O=/msie [\w.]+/;var C=/\/$/;I.started=false;h.extend(I.prototype,o,{interval:50,getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(t==null){if(this._hasPushState||!this._wantsHashChange||e){t=this.location.pathname;var i=this.root.replace(C,"");if(!t.indexOf(i))t=t.substr(i.length)}else{t=this.getHash()}}return t.replace(N,"")},start:function(t){if(I.started)throw new Error("Backbone.history has already been started");I.started=true;this.options=h.extend({},{root:"/"},this.options,t);this.root=this.options.root;this._wantsHashChange=this.options.hashChange!==false;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var e=this.getFragment();var i=document.documentMode;var r=O.exec(navigator.userAgent.toLowerCase())&&(!i||i<=7);this.root=("/"+this.root+"/").replace(P,"/");if(r&&this._wantsHashChange){this.iframe=a.$('