From c8df65baeeb71fc95dce98e0da636080db74cd0c Mon Sep 17 00:00:00 2001 From: "Fedor A. Fetisov" <faf@ossg.ru> Date: Wed, 17 Mar 2021 15:03:43 +0300 Subject: [PATCH] Add dark styles --- src/mibew/styles/chats/dark/chat.css | 594 ++++++++++ src/mibew/styles/chats/dark/chat_ie7.css | 25 + src/mibew/styles/chats/dark/config.yml | 25 + src/mibew/styles/chats/dark/iframe.css | 83 ++ .../styles/chats/dark/images/ajax-loader.gif | Bin 0 -> 1924 bytes src/mibew/styles/chats/dark/images/avatar.jpg | Bin 0 -> 2588 bytes .../styles/chats/dark/images/avatarbg.gif | Bin 0 -> 180 bytes .../styles/chats/dark/images/bottombg.gif | Bin 0 -> 157 bytes .../styles/chats/dark/images/buttons.gif | Bin 0 -> 5382 bytes .../styles/chats/dark/images/chatbgl.gif | Bin 0 -> 42 bytes .../styles/chats/dark/images/chatbgr.gif | Bin 0 -> 42 bytes .../styles/chats/dark/images/chatheaderbg.gif | Bin 0 -> 84 bytes .../chats/dark/images/chatheaderbgc.gif | Bin 0 -> 149 bytes .../chats/dark/images/chatheaderbgl.gif | Bin 0 -> 321 bytes .../chats/dark/images/chatheaderbgr.gif | Bin 0 -> 319 bytes .../styles/chats/dark/images/content.gif | Bin 0 -> 63 bytes .../chats/dark/images/default-logo-short.png | Bin 0 -> 875 bytes .../styles/chats/dark/images/default-logo.png | Bin 0 -> 4284 bytes .../styles/chats/dark/images/favicon.ico | Bin 0 -> 894 bytes src/mibew/styles/chats/dark/images/free.gif | Bin 0 -> 49 bytes .../styles/chats/dark/images/input_name.gif | Bin 0 -> 392 bytes src/mibew/styles/chats/dark/images/list.gif | Bin 0 -> 45 bytes src/mibew/styles/chats/dark/images/logobg.gif | Bin 0 -> 84 bytes .../styles/chats/dark/images/message.png | Bin 0 -> 1386 bytes .../styles/chats/dark/images/nextpage.gif | Bin 0 -> 207 bytes .../styles/chats/dark/images/prevpage.gif | Bin 0 -> 208 bytes src/mibew/styles/chats/dark/images/right.png | Bin 0 -> 857 bytes src/mibew/styles/chats/dark/images/sdwbgc.png | Bin 0 -> 156 bytes src/mibew/styles/chats/dark/images/sdwbgl.png | Bin 0 -> 618 bytes src/mibew/styles/chats/dark/images/sdwbgr.png | Bin 0 -> 632 bytes src/mibew/styles/chats/dark/images/submit.gif | Bin 0 -> 2713 bytes src/mibew/styles/chats/dark/images/topbg.gif | Bin 0 -> 43 bytes src/mibew/styles/chats/dark/images/wndb.gif | Bin 0 -> 147 bytes src/mibew/styles/chats/dark/images/wndbl.gif | Bin 0 -> 57 bytes src/mibew/styles/chats/dark/images/wndbr.gif | Bin 0 -> 57 bytes src/mibew/styles/chats/dark/images/wndt.gif | Bin 0 -> 35 bytes src/mibew/styles/chats/dark/images/wndtl.gif | Bin 0 -> 44 bytes src/mibew/styles/chats/dark/images/wndtr.gif | Bin 0 -> 44 bytes src/mibew/styles/chats/dark/js/compiled/.keep | 0 .../styles/chats/dark/js/source/.htaccess | 1 + .../styles/chats/dark/js/source/resize.js | 144 +++ .../chats/dark/screenshots/client_chat.png | Bin 0 -> 30582 bytes .../dark/templates_compiled/client_side/.keep | 0 .../client_side/_logo.handlebars | 25 + .../client_side/chat/avatar.handlebars | 1 + .../chat/controls/close.handlebars | 1 + .../chat/controls/history.handlebars | 1 + .../chat/controls/redirect.handlebars | 3 + .../chat/controls/refresh.handlebars | 1 + .../chat/controls/secure_mode.handlebars | 1 + .../chat/controls/send_mail.handlebars | 1 + .../chat/controls/sound.handlebars | 5 + .../chat/controls/user_name.handlebars | 12 + .../client_side/chat/layout.handlebars | 29 + .../client_side/chat/message.handlebars | 3 + .../client_side/chat/message_form.handlebars | 26 + .../client_side/chat/status/base.handlebars | 1 + .../chat/status/message.handlebars | 1 + .../client_side/chat/status/typing.handlebars | 1 + .../client_side/default_control.handlebars | 1 + .../client_side/invitation/layout.handlebars | 1 + .../leave_message/description.handlebars | 6 + .../client_side/leave_message/form.handlebars | 57 + .../leave_message/layout.handlebars | 11 + .../leave_message/sent_description.handlebars | 6 + .../client_side/message.handlebars | 3 + .../client_side/survey/form.handlebars | 55 + .../client_side/survey/layout.handlebars | 15 + .../server_side/_layout.handlebars | 65 ++ .../templates_src/server_side/chat.handlebars | 14 + .../server_side/confirm.handlebars | 13 + .../server_side/error.handlebars | 22 + .../templates_src/server_side/mail.handlebars | 31 + .../server_side/mailsent.handlebars | 11 + .../server_side/redirect.handlebars | 32 + .../server_side/redirected.handlebars | 11 + src/mibew/styles/chats/dark/vex.css | 42 + src/mibew/styles/invitations/dark/24x24.png | Bin 0 -> 1098 bytes src/mibew/styles/invitations/dark/close.gif | Bin 0 -> 341 bytes src/mibew/styles/invitations/dark/config.yml | 9 + src/mibew/styles/invitations/dark/invite.css | 158 +++ .../dark/screenshots/invitation.png | Bin 0 -> 13053 bytes .../invitations/dark/screenshots/location.png | Bin 0 -> 3891 bytes src/mibew/styles/pages/dark/config.yml | 44 + src/mibew/styles/pages/dark/css/default.css | 1017 +++++++++++++++++ .../styles/pages/dark/css/default_ie.css | 25 + src/mibew/styles/pages/dark/css/vex.css | 42 + src/mibew/styles/pages/dark/images/ban.gif | Bin 0 -> 368 bytes src/mibew/styles/pages/dark/images/blank.html | 4 + .../pages/dark/images/buttons/login.png | Bin 0 -> 2739 bytes .../pages/dark/images/buttons/login_rtl.png | Bin 0 -> 2752 bytes .../styles/pages/dark/images/buttons/plus.png | Bin 0 -> 580 bytes .../styles/pages/dark/images/buttons/save.png | Bin 0 -> 2804 bytes .../pages/dark/images/buttons/save_rtl.png | Bin 0 -> 2814 bytes .../pages/dark/images/buttons/search.png | Bin 0 -> 2885 bytes .../pages/dark/images/buttons/search_rtl.png | Bin 0 -> 2898 bytes .../styles/pages/dark/images/dash/blocked.png | Bin 0 -> 956 bytes .../styles/pages/dark/images/dash/canned.png | Bin 0 -> 472 bytes .../styles/pages/dark/images/dash/close.gif | Bin 0 -> 340 bytes .../styles/pages/dark/images/dash/exit.png | Bin 0 -> 287 bytes .../styles/pages/dark/images/dash/group.png | Bin 0 -> 2351 bytes .../styles/pages/dark/images/dash/history.png | Bin 0 -> 1297 bytes .../pages/dark/images/dash/information.png | Bin 0 -> 611 bytes .../styles/pages/dark/images/dash/locale.png | Bin 0 -> 470 bytes .../styles/pages/dark/images/dash/lock.png | Bin 0 -> 1075 bytes .../pages/dark/images/dash/mail_templates.png | Bin 0 -> 706 bytes .../pages/dark/images/dash/operator.png | Bin 0 -> 1999 bytes .../styles/pages/dark/images/dash/plugins.png | Bin 0 -> 1123 bytes .../styles/pages/dark/images/dash/profile.png | Bin 0 -> 359 bytes .../pages/dark/images/dash/settings.png | Bin 0 -> 858 bytes .../pages/dark/images/dash/statistics.png | Bin 0 -> 1301 bytes .../styles/pages/dark/images/dash/styles.png | Bin 0 -> 1642 bytes .../pages/dark/images/dash/translations.png | Bin 0 -> 733 bytes .../pages/dark/images/dash/visitors.png | Bin 0 -> 877 bytes .../styles/pages/dark/images/dash/warning.png | Bin 0 -> 1681 bytes .../styles/pages/dark/images/dash/wizard.png | Bin 0 -> 1089 bytes .../styles/pages/dark/images/favicon.ico | Bin 0 -> 894 bytes src/mibew/styles/pages/dark/images/footer.gif | Bin 0 -> 160 bytes .../styles/pages/dark/images/formline.gif | Bin 0 -> 35 bytes src/mibew/styles/pages/dark/images/free.gif | Bin 0 -> 49 bytes .../styles/pages/dark/images/graydot.gif | Bin 0 -> 43 bytes src/mibew/styles/pages/dark/images/header.gif | Bin 0 -> 160 bytes .../styles/pages/dark/images/icon_err.gif | Bin 0 -> 671 bytes src/mibew/styles/pages/dark/images/li.gif | Bin 0 -> 60 bytes .../styles/pages/dark/images/loginbg.gif | Bin 0 -> 60 bytes .../styles/pages/dark/images/logincrnlb.gif | Bin 0 -> 140 bytes .../styles/pages/dark/images/logincrnlt.gif | Bin 0 -> 191 bytes .../styles/pages/dark/images/logincrnrb.gif | Bin 0 -> 131 bytes .../styles/pages/dark/images/logincrnrt.gif | Bin 0 -> 134 bytes src/mibew/styles/pages/dark/images/logo.png | Bin 0 -> 1287 bytes .../styles/pages/dark/images/nextpage.gif | Bin 0 -> 207 bytes src/mibew/styles/pages/dark/images/opaway.gif | Bin 0 -> 905 bytes .../styles/pages/dark/images/oponline.gif | Bin 0 -> 906 bytes .../styles/pages/dark/images/prevpage.gif | Bin 0 -> 208 bytes .../styles/pages/dark/images/subitem.gif | Bin 0 -> 75 bytes .../styles/pages/dark/images/subitem_rtl.gif | Bin 0 -> 74 bytes src/mibew/styles/pages/dark/images/submit.gif | Bin 0 -> 1676 bytes .../styles/pages/dark/images/submitbg.gif | Bin 0 -> 55 bytes .../styles/pages/dark/images/submitrest.gif | Bin 0 -> 89 bytes .../styles/pages/dark/images/tbliclogin.gif | Bin 0 -> 85 bytes .../styles/pages/dark/images/tbliclread.gif | Bin 0 -> 329 bytes .../styles/pages/dark/images/tbliclspeak.gif | Bin 0 -> 309 bytes .../styles/pages/dark/images/tblictrack.gif | Bin 0 -> 190 bytes src/mibew/styles/pages/dark/js/autoclose.js | 27 + src/mibew/styles/pages/dark/js/dashboard.js | 30 + src/mibew/styles/pages/dark/js/ie.js | 35 + src/mibew/styles/pages/dark/js/locale.js | 82 ++ src/mibew/styles/pages/dark/js/toggle_menu.js | 39 + .../styles/pages/dark/screenshots/home.png | Bin 0 -> 32084 bytes .../dark/templates_compiled/client_side/.keep | 0 .../client_side/default_control.handlebars | 1 + .../client_side/message.handlebars | 3 + .../client_side/users/agent.handlebars | 1 + .../client_side/users/no_threads.handlebars | 1 + .../client_side/users/no_visitors.handlebars | 1 + .../users/queued_thread.handlebars | 27 + .../client_side/users/status_panel.handlebars | 1 + .../users/threads_collection.handlebars | 17 + .../client_side/users/visitor.handlebars | 16 + .../users/visitors_collection.handlebars | 17 + .../server_side/_errors.handlebars | 12 + .../server_side/_layout.handlebars | 86 ++ .../server_side/_locales.handlebars | 14 + .../server_side/_menu.handlebars | 49 + .../server_side/_tabs.handlebars | 11 + .../server_side/about.handlebars | 64 ++ .../templates_src/server_side/ban.handlebars | 79 ++ .../templates_src/server_side/bans.handlebars | 65 ++ .../server_side/button_code.handlebars | 151 +++ .../canned_message_edit.handlebars | 61 + .../server_side/canned_messages.handlebars | 93 ++ .../server_side/group_edit.handlebars | 158 +++ .../server_side/group_members.handlebars | 51 + .../server_side/groups.handlebars | 126 ++ .../server_side/history.handlebars | 104 ++ .../server_side/history_thread.handlebars | 67 ++ .../server_side/history_user.handlebars | 43 + .../server_side/index.handlebars | 219 ++++ .../server_side/install_done.handlebars | 18 + .../server_side/install_err.handlebars | 7 + .../server_side/install_password.handlebars | 35 + .../server_side/install_step.handlebars | 62 + .../server_side/locale_edit.handlebars | 84 ++ .../server_side/locales.handlebars | 68 ++ .../server_side/login.handlebars | 68 ++ .../server_side/mail_template_edit.handlebars | 60 + .../server_side/mail_templates.handlebars | 78 ++ .../server_side/operator_avatar.handlebars | 83 ++ .../server_side/operator_edit.handlebars | 123 ++ .../server_side/operator_groups.handlebars | 57 + .../operator_permissions.handlebars | 52 + .../server_side/operators.handlebars | 115 ++ .../server_side/password_recovery.handlebars | 75 ++ .../password_recovery_reset.handlebars | 92 ++ .../server_side/plugins.handlebars | 74 ++ .../server_side/settings_common.handlebars | 175 +++ .../server_side/settings_features.handlebars | 224 ++++ .../settings_performance.handlebars | 154 +++ .../server_side/statistics.handlebars | 233 ++++ .../server_side/style_preview.handlebars | 49 + .../server_side/tracked.handlebars | 44 + .../server_side/translation_edit.handlebars | 52 + .../server_side/translation_export.handlebars | 47 + .../server_side/translation_import.handlebars | 71 ++ .../server_side/translations.handlebars | 86 ++ .../server_side/update_intro.handlebars | 29 + .../server_side/update_progress.handlebars | 50 + .../server_side/users.handlebars | 37 + 208 files changed, 6832 insertions(+) create mode 100644 src/mibew/styles/chats/dark/chat.css create mode 100644 src/mibew/styles/chats/dark/chat_ie7.css create mode 100644 src/mibew/styles/chats/dark/config.yml create mode 100644 src/mibew/styles/chats/dark/iframe.css create mode 100644 src/mibew/styles/chats/dark/images/ajax-loader.gif create mode 100644 src/mibew/styles/chats/dark/images/avatar.jpg create mode 100644 src/mibew/styles/chats/dark/images/avatarbg.gif create mode 100644 src/mibew/styles/chats/dark/images/bottombg.gif create mode 100644 src/mibew/styles/chats/dark/images/buttons.gif create mode 100644 src/mibew/styles/chats/dark/images/chatbgl.gif create mode 100644 src/mibew/styles/chats/dark/images/chatbgr.gif create mode 100644 src/mibew/styles/chats/dark/images/chatheaderbg.gif create mode 100644 src/mibew/styles/chats/dark/images/chatheaderbgc.gif create mode 100644 src/mibew/styles/chats/dark/images/chatheaderbgl.gif create mode 100644 src/mibew/styles/chats/dark/images/chatheaderbgr.gif create mode 100644 src/mibew/styles/chats/dark/images/content.gif create mode 100644 src/mibew/styles/chats/dark/images/default-logo-short.png create mode 100644 src/mibew/styles/chats/dark/images/default-logo.png create mode 100644 src/mibew/styles/chats/dark/images/favicon.ico create mode 100644 src/mibew/styles/chats/dark/images/free.gif create mode 100644 src/mibew/styles/chats/dark/images/input_name.gif create mode 100644 src/mibew/styles/chats/dark/images/list.gif create mode 100644 src/mibew/styles/chats/dark/images/logobg.gif create mode 100644 src/mibew/styles/chats/dark/images/message.png create mode 100644 src/mibew/styles/chats/dark/images/nextpage.gif create mode 100644 src/mibew/styles/chats/dark/images/prevpage.gif create mode 100644 src/mibew/styles/chats/dark/images/right.png create mode 100644 src/mibew/styles/chats/dark/images/sdwbgc.png create mode 100644 src/mibew/styles/chats/dark/images/sdwbgl.png create mode 100644 src/mibew/styles/chats/dark/images/sdwbgr.png create mode 100644 src/mibew/styles/chats/dark/images/submit.gif create mode 100644 src/mibew/styles/chats/dark/images/topbg.gif create mode 100644 src/mibew/styles/chats/dark/images/wndb.gif create mode 100644 src/mibew/styles/chats/dark/images/wndbl.gif create mode 100644 src/mibew/styles/chats/dark/images/wndbr.gif create mode 100644 src/mibew/styles/chats/dark/images/wndt.gif create mode 100644 src/mibew/styles/chats/dark/images/wndtl.gif create mode 100644 src/mibew/styles/chats/dark/images/wndtr.gif create mode 100644 src/mibew/styles/chats/dark/js/compiled/.keep create mode 100644 src/mibew/styles/chats/dark/js/source/.htaccess create mode 100644 src/mibew/styles/chats/dark/js/source/resize.js create mode 100644 src/mibew/styles/chats/dark/screenshots/client_chat.png create mode 100644 src/mibew/styles/chats/dark/templates_compiled/client_side/.keep create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/_logo.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/avatar.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/close.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/history.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/redirect.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/refresh.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/secure_mode.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/send_mail.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/sound.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/user_name.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/layout.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/message.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/message_form.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/status/base.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/status/message.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/chat/status/typing.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/default_control.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/invitation/layout.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/leave_message/description.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/leave_message/form.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/leave_message/layout.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/leave_message/sent_description.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/message.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/survey/form.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/client_side/survey/layout.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/_layout.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/chat.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/confirm.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/error.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/mail.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/mailsent.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/redirect.handlebars create mode 100644 src/mibew/styles/chats/dark/templates_src/server_side/redirected.handlebars create mode 100644 src/mibew/styles/chats/dark/vex.css create mode 100644 src/mibew/styles/invitations/dark/24x24.png create mode 100644 src/mibew/styles/invitations/dark/close.gif create mode 100644 src/mibew/styles/invitations/dark/config.yml create mode 100644 src/mibew/styles/invitations/dark/invite.css create mode 100644 src/mibew/styles/invitations/dark/screenshots/invitation.png create mode 100644 src/mibew/styles/invitations/dark/screenshots/location.png create mode 100644 src/mibew/styles/pages/dark/config.yml create mode 100644 src/mibew/styles/pages/dark/css/default.css create mode 100644 src/mibew/styles/pages/dark/css/default_ie.css create mode 100644 src/mibew/styles/pages/dark/css/vex.css create mode 100644 src/mibew/styles/pages/dark/images/ban.gif create mode 100644 src/mibew/styles/pages/dark/images/blank.html create mode 100644 src/mibew/styles/pages/dark/images/buttons/login.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/login_rtl.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/plus.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/save.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/save_rtl.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/search.png create mode 100644 src/mibew/styles/pages/dark/images/buttons/search_rtl.png create mode 100644 src/mibew/styles/pages/dark/images/dash/blocked.png create mode 100644 src/mibew/styles/pages/dark/images/dash/canned.png create mode 100644 src/mibew/styles/pages/dark/images/dash/close.gif create mode 100644 src/mibew/styles/pages/dark/images/dash/exit.png create mode 100644 src/mibew/styles/pages/dark/images/dash/group.png create mode 100644 src/mibew/styles/pages/dark/images/dash/history.png create mode 100644 src/mibew/styles/pages/dark/images/dash/information.png create mode 100644 src/mibew/styles/pages/dark/images/dash/locale.png create mode 100644 src/mibew/styles/pages/dark/images/dash/lock.png create mode 100644 src/mibew/styles/pages/dark/images/dash/mail_templates.png create mode 100644 src/mibew/styles/pages/dark/images/dash/operator.png create mode 100644 src/mibew/styles/pages/dark/images/dash/plugins.png create mode 100644 src/mibew/styles/pages/dark/images/dash/profile.png create mode 100644 src/mibew/styles/pages/dark/images/dash/settings.png create mode 100644 src/mibew/styles/pages/dark/images/dash/statistics.png create mode 100644 src/mibew/styles/pages/dark/images/dash/styles.png create mode 100644 src/mibew/styles/pages/dark/images/dash/translations.png create mode 100644 src/mibew/styles/pages/dark/images/dash/visitors.png create mode 100644 src/mibew/styles/pages/dark/images/dash/warning.png create mode 100644 src/mibew/styles/pages/dark/images/dash/wizard.png create mode 100644 src/mibew/styles/pages/dark/images/favicon.ico create mode 100644 src/mibew/styles/pages/dark/images/footer.gif create mode 100644 src/mibew/styles/pages/dark/images/formline.gif create mode 100644 src/mibew/styles/pages/dark/images/free.gif create mode 100644 src/mibew/styles/pages/dark/images/graydot.gif create mode 100644 src/mibew/styles/pages/dark/images/header.gif create mode 100644 src/mibew/styles/pages/dark/images/icon_err.gif create mode 100644 src/mibew/styles/pages/dark/images/li.gif create mode 100644 src/mibew/styles/pages/dark/images/loginbg.gif create mode 100644 src/mibew/styles/pages/dark/images/logincrnlb.gif create mode 100644 src/mibew/styles/pages/dark/images/logincrnlt.gif create mode 100644 src/mibew/styles/pages/dark/images/logincrnrb.gif create mode 100644 src/mibew/styles/pages/dark/images/logincrnrt.gif create mode 100644 src/mibew/styles/pages/dark/images/logo.png create mode 100644 src/mibew/styles/pages/dark/images/nextpage.gif create mode 100644 src/mibew/styles/pages/dark/images/opaway.gif create mode 100644 src/mibew/styles/pages/dark/images/oponline.gif create mode 100644 src/mibew/styles/pages/dark/images/prevpage.gif create mode 100644 src/mibew/styles/pages/dark/images/subitem.gif create mode 100644 src/mibew/styles/pages/dark/images/subitem_rtl.gif create mode 100644 src/mibew/styles/pages/dark/images/submit.gif create mode 100644 src/mibew/styles/pages/dark/images/submitbg.gif create mode 100644 src/mibew/styles/pages/dark/images/submitrest.gif create mode 100644 src/mibew/styles/pages/dark/images/tbliclogin.gif create mode 100644 src/mibew/styles/pages/dark/images/tbliclread.gif create mode 100644 src/mibew/styles/pages/dark/images/tbliclspeak.gif create mode 100644 src/mibew/styles/pages/dark/images/tblictrack.gif create mode 100644 src/mibew/styles/pages/dark/js/autoclose.js create mode 100644 src/mibew/styles/pages/dark/js/dashboard.js create mode 100644 src/mibew/styles/pages/dark/js/ie.js create mode 100644 src/mibew/styles/pages/dark/js/locale.js create mode 100644 src/mibew/styles/pages/dark/js/toggle_menu.js create mode 100644 src/mibew/styles/pages/dark/screenshots/home.png create mode 100644 src/mibew/styles/pages/dark/templates_compiled/client_side/.keep create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/default_control.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/message.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/agent.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/no_threads.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/no_visitors.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/queued_thread.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/status_panel.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/threads_collection.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/visitor.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/client_side/users/visitors_collection.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/_errors.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/_layout.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/_locales.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/_menu.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/_tabs.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/about.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/ban.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/bans.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/button_code.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/canned_message_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/canned_messages.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/group_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/group_members.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/groups.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/history.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/history_thread.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/history_user.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/index.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/install_done.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/install_err.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/install_password.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/install_step.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/locale_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/locales.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/login.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/mail_template_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/mail_templates.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/operator_avatar.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/operator_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/operator_groups.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/operator_permissions.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/operators.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/password_recovery.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/password_recovery_reset.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/plugins.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/settings_common.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/settings_features.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/settings_performance.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/statistics.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/style_preview.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/tracked.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/translation_edit.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/translation_export.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/translation_import.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/translations.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/update_intro.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/update_progress.handlebars create mode 100644 src/mibew/styles/pages/dark/templates_src/server_side/users.handlebars diff --git a/src/mibew/styles/chats/dark/chat.css b/src/mibew/styles/chats/dark/chat.css new file mode 100644 index 00000000..a3088bd6 --- /dev/null +++ b/src/mibew/styles/chats/dark/chat.css @@ -0,0 +1,594 @@ +/* + * Copyright 2005-2021 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. + * 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. + */ + +/* basic settings */ +html, +body { + height: 100%; +} +body { + margin: 0; + padding: 0; + font-weight: normal; + font-size: 11px; + font-family: Tahoma, sans-serif; + line-height: 1; + min-width: 500px; + background-color: #a4a4a4; +} +body.rtl { + text-align: right; + direction: rtl; +} +body.invitation { + min-width: 0; + min-height: 0; +} +select, option, input, textarea { + background-color: #c2c2c2; +} +a { + text-decoration: underline; + color: #9d6e06; +} +a:hover { + text-decoration: none; +} +img { + vertical-align: bottom; + border: 0 none; +} +.clear { + clear: both; + height: 0; + font-size: 0; + line-height: 0; + display: block; + visibility: hidden; +} + +/* layout of chat */ +#top { + position: relative; + padding: 5px 14px; + background: #a4a4a4 url("images/topbg.gif") scroll repeat-x 0 100%; + _zoom: 1; /* IE6 fix */ +} +#chat-header { + position: relative; + padding: 0 10px; + background: #a4a4a4 url("images/chatheaderbg.gif") scroll repeat-x 0 0; + _zoom: 1; /* IE6 fix */ +} +#chat { + padding: 0 10px; + background: #a4a4a4; +} +#message { + padding: 0 10px; + background: #a4a4a4; +} +#send { + padding: 0 10px 5px; + background: #aeaeae url("images/bottombg.gif") scroll repeat-x 0 0; +} +#footer { + margin: 0 auto; + padding-top: 5px; + padding-bottom: 5px; + text-align: center; + color: #222; +} +#footer a { + color: #222; +} + +/* chat header (#chat-header) */ +#chat-header .background-center { + background: #a4a4a4 url("images/chatheaderbgc.gif") scroll repeat-x 0 0; +} +#chat-header .background-left { + background: transparent url("images/chatheaderbgl.gif") scroll no-repeat 0 0; + _zoom: 1; /* IE6 fix */ +} +#chat-header .background-right { + height: 42px; + background: transparent url("images/chatheaderbgr.gif") scroll no-repeat 100% 0; +} +#logo { + font-weight: normal; + font-size: 17px; + font-family: Arial, sans-serif; + color: #9d6e06; + padding: 10px 0; +} +#logo a { + float: left; + text-decoration: none; +} +#page-title { + float: right; + margin-top: 5px; + text-align: right; +} + +/* common controls */ +#controls-region { + padding-right: 25px; +} +.control { + display: inline-block; + margin: 15px 0 0 11px; + cursor: pointer; + float: right; +} +.tpl-image { + width: 16px; + height: 16px; + background: transparent url("images/buttons.gif") scroll no-repeat 0 0; +} +.image-close-window { + background-position: -128px -16px; +} +a:hover .image-close-window { + background-position: -128px 0; +} +.close-control .tpl-image { + background-position: -128px -16px; +} +.active-close-control .tpl-image { + background-position: -128px 0; +} +.refresh-control .tpl-image { + background-position: -80px -16px; +} +.active-refresh-control .tpl-image { + background-position: -80px 0; +} +.secure-mode-control .tpl-image { + background-position: -144px -16px; +} +.active-secure-mode-control .tpl-image { + background-position: -144px 0; +} +.history-control .tpl-image { + background-position: -112px -16px; +} +.active-history-control .tpl-image { + background-position: -112px 0; +} +.sound-control .sound-control-on { + background-position: -48px -16px; +} +.active-sound-control .sound-control-on { + background-position: -48px 0; +} +.sound-control .sound-control-off { + background-position: -64px -16px; +} +.active-sound-control .sound-control-off { + background-position: -64px 0; +} +.send-mail-control .tpl-image { + background-position: -32px -16px; +} +.active-send-mail-control .tpl-image { + background-position: -32px 0; +} +.redirect-control .tpl-image { + background-position: -96px -16px; +} +.active-redirect-control .tpl-image { + background-position: -96px 0; +} +.user-name-control { + font-size: 14px; + cursor: auto; + float: left; + line-height: 22px; + margin-top: 12px; +} +.user-name-control-set { + display: inline-block; + vertical-align: middle; + background-position: 0 -16px; +} +.user-name-control-set:hover { + background-position: 0 0; +} +.user-name-control-change { + display: inline-block; + vertical-align: middle; + background-position: -16px -16px; +} +.user-name-control-change:hover { + background-position: -16px 0; +} +.user-name-control-input-background { + width: 95px; + height: 16px; + padding: 3px; + background: #aeaeae url("images/input_name.gif") scroll no-repeat 0 0; + display: inline-block; + _background-color: transparent; +} +#user-name-control-input { + width: 95px; + height: 16px; + margin: 0; + padding: 0; + border: 0 none; + font-weight: normal; + font-size: 12px; + font-family: Tahoma, sans-serif; +} +.user-name-control-prefix { + padding-right: 10px; +} + +/* main chat region (#chat) */ +#chat .background-left { + background: #aeaeae url("images/chatbgl.gif") scroll repeat-y 0 0; +} +#chat .background-right { + background: transparent url("images/chatbgr.gif") scroll repeat-y 100% 0; +} +#chat .background-shady-center { + background: transparent url("images/sdwbgc.png") scroll repeat-x 0 100%; +} +#chat .background-shady-left { + background: transparent url("images/sdwbgl.png") scroll no-repeat 0 100%; +} +#chat .background-shady-right { + position: relative; + padding: 0 4px 40px; + background: transparent url("images/sdwbgr.png") scroll no-repeat 100% 100%; + _zoom: 1; /* IE6 fix */ +} +#status-region { + position: absolute; + bottom: 20px; + left: 14px; + font-size: 12px; + color: #333333; +} +.status { + float: left; + padding-right: 10px; +} +#avatar-region { + float: right; + height: 200px; + background: #eeeeee url("images/avatarbg.gif") scroll repeat-y 100% 0; +} +.avatar { + width: 100px; + height: 100px; + margin: 10px 10px 0 10px; + text-align: center; + line-height: 0; + font-size: 0; + overflow: hidden; +} +.default-avatar { + background: transparent url("images/avatar.jpg") scroll no-repeat 50% 10px; + width: 100px; + height: 100px; +} +.avatar img { + max-width: 100px; + border: none; +} +#messages-region { + height: 200px; + min-height: 150px; + overflow-y: auto; + padding: 10px 10px 0; + font-weight: normal; + font-size: 10px; + font-family: Tahoma, sans-serif; + line-height: 1.8em; + color: #222; +} +#messages-region .message-info { + font-size: 1.1em; + color: #367b12; +} +#messages-region .message-hidden, +#messages-region .message-event { + font-size: 1.1em; +} +#messages-region .name-agent { + font-size: 1.1em; + font-weight: bold; + color: #000; +} +#messages-region .name-user { + font-size: 1.1em; + font-weight: bold; + color: #da251d; +} +#messages-region .message-agent, +#messages-region .message-user { + font-size: 1.1em; + color: #000; +} + +/* message area (#message) */ +#message .background-center { + background: #a4a4a4 url("images/message.png") scroll repeat-x 0 -95px; +} +#message .background-left { + background: transparent url("images/message.png") scroll no-repeat 0 0; +} +#message .background-right { + height: 58px; + padding: 14px 14px 23px; + background: transparent url("images/message.png") scroll no-repeat 100% -190px; +} +#message-input { + overflow: auto; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + font-weight: normal; + font-size: 12px; + font-family: Tahoma, sans-serif; + border: 0 none; + background: transparent; + resize: none; /* disable resize textarea in Google Chrome, Safari and Firefox 4 */ +} + +/* sending message area (#send) */ +#post-message { +} +#send-message, .submit-button { + float: right; + width: 190px; + height: 33px; + font-weight: normal; + font-size: 17px; + font-family: Arial, sans-serif; + line-height: 30px; + text-align: center; + text-decoration: none; + color: #9d6e06; + background: url("images/submit.gif") no-repeat 0 0 transparent; +} +#send-message:hover, .submit-button:hover { + color: #000000; + background: url("images/submit.gif") no-repeat -190px 0 transparent; +} +#predefined-wrapper { + float: left; + padding: 5px 0 0 3px; +} +#predefined { + width: 200px; +} + +/* survey */ +#message-survey { + resize: none; +} + +/* leavy message */ +#message-leave { + resize: none; +} + +/* error page (error.tpl) */ +#logo-wrapper { + position: relative; + padding: 5px 14px; + background: #adadad url("images/logobg.gif") scroll repeat-x 0 100%; + _zoom: 1; /* IE6 fix */ +} +.headers-inwards-wrapper-common { + background: #aeaeae url("images/wndb.gif") scroll repeat-x 0 100%; +} +.headers-inwards-wrapper-left { + background: transparent url("images/chatbgl.gif") scroll repeat-y 0 0; +} +.headers-inwards-wrapper-right { + background: transparent url("images/chatbgr.gif") scroll repeat-y 100% 0; +} +.headers-inwards-wrapper-top { + background: transparent url("images/wndt.gif") scroll repeat-x 0 0; +} +.headers-inwards-wrapper-top-left { + background: transparent url("images/wndtl.gif") scroll no-repeat 0 0; +} +.headers-inwards-wrapper-top-right { + background: transparent url("images/wndtr.gif") scroll no-repeat 100% 0; +} +.headers-inwards-wrapper-bottom-left { + background: transparent url("images/wndbl.gif") scroll no-repeat 0 100%; +} +.headers-inwards-wrapper-bottom-right { + position: relative; + padding: 14px; + background: transparent url("images/wndbr.gif") scroll no-repeat 100% 100%; +} +.headers-inwards-wrapper-bottom-right .buttons { + top: 14px; + position: absolute; + right: 25px; +} +#headers { + padding: 0 10px; + background: #a4a4a4; +} +#content-wrapper { + padding: 10px 14px 50px; + background: transparent url("images/content.gif") scroll repeat-x 0 -2px; +} +#content-wrapper { + font-weight: normal; + font-size: 13px; + font-family: Arial, sans-serif; +} +.info-message { + padding: 0 60px 0 0; + font-weight: normal; + font-size: 13px; + font-family: Arial, sans-serif; +} + +/* redirection page (redirect.tpl) */ +.left { + float: left; + width: 49%; +} +.right { + float: right; + width: 49%; +} +.center { + padding-top: 30px; + text-align: center; +} +ul { + margin: 10px 0; + padding: 0 0 0 10px; + list-style: none outside none; +} +ul li { + margin: 0 0 4px; + padding: 0 0 0 10px; + list-style: none outside none; + background: transparent url("images/list.gif") scroll no-repeat 0 5px; +} + +/* miscellanea */ +.form { + margin: 0; + padding: 0; + border: 0; + border-collapse: collapse; + vertical-align: top; +} +.form td { + margin: 0; + padding: 5px; + border: 0; + border-collapse: collapse; + vertical-align: top; +} +#content-wrapper #send-message { + float: left; + margin-top: 10px; +} +#content-wrapper input, +#content-wrapper textarea, +.headers-inwards-wrapper-bottom-right input { + border: 1px solid #445454; +} +#ajax-loader { + display: none; + position: absolute; + top: 200px; + left: 250px; +} + +/* invitations */ +#invitation-messages-region { + height: 150px; + min-height: 150px; + overflow-y: auto; + padding: 0; + font-weight: normal; + font-size: 10px; + font-family: Tahoma, sans-serif; + line-height: 1.8em; + color: #222; + background-color: #c2c2c2; +} +#invitation-messages-region .message-info { + font-size: 1.1em; + color: #7baa0f; +} +#invitation-messages-region .message-hidden, +#invitation-messages-region .message-event { + font-size: 1.1em; +} +#invitation-messages-region .name-agent { + font-size: 1.1em; + font-weight: bold; + color: #000000; +} +#invitation-messages-region .name-user { + font-size: 1.1em; + font-weight: bold; + color: #da251d; +} +#invitation-messages-region .message-agent, +#invitation-messages-region .message-user { + font-size: 1.1em; + color: #000000; +} + +/* confirmation dialogue */ +.info-message .visitor { + color: blue; +} +.info-message .operator { + color: green; +} +#confirm-pane { + width: 100%; +} +#confirm-pane .button-wrapper { + width: 400px; + margin: 140px auto 0; +} +#confirm-pane .submit-button { + float: none; + display: inline-block; +} + +/* responsive design for mobile devices */ +@media only screen and (max-width: 500px) { + body { + min-width: auto; + } + #footer { + max-width: 100%; + } + #message-leave { + width: 100%; + } + .username { + width: 100%; + } + #logo img { + max-width: 100%; + } + #invitation-messages-region { + max-width: 100%; + } +} + +/* additional tricks for desktops */ +@media (min-width: 501px) { + #footer { + width: 400px; + } + #invitation-messages-region { + width: 388px; + } +} diff --git a/src/mibew/styles/chats/dark/chat_ie7.css b/src/mibew/styles/chats/dark/chat_ie7.css new file mode 100644 index 00000000..d64078e6 --- /dev/null +++ b/src/mibew/styles/chats/dark/chat_ie7.css @@ -0,0 +1,25 @@ +/* + * Copyright 2005-2021 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. + * 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. + */ + +/* common controls */ +.control, +.user-name-control-set, +.user-name-control-change, +.user-name-control-input-background, +#confirm-pane .submit-button { + display: inline; + zoom: 1; +} diff --git a/src/mibew/styles/chats/dark/config.yml b/src/mibew/styles/chats/dark/config.yml new file mode 100644 index 00000000..296b18ed --- /dev/null +++ b/src/mibew/styles/chats/dark/config.yml @@ -0,0 +1,25 @@ +# This file determines some chat styles options + +chat: + # These params are used for chat windows opened via JavaScript's window.open. + window: + height: 480 + width: 640 + resizable: true + # These params are used to customize chat popup. + iframe: + css: iframe.css + +mail: + # These params are used for send mail windows opened via JavaScript's window.open. + window: + height: 254 + width: 603 + resizable: false + +# Screenshots section describe all screenshots shipped with style +# Params names should be equals to file names without extension. Pictures +# extension should be '.png' +# Params values should be equals to screenshot description +screenshots: + client_chat: "Client chat window" diff --git a/src/mibew/styles/chats/dark/iframe.css b/src/mibew/styles/chats/dark/iframe.css new file mode 100644 index 00000000..56c0704e --- /dev/null +++ b/src/mibew/styles/chats/dark/iframe.css @@ -0,0 +1,83 @@ +/* + * Copyright 2005-2021 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. + * 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. + */ + +div.mibew-chat-wrapper { + border: 0 !important; + margin: 0 !important; + padding: 0 !important; + position: fixed !important; + bottom: 5px !important; + right: 5px !important; +} + +iframe.mibew-chat-frame { + background: url("images/ajax-loader.gif") center center no-repeat #aeaeae !important; + margin: 0 !important; + padding: 0px !important; + border: 0 !important; + outline: 0 !important; + border: 1px solid #aaa !important; + width: 510px !important; + max-width: 100% !important; + height: 480px !important; + overflow: hidden !important; + z-index: 100 !important; + border-radius: 10px !important; + -webkit-border-radius: 10px !important; + -moz-border-radius: 10px !important; + box-shadow: 0 1px 1px 1px #777 !important; + -moz-box-shadow: 0 1px 1px 1px #777 !important; + -webkit-box-shadow: 0 1px 1px 1px #777 !important; +} + +div.mibew-chat-frame-toggle { + border: 1px solid black; + position: fixed !important; + border: 1px solid #aaa !important; + overflow: hidden !important; + z-index: 100 !important; + border-radius: 10px !important; + -webkit-border-radius: 10px !important; + -moz-border-radius: 10px !important; + box-shadow: 0 1px 1px 1px #777 !important; + -moz-box-shadow: 0 1px 1px 1px #777 !important; + -webkit-box-shadow: 0 1px 1px 1px #777 !important; + cursor: pointer; +} + +div.mibew-chat-frame-toggle-on { + width: 27px !important; + height: 480px !important; + right: 517px !important; + bottom: 5px !important; + background: #999999 url("images/right.png") scroll no-repeat 0 0; +} + +div.mibew-chat-frame-toggle-off { + width: 40px !important; + height: 40px !important; + right: 5px !important; + bottom: 5px !important; + background: #999999 url("images/default-logo-short.png") scroll no-repeat 4px 5px; +} + +/* responsive design for mobile devices */ +@media only screen and (max-width: 500px) { + div.mibew-chat-wrapper { + -webkit-overflow-scrolling: touch !important; + overflow-y: scroll !important; + } +} diff --git a/src/mibew/styles/chats/dark/images/ajax-loader.gif b/src/mibew/styles/chats/dark/images/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..37b65e70e2c5a7530edc0eb1f82fbcc2441c9d6b GIT binary patch literal 1924 zcmciDdsLEV90zdHmuqg7CZMOLfPgM7mtlIu&_L5IyQs~MT@+`bXqu)gG%uO=YY-QW zP$NVIqy#0MR$jnF#k6K#%WP&&caCdq=WPG1A^o-G&N^pjd;Wdj^Stlp`#sO^*%#>V z;YoJ~?FPL8f%JO)vKTa}KKV+D{9dx&&?B2w?ltr(NA3%sD?BDNXFz{mn78W>_=Sd0 zeGmEV-0o_=&iEAbyDc^O6g}lswEg+mlo)$DlYSvSksiH0HsN$42=f~NM;PC7UfpN) zqaa{tV}GFhuE(;W<87p4d30<wp0kmbQ(NCNoNIO!7Igo7+meE|1CV^=tDAiN#vCCK z9cQ0+Mjy>L^Ove!)|*fHq#p)1BD*8)(I-+NSF@iGkU?{kK3r{yU*fJL{5iK&dnn7< z97<%yJ3td5Wrz5J%BpL^>!Ru{6$Showt3FteNv!db1{(4SKdac1g&V9!n?gL?i;G4 zrl(h{>wC~I>@L6O(3zZqyMuphKlUgK`!IJDH<)bDSI_FEb>qE@Jqs`AUaWX;S_?S* zS73|`3Gqeeg(EL7f86Y>(Znr^Pi{b4P8HgpTq*c@3sciQmlM!tSty<Fa@+5MxEbYu zwg3pZqdYJ?ErydSg83%a{jw>AXz^1TfJt;u!kzO^y?i<!$Ba7@ZcE?$6=%zlFt)%5 ztf{?`P%1dZu+80G=F<qsH)mu8HQThPy;Z2DTRS@%Bphj{*aXxM5PO^q(PxK7u^Rl? z#Wv!&-95rn?8Bk1!RomOvwhRrCGle4!u)IEhZ2<vR|~Ua2wIR<<uReXvP_=cKvU1< z+o3F~wxOB%W`QgR>#sGJc7-aA_#OPD8#HuHt4R(D*gH;pDs&pc^+rUDuIt$2>IJ1k zGPCmX3kr*hEn#pH99CkDh(XwdQeg=I8=1s%Do=o;E_zdhiAZU@b0dJNp@?H7%@?YK zA`Ul-&#@}2=;&JQP;XV~ICPd=OB=x{h-1up!uavW1Ql-hS=&J2oX$wpEp?fQgf)qV z_gnmXqJEcC#W0H7FDx!5#W5IG{5H}K*o+rjr(c4n<Ge#wq!$m|nqK*}Qx@4^gRo7a zfEn4S_;9BTG5|p{sHN@|zHAPFE~J)_%d3I|pbTi56|@8*sgo<3ltfbu3Iqp%%fZ0} zKx?Q!UL}BIt~lHyJ>cmFFxMQkoW7A-{9Qp8>rQEVK!<g+dYUpS?_V^?U;QwC>&I<t z3J3oSA$d>ve8fcfr`a})fIM^or3iVMT87S~u+zA_)q}Vn3?V_l3Bg1#qZU(v6Bz^W zIYE%SE9tkJfiNasMs5ld+nB^CV+>S8Gonuh(Nka=K*#FQz|+1ZP0yrFG*7V}Yo4$M z<py4N?<?$@zV`-AjO^bx_zymi>CgEHG6}(jiQQ}5g0a`@0k|8}Ug;j;i)kTgPGFkq zZzrhiq{_wwIrfHFf-)r%AQbgkgBg#w55*8(%dC<&Lw?3J2Ed2TK$fZ;|2H6(Cg%G* z-?j?KvV`ThXHt@o>4gBigo&(hr!Y`FlE4>LUdZ;04=<=F76;p0%E`^kFV9e_)Ge*= z%2k6Iork}`w&y?&T(##BDlr2QB8-;Y=hkm$1jRMtpjyb3W^1YHX3LOjQMu4E|6*nB zG4sI<W){+1E{(KBQnPcyLTH{aS(9h_R?6otn9sh;@QOMX%dpCP)SBwL`3WabH)SJS zcySjO68dG>QTqP8qT-U$vM^Hz<w$Tm$(&0)m~O=mg<L<4j-^(5*G1KzL)DVS6xMDu zw80#DSY!*Wg|zd!-(3}3I~)hF>S~(A=M3=<Zj3OF875BSh6uC$MRPq*wUfPzFGqDo OAbu0bYxNE^tv>+t1SGTo literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/avatar.jpg b/src/mibew/styles/chats/dark/images/avatar.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6cec51c229f76d9645d09971ba07b8df1177f687 GIT binary patch literal 2588 zcma)730PBC7C!IgWidrfLQp}_h+!EmibSavm9Pi|QIY_PsFfsaR)`@{Ky(xsTE+QL zP!MFX5Cs`32o}M049F%5q80?VK|}=wg<2V>)@E*k1)UlD%}MUP|2x~e=bU@)({^aP zfZ^#Ta03j(zytk2+l`kATwFE?#olfLuVqL8faitFB2<JeK!kjYQta-`@m~|bp*{u@ zFkm9^z(^ufDV&5tFZd)4w*&G7aLY#L>yv8#TQEK-SS16%I7rNwDU@3f4n){KdW%Ab zGZALX!X!ZmpFsF?CE6gu9Xh^r1o!K3s2<}80$b@Tc0sYR5$1$`fTbT`S(q{c>C8tu z+@J_K@{jwE;2<5|p~Dg3ThZS1q>IoXSnlV8RxTQ*;0^*<0Ycz_6t==f2!}0TgH}1> zs6dS5&Y!S1(c24=l@wWR1R1h$h0PEF61_d>YJhYQjpbGq!n4z}Fau`*@&m2*l?4Fx zAi%p6t@drcR{Ks3K)MH@k&oGL&I4HZ8u3%cc--#*CME(@){gO{830wg0j6{+Bua_? zJtQ>aAt3-i9S0b{2EectfWCGlZ%C$-!_nISz9?5-%>ak904zh1?{%Mun}!TV^Y({2 z@AId<3obyAbcAMtLZCq<69kz`qfn?63XM)1hloa}8|Vnl<Hs8qFm=QpC7lzDAd_iS z+C(~iB74Gw38S+A8)$2QNdpmxNEj1vCPrdn+FC$`#7Vj~8Y2pcAmcjOWYl*bivYt( z+B;xC!T@KG80ZkI1R7*XG)t~Kl;s;|V6i1Y%X;!Ow?nug*(9?e`IlZ|g-X@ZZ$0aA z!TPjEo+n$)H)S7*mN<QB(@?1BJI)_@R7&UV7`*#8nLOTb-Mv@m=@%z|wxG`-G&|io zsZ_r0-n0Cv#O`AuQ*N))dwc4~->2zGl$X|y_(nUxEzicG1*mA>GZ}!PY@@(*937F+ z#t8<~kj3VaIp#C@C<Ype3?t(-*X~xMyxII!aV1y)UO^6{w@xM1-^y{H*14yu-HCX# zcxT*Dc|k`}!Xc&>d=KAQp@`}5PIB9n#m!Eh7Mnp$-Y2Q~e)fSyfj@;yyN3K&+gc=v z^*^8Hc+I*wE7m`Ov-9kniR?wz%WcxrUhMzZx2&h1k?Q7G3UY&k9geb`Qr6;Si~UxN zi~8Z$zs%WsH8*zK>LQUZ`-a>mFh&b=Q7~-gN5w(G1nPH>isp!^{y+i$UBMou1IMWZ zl}gqp162)WhRK*QkEcv6XK|cFgrS{SBF$%;J4ePJxWVPS$cEl$h~kJlS$hq;V@-2z zrTn#`$9!NB?fgpT|9r^5Fw@hsJxXk2>A3Rx`D(dY+|C1*mX+f2cVC~hz)q~7G^HIB zQETN@i5mrivw@w>QNQ>Mcnln^dg9J}6SwT!=K8_pKSf2oF7<v<;B(4NQ9JPLR^g)< zx3m($nRS)--nb;398Rg(e@;zm>PkDZYhiKA)Z~XIqW(TRR(8{*#*U@sZA}6rtcKgv z=)I+ViPTf+(qzF(uhhuiOy2r<b@b4g2h4&A3wK&g5)2ADrzKcjkKDc_&;DSN(H_sb zy@oA^29vEfxSN{JUdWC*eSiD8a?7FOBEBgYi;<n#CQHvQ*Hwvg>&yOZ{@A#9jwnlA zm_0o*?xlx=>zc+LYF`xA+s&vHRt$8eNH_%_J$b0rX3TREF*uUQ`25srTYmYChrb^_ z#~I7H#n&!nMmCu0{?&xC7e5u!exJ{YroYI|_|e4r?+P>HIXg)S-B_i=kstR}>=hnM z?W}lZ_CwoB)5OyKi(04mCoOTuPF=c&TOVwg+mO?j8A#!+I)xd`w<{3F!_`Bn$!4=^ z?kZ|kW=mT$<HOcZscIc^jwkFchaI=~+HbsjZ-BJN>Q&b1E1CzPyo<|QlmU~si?v{O zb{}Pj$JFA?Gxbh4<4ZUVbaC|cs{8DixTS`TO3nFISFsDb+a4Olh)NEhSu=b?<`&~V z;|f>E9iO8vSrW6|<8@uNVe0+gjAyfqf+(6g=Um62mnd%i#i74;(cOUv*Py`%pb;7% z0Ki0mKI5DO0G1Pg&4D<?($jR5Tocp?=+J-A4Hz)z*)m3&S=SB>ynvPDsuo$Nd0I>} zzSa_=;vLSp_9T?I=<usudJq3~*D*1MEuW*Wh^}84_xBq=SkmI-;b&Il%s6)m8CmFS zimsE<SHG|6AVU&a&51A1=ckTVl(GD+ZCr6d`<aa5?ytU2iY>Kx_7N=2S=mzLnMkw+ z-2RS|T^=x>Q&Yt(EbrPQ-h6=?PQ1JIsJ8!kddEM*T#DeqIU`QivWmoUcNXM!TU0Q= z$+M1BBqsH|iFEj~(x!`|7!Z<sbBY58HcIKc(s>Gt#)sQ~U6`A@x{V(+<t9IcI8{#F z#&WH35D)VNWyjS1uCgyE{%VRQusSSx=EK_l-mhOLuuPt%tXuCV>S=-$1M`E;O5B0^ z+c%Q6ss9j77YHunEVFib`$nOWXWF#}kA9ay<eze6!MvX}j(1#BSazR##}qP%m$7us z;4<=aSm1iaCNVkh9F-S1{bEdRx_xgJQPx$*U2Ij6-5Nj1zVvnU>;=~24xCngL5bQc zD0r@LfBKbGu;B@=D5K9mq$S9;u~V&~_*}R;7tgP=Ya?HtaAWvgUr&!ZB;38PO?{cR LwL5B8wzl)%q4_53 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/avatarbg.gif b/src/mibew/styles/chats/dark/images/avatarbg.gif new file mode 100644 index 0000000000000000000000000000000000000000..b3f11efd7586407520d0713abc2f7dc0981d33d6 GIT binary patch literal 180 zcmZ?wbhEHbtYBbdXc1>9ud7=E1WUnS85k@FgB4(~5)4*>!D=vA0|slsU>yjoU%#FK zH_!n|f$U;nwNw!3Nl}=Sp~d6!dRwdF`D29&7W3YCt=BoQpx~f}Ss!ovr-L;P^Co75 YD9wymFYJ|i`fb(TX&Y_`F)>&J0B@#C82|tP literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/bottombg.gif b/src/mibew/styles/chats/dark/images/bottombg.gif new file mode 100644 index 0000000000000000000000000000000000000000..a59d886013eb30403cef8d9f8c60173aac632bf9 GIT binary patch literal 157 zcmZ?wbhEHbWMr^nXc1#r0t8FJU>O)J2ZI%0uo4Vbfx&7pSOW%Y!C)N-tY5#L0WZ)2 v$%5=+U{y+B=y8nXa<&q1O_VX1bjB-IpXaj0ALhS;oheS5QvFj?I2fz}S^+v) literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/buttons.gif b/src/mibew/styles/chats/dark/images/buttons.gif new file mode 100644 index 0000000000000000000000000000000000000000..6c2904f43414babf9e2c26f17647ab6dd7dee38a GIT binary patch literal 5382 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 Rn4n?BD@o$yG6Vs;{||MzNt*xw literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatbgl.gif b/src/mibew/styles/chats/dark/images/chatbgl.gif new file mode 100644 index 0000000000000000000000000000000000000000..96f757cc6859eef86c206d35633d841963c7e62b GIT binary patch literal 42 ucmZ?wbhEHbWMN=rSjfUqURO7D+O#=y=Pq2dNQVIkK;jHc%yXDn8LR>REDBZt literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatbgr.gif b/src/mibew/styles/chats/dark/images/chatbgr.gif new file mode 100644 index 0000000000000000000000000000000000000000..6cefef9fe536966f6f294c8759c76765872c9633 GIT binary patch literal 42 ucmZ?wbhEHbWMN=rSjfUqURO7D+O#=y=Pq2dNQVIkK;jHc%q}LZ4AubsJPI%X literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatheaderbg.gif b/src/mibew/styles/chats/dark/images/chatheaderbg.gif new file mode 100644 index 0000000000000000000000000000000000000000..20550f49945eae943f5935e69a2422bd5db63590 GIT binary patch literal 84 zcmZ?wbhEHbWMtrBc+APLWa-kS%a$!$4hAb$tXK&Kt5&UAy_x|V&;bd8^fIt;3dkmN MNh+~0C^1+A0Np?p&j0`b literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatheaderbgc.gif b/src/mibew/styles/chats/dark/images/chatheaderbgc.gif new file mode 100644 index 0000000000000000000000000000000000000000..f4037cb9a0f7344bae9bd7defdd1db2dc366ae2c GIT binary patch literal 149 zcmZ?wbhEHbWMt4{Xc1v3udAzUXjlXUix)3h3I@xTEn5x-E5KkS2&@8v)gZ8D&6>4q z*RET)ZvFc83`77OkQ$I(46ITMCUYE2@yb}`mcz35{9_Z|WPPq8306a%1_1_Z0O|iS AtpET3 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatheaderbgl.gif b/src/mibew/styles/chats/dark/images/chatheaderbgl.gif new file mode 100644 index 0000000000000000000000000000000000000000..8922a8e698dce64081fec3252984d0a654d5f18b GIT binary patch literal 321 zcmZ?wbhEHbWM$A|SgOoWURPJy&@gq{v}x0)PoFVk#>|<sX3d%d1as%koi}gZd=OZ$ zV8Oygixw>ggC$_F6bzPu!Ez8-0R$_-U=<jw27xte)~sE-cHO#l>({SmpbgLg84L0Y z16$gGzJMJUGmIp8pBZ%~X!ScB5Q=1QnR4u*RHDR=ZYBkmK!IaVi%(3H=(+hWfLT%E z{Oh7!vGb4LXH=+ftZFW8WstA$tm-b6tM9Lpt(TcnFExE;m1Mm{y?DJ?ePoqzy-+>h K%6bMz25SIY+HYb2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/chatheaderbgr.gif b/src/mibew/styles/chats/dark/images/chatheaderbgr.gif new file mode 100644 index 0000000000000000000000000000000000000000..95e308c06dab5baf317fd5bd4197ba8628c0fe61 GIT binary patch literal 319 zcmZ?wbhEHbWM$A|SgOoWURPJy&@gq{v}x0)PoFVk#>|<sX3d%d1as%koi}gZd=OZ$ zV8Oygixw>ggC$_F6bzPu!Ez8-0R$_-U=<jw27xte)~sE-cHO#l>({SmpbgLg84L0Y z16#_0zJM7gGfZZmc+zx{g{hy*jU~cG=ZbT)lc|A{qQgNcH4TNQ#T63@*4$2HTqHRE z`b!4OIQ~=Tf7jIUHWbS@wN-T#%Qf{>$u`MMY?7KXtxB><qDj0-tVyIvxJjsqZ&?#V IlOuyQ07H;%s{jB1 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/content.gif b/src/mibew/styles/chats/dark/images/content.gif new file mode 100644 index 0000000000000000000000000000000000000000..b71c9bb8cd0ceeeac721182aa77131507c984f7f GIT binary patch literal 63 zcmZ?wbhEHbWMp7xIK;{@ZTj@N^X4sDym$!^EM3X~1ByRc7`cE-bU*?iwG7NG9Ev9M G7_0$B{SJ5l literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/default-logo-short.png b/src/mibew/styles/chats/dark/images/default-logo-short.png new file mode 100644 index 0000000000000000000000000000000000000000..17b82e79860d1be076b187f6b544e22824183963 GIT binary patch literal 875 zcmV-x1C;!UP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNliru-3c5JAT-^*TwnkI0{BTp zK~z}7)t5_X6JZd?f8V#+Bz?rzXQ4_FwNxq?uwL{az7Rza9|($~9x6GAqGIsk(OV8a zir|8WqWA&@UkD27MM^=TMp28c7DTa)w5Fxjw%OhB(4-Vi>uO`8b6RF+ncp|_-`QCe zj#?qW0v0i`)&<o1fV03hKus`!0F4@`$wP9|IYXK}o6k$otjWd9o?e3Ex;%dK5kvpX zEh4xA%c^Fgl;TZ$7m1#4xdDi*T*#{G3Ie7<)zNy21KA5#QW)UW&gIySaH+AG)AyTl z1CX*^25o1!abxLfz;>`5!FF6vEy%kD{tppeY<SJ%mXEjs0n->YuD3tMvFi;(BK*{q zJAl?il9ohr=mDL*Xi5#K<H5`K!&=Gs#top9@;s@uQva6*{!IW8$$28z74HDkClxX+ zRFJdej_b0dvfMksr!T!&dsgGP?zpNUA`GM)>i4cC`L*9WfYOR<Pg=NsU;_cu_eT&S zg4T*NyH`>iG--OD@DAY9nk$XX6#0GJk8Y-{qzJ^DHZn1xpr1R3H&QdZjQ!^yQs_5- z?=5ge*mUX^oxS~B-M5~)-76?93NmOrSwTdEl;h$vG{?6r<;KAcgo1vy*4?I~r*HHb z6OLNVK-FlcaYfizGmj(d7GoNkw}~Y0K6mr-LnrOseTWFtLIqUMoWk50rBs%c5;T2W zZfwSS^n%|0!7(S|m;fVRA*Esc!Z|FhEN6cCWGbeHFbxAqgSIEX(%O;aX<G-kpS>f| z(}&+@<Yp9WJ#>P*&)c}!^p=$EV7o#|VE{uZy1xwoU>X|J&?u!mCHD+4(lSXhEwV)@ z3Yg=Xgzf1SIUgn(*a7tAXwUy0KfvZ;d4{9blyM~Y11HiyIFe;`+z#9u>5s=EUBBKj zJz6+w5syU(N3B|*4ha4baxxx^9QtdY<9IBRxjYw-MGAmdKa_vXgzN(uka#Sz0N9nT zumIH)x{#z>asikHbf<lD^S1Sbqt@|o)Y_Eo-gn&;7pOr^h%W#D002ovPDHLkV1h(` Bl#&1d literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/default-logo.png b/src/mibew/styles/chats/dark/images/default-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..996df2561e66c30d0665f5ea0f3945a7b6918d56 GIT binary patch literal 4284 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 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/favicon.ico b/src/mibew/styles/chats/dark/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#8R<X;Xj(2FTR*K(6HO4v z1qz<ow{T{e0fv+TrXf%@7>a=^aVjp=$0ZB&*VF=aWP5?!871hRg)3Om6?pgB31E0a zM1Wqtd;KIZ1mFtL80)7be*5`<QjQ{AJ&?P)KLSk|oV%hs=>E;KaPy}XYCX7herdZm lTmc#b=r3UWA`1e!c)|f$B`)^=?+gt8p966_{`8GY763#9J8=L2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/free.gif b/src/mibew/styles/chats/dark/images/free.gif new file mode 100644 index 0000000000000000000000000000000000000000..1fb63de6c2456e329af51f28ec09da35d1eddcf5 GIT binary patch literal 49 zcmZ?wbhEHbWMp7un8?8J|Nnmm28II%4gg8TpDc_F3``6<KsHbo#AXU%WUvMRE941W literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/input_name.gif b/src/mibew/styles/chats/dark/images/input_name.gif new file mode 100644 index 0000000000000000000000000000000000000000..e1833c29b8f262dcf3a97527feed08a0e4157e2b GIT binary patch literal 392 zcmZ?wbhEHbOl1&bSgOiUURPJy&`{ObSku&0+uYpL(b3%5*#bmeU9H{SZQb4Ny}jKN zCiG04*gJ7z-=s+sr%s(dYu1cevu4eiGi&bLS@Y)2Td-i>!i5VLFJ81{$<k%ZRsg|D zFjxf!t5>gC3j*ubty{l-Jp;9Y4#+@|Ul`cd9+>!HlLABEi6uoRbFAiH(3rAe2S=-d z`=LjQmHQuTsPNI7eg4Jf<C6*+TKGMx{MO%oA9o_z#k1!_Lt|5>GKVO;WOG+{w*&{1 zV$Y<>rHV`pQ)bReb)P+N{@nSCrYu~%tZV7=RTV2&uPa`=e$$*8o40M*zB6g#u5Anx z_U=+*WbHh-U4l)p?)c_bAz9v{v+D(TWo4vzqUEnFme1jll97HY%*7n^>h+tqub8=n KpGrG2SOWk9C6+4y literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/list.gif b/src/mibew/styles/chats/dark/images/list.gif new file mode 100644 index 0000000000000000000000000000000000000000..f5db51596df8825ecf9082540339c9b0aa245c7e GIT binary patch literal 45 tcmZ?wbhEHbWM*JyXkcUjf}g*BDgI;uG8q|kKzxvl0~1RNKO-xHH2~0)2Z;ax literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/logobg.gif b/src/mibew/styles/chats/dark/images/logobg.gif new file mode 100644 index 0000000000000000000000000000000000000000..8af914659521b8477eb2b029820cf7af7749df50 GIT binary patch literal 84 zcmZ?wbhEHbWMtrDc+APLblI|H%a^ZMv0~-Qm8({-UcF|`+O=!fty{N#{dxv$KnElU U(#ycYDR9!+S24MRL5aZ{0Qo`}w*UYD literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/message.png b/src/mibew/styles/chats/dark/images/message.png new file mode 100644 index 0000000000000000000000000000000000000000..f5f5d53cafef0b0d50a8c091f5d0b811b1781de1 GIT binary patch literal 1386 zcmai!do&XY9LJ~A!xh)F$RlS8x%3#i#a8luMT~`nOCqm3&AeG%vCUd1k6{~ktF-cJ z-BTjAQE~6ZW@M?5Ns}=*%(gT$-R0bW@4bJ0zvp*;fBe3`-{<^Fg95#^G>kO>0DzXS zj|Wtx{s4fQnfex$W8<|10KhhouZL@B&iJQE7GmPK&NFcopeyGOSQGMCrAUNaeTE_; z>2PTLimBCaVW+mbUN!g_ZmoFla=kbPC*~chj=$3)6^nz>(M4Dy7E6qfXCAm+N+gkJ zM(nk8kmGgGhD0JHMv&_bFBp_}cNdzRnOlKyUH}cV$;CEWwglZ~e_PXhSF8@utyo>x z!sFi!b5f7|NqjQPty<N!td%^!>^7bJd>7RSn$+OfTh_d-3T<cUuWPSO!kF8mAt!X* zf6&@2^+Ok#Buwuzt2YP+I|_G!K=4)^h_DV@a3#;!5pBU&xO5kg?j_+sG(!F_;eJ;3 z0hKhzfDk;0=J-4D<~_nd;hK#ak|hOuhQd~E%L$_P#S)3%ua}hKivad#L|_n1$TE}* zc-H1_*kBHHH#hCf2j*R)$_V_+Sx=5gch0JjKc?B1>nXcu(9^cxT;!vSOebUb3e$c) z(rHdP-ey-~X`1rZXjgl{skPC}_}0CPc?F%1bNiZSr}MUErsIZ(k|OTZD8>u~v50}{ zjD1#-w<FJHK`#%rkugwO$UKIY5ID*lf;co^J73HWXS6J=uBthiccSL<^;lBe)VdAV z*RNxQOu`)(u5~5exZknGY<pTeDm7O6WYy7ZG<4Lir)6MfwiOj$h>aG#Oo=+kEq<9$ zOKik8k|Ug2%X8qLI(!-=4xwOmSU=PB8A6&WW5jhuIiQc)?+9p~lc_=Un@#fDiWB{K z<k(Jd-@)O?(&*5nfddY*3Wq5{;XG`w`jj~2B36(!0sf9krS34?_##V5pDr^yA)oO0 zpWFX~g-g>B&Gmzi;%!u{z{C78h8kfz>0f%w{M>0k^f#%lpsABE9QU|Bo<8XANKjHA z^bx`CBeyo!M{~+o^UoCFm<Hyrxeh(l-jirS;=EF+eE)*MU_38*o=?Yo<L}FO;`Quz zZ52i<1;i3T=4z^Q@Xgngk6Zn+`9ipjQ5!=T6Vsiy1k2<sQl_YsIJ~@e5BdQO<Yl5r z4(_5}2#-zL7%KcW;D5rb3N$UNR{PrCNp}JHZxX%x3Gz5paz)!~eZRt+ac-E3_LI2i zj7$`(0N;$^*$3H==D1TRSYQ=;GplM5vp^8j4qg8_ppNkrKQYO3swtnA^z<MkEJ~%! z%gOp7fvzvNJp14+b0&l>AGBTIkquviEx)FanlcV)JLfFbN%$C@R~<S<xVeH?PKHcv zV9wGL?#TAxt7#b-T8HqjBgCSrk2Bw=4uTulA6VH<+{6B*Fe{u0aUlEsJR_gtp4EhU zj8dc|I!O6EuZPCoN$Z3QuvC7B<x_6erNdDKE^;-MYLcy&!;7#^udlMYikWw=xsjKA zkzY}hAsw*Dv~FQ7Qu4$4y`te1?b**0prvt+2$8Vo=M%s)wieE8*s<}2lF4L747&Et zJA8d?1D4d7ObIUZp^crdtu?=!K^N8CI0_e1W@&Fo`?4-qo9A+w`ZLktF&~huEaaQ4 zD)xdc=iJgfC!mOM1oz`<CA<Wa5P9X+;xN;coWVc|jNcY@)0U6)2?uLsEiPZntl@7b yL)r(VaSh2Mo`<^&t2g+A2!>#}f3awJeJ8l<J~-~0cZuqU0(?CKJ?L&f75xp}Fsz#Z literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/nextpage.gif b/src/mibew/styles/chats/dark/images/nextpage.gif new file mode 100644 index 0000000000000000000000000000000000000000..dd69c049a1a09be3a9f4f711200ea4a09a862087 GIT binary patch literal 207 zcmZ?wbhEHb<YnMxXpvwjH)QB_Vdx7GstIwOAI>o|R&GtQKx<aqyd1abO_?XFrM5Tu ztnbM`J}G$X+_LQpYcDKKJGUn1(%R;;o4c=XY<;~w`|$o<Cr_SazyWkX;vl;iSVIz+ zV^cEYyj4vvN16$J)$x0xcj1&od(!j{cjZP436_>a`4<y(#M+u17z8x*INS`Y-f&fL nKTed=2&uJsKQUp$1h$Ks3mzD+6crV}`m0z{Bu`IOk--`OudPSJ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/prevpage.gif b/src/mibew/styles/chats/dark/images/prevpage.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a8e0433a51ecad59fc9ba3e2ff7cf0ca210c841 GIT binary patch literal 208 zcmZ?wbhEHb<YnMxXpvwjH)QB_Vdx7GstIwOAI>o|R&GtQKx<aqyd1abO_?XFrM5Tu ztnbM`J}G$X+_LQpYcDKKJGUn1(%R;;o4c=XY<;~w`|$o<Cr_SazyWkX;vl;iSVJGE z_B~-WeQIGEv~|hE%{Eh7`X&}h@Nn;)?$M}VAS2LujJYt7gMrEM;D(4VVr`4A8Q2;L p>`Ye_xGO8hKJlo-nO)^eVi>hdd4fb+ch3-NU0ACuR;9>b4FF>TNeTb} literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/right.png b/src/mibew/styles/chats/dark/images/right.png new file mode 100644 index 0000000000000000000000000000000000000000..1038a90345add99ef073911278e12bf8095b143c GIT binary patch literal 857 zcmeAS@N?(olHy`uVBq!ia0vp^(hLlY4>;I>tdMVF)<8<K#5JPCIX^cyHLrxhxhOTU zBsE2$JhLQ2!QIn0AiR-JoPmMqx2KC^NX4zUclZ0hN)S2raru&vWXCI>>K#(zk8_kn zrhd6!S~l?nzp!DVxtiLsgRT=ARv5Mgspkb{FF9KDzF>d;p#v|a?dDAWJg;nZVNuZ| z>9&O@Kh@fQn0aJhoOJ*3`|swz`CH{XDd<->HxEt0oA{)(DZcODzn`?EwYBwU(&2{z zSF=Lf5?}oI5wR`z{PLdWgAU7=FMn0G`&EgRm9_Qd)2C0@Y$)5k_WASY_V=sz&U^KB z*S&l9CLNbKe(~D1FokbFeyqsaD)mFSGhtfl$`Gy0;$mZg`l_l~oO5pddRY?H_c$Xt zS^0{^*)-!YPvyDBmrb7TTKDN^jmBZO#S5=rzn;RsH8oO8tXpxz<(Du1{IL;|$Zpcn z(^~~JskYWu;QjaCyLRlD5q0Ut<5Qb-cCK6Pv{0a<e0Qv=6fbZ4;gs~nnX{}cEG~Te zR;F<8_1BQqSFgPPK3VoiTcXBXzxGFuKSs=Ze%7vI|L=o9AIzRT+reh`*;NrbS*4|> zl4m~KTzy@7_x^qMM>}Ku+}+)yqN0A?)lJ)EXJ>aMYpYX$+T_5UG1GEyH(q~trl;3U zd25vJ-Fx@ijI3;ILd<6W73}Kyxo>^cTCr0Zm6efGy;8H>ChorY*(NqFu1(?gwx<?- zMl*ek%3oc~Sh9Mxc5HlnyOGxP(^1jU-BSWp-aLG$$g+0LniHjW<#*>TGkW&9^6mTg z?B@cP26cw+is0R}eY^Vo@1^DC>c<PGoPL@#Rj<ta-Me>L>FMs%QqS_Z&g)$n^6L8e k9-G(AjkE-R!*8h1oXWSdX4Z+tz`VlX>FVdQ&MBb@0L2r8)c^nh literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/sdwbgc.png b/src/mibew/styles/chats/dark/images/sdwbgc.png new file mode 100644 index 0000000000000000000000000000000000000000..624714ef81305b6b97fa959f610ab90bd301174a GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^j6m$g!2~3~zF1iZq>?>d977~7*Y-Mc9Z=w5IUMD9 z#rxoY`-9WJJgHXsc;T4a5?h^{J~B(9v^z4o1sYx6t^1sK`s|mty@k5byFLbcU4FTD z|2y{?l1fZz^L86Oy=A&oBxdcyGm?gGEdmer9)Eb}emt|;_JI0XZxhRb)-iax`njxg HN@xNAGLAqV literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/sdwbgl.png b/src/mibew/styles/chats/dark/images/sdwbgl.png new file mode 100644 index 0000000000000000000000000000000000000000..cac41e5b04f1b98493edc35177a44d68c0407b3b GIT binary patch literal 618 zcmV-w0+s!VP)<h;3K|Lk000e1NJLTq002t>002q|0ssI2d~iM(0006pNkl<Zc-rlk zJ#yPH5QTREjvBR^apgm}%XQ=Pr1K3@`3f2m`%=IJmjJ1s3>`W2L!l8t5X6V~b{Ev2 zudjXIpU>yt@9#feUI56xT9Car5|WUFk8fRdjolLptHuBCQfkOd!%RaBsUb5BT}qdd zka5U3q=t+`em#8)4Vh`^Qo58brAtZ3@5Aq);qiE+hCF$Hal&C3s3GH!gd`*(2}!v7 zGmV+C;!{J$AvGi+GYxYoT}na{lJHXqRaI3*B&BpZo%TkU@nVds`s?kjNI9wMdbZM6 zZyKbV%=4jP2;uqZY3Tcul9@ro%*;%HAtf^#h9TcdDZ$K;fAFyvs>KUhEKzkivxpm| z%`kEO`KCA8H23<x`1f}iFUEK{9J;Qn003mF+$<#nQc4(`05iNLsu^mv*y;(lFP?2d zw6Y70;C`A(!|YN3F~*#2CQh?tRycDH=1HmEw?>otZzKD(-1+)+<?<??i^KT}yf}q0 z0yaVxVLjtjf65Z)f+kDSt=e)9qbqUSl_!gxFmfsoR1ssw%L?b<gexsoI4vmChL9(@ zC|$esH4?qC9@evjAZ8(i%%dV9gbd~@XT{@t76z=Ogce{CM*pH7Ud-4ERRuB_oRh0z z?aEq-?&Z;~D*go-F|rAuB2WcTZY>z^(L6U1>R8$9MW{-~b2ad4_S?{JTWaVbvuNtn zYX!WZ)j#IB$E9mZ-j?4U#dBY#(fQF-*AI$cho^0S0Ka!}qkVOXcmMzZ07*qoM6N<$ Ef}s2!YXATM literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/sdwbgr.png b/src/mibew/styles/chats/dark/images/sdwbgr.png new file mode 100644 index 0000000000000000000000000000000000000000..1778774b6c2894b1e83315693fb0f0b1f5d56ba9 GIT binary patch literal 632 zcmV-;0*C#HP)<h;3K|Lk000e1NJLTq002t>002q|0ssI2d~iM(0006%Nkl<Zc-rlo z&5q(Q5QMwB9f4pjD{+|9zW<5m*uzRA&GP`>gA>PY8#0W5U1iG$<ex<G=c;b!N8oro z%DM`GUmqVo-`_Wz%`glqYcC`uAqoF}32}8uaD)<9#|ZpyE?u97%rvVbl(oB*8Zy(+ zrF1D>N<zjVcYMYnpPr~8GYvBhT}qeIr6gn=Qo{#nxZm%oA@98Zv4Z;BQ#hSYD<d3+ zflp5)Bq0e&NJ0|2dz#DT!n-zV$T*~iBxI&xE~QIJNJ0`mo$zottPJUVK8px|^jb0e z{`_1#=SwPo!3&Ra%lJMN5cl5$<Pn%zf($?2-m+20N^h=l28ro6SBf*oN}NjW&&^zS zhowuzqRcY^0H~@0P&G4EHM0<css=MjqpA=YhlU{?E+S#K+ch)vvczt)1|EN#x#s>@ zS1RCUQ7TBx#mp2?n@b|;E<x%D+wHco+jYo>s%>USsX5)$TOOxpIS<JAvObBG*-Ukk z4^T~qO|3~o_YS<z*;qF=hj}rZ)oIzh+Sj}~eTv9(CA<ulDy7u<6o`aic2`z#<Yn`= znEmCb1GU><PInHuBK9zm!+n%VyTwAj>I}H-1vd|e0g)IZfD}=!q~e+`In@`!<kiuK zHC}%|{AQ-Uj-5I4C2uib5xFHSw>Z?bg&qHq8`QU$(QH()yDr6ES5TrPe<I-`bF4pH zE;7$Ulef!-b6_+4D+w1xzRldtXYKKec&{V8m)UW)CUiY`b{xJSnD0yYMfn3lx){1a Sv#Ln|0000<MNUMnLSTZZkRP)E literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/submit.gif b/src/mibew/styles/chats/dark/images/submit.gif new file mode 100644 index 0000000000000000000000000000000000000000..b9c651cf35868780f0e751f0debea71056331f85 GIT binary patch literal 2713 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 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/topbg.gif b/src/mibew/styles/chats/dark/images/topbg.gif new file mode 100644 index 0000000000000000000000000000000000000000..9874f5be3ea9a7fce16ea614893d7c1633407edf GIT binary patch literal 43 vcmZ?wbhEHbWMtrASjf!q;K7534<9~y^oW6hK?jH#K;jHcEK@`|SsAPWFB%JM literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndb.gif b/src/mibew/styles/chats/dark/images/wndb.gif new file mode 100644 index 0000000000000000000000000000000000000000..77c483636e924f08e92f4025419b697953b084cb GIT binary patch literal 147 zcmZ?wbhEHbWMoihXc1wksIQ+ib?UU~)922cw`lR=B}>6z*|KHJL0|<CtOS8oK(HDF z)~s2xcJ11A>(;Gbzn*~zpaW6^vWtOL;(<zUisW3uC3gLnO?>ufa283h3NjpWXkoAh E0Dbo|Bme*a literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndbl.gif b/src/mibew/styles/chats/dark/images/wndbl.gif new file mode 100644 index 0000000000000000000000000000000000000000..6fa5a56293002e32e7547d502ffd894e8b9e6f7d GIT binary patch literal 57 zcmZ?wbhEHbWMN=oIK;|O(a<nw?%V|n7cO1`0t_&q17d*GFfg-O2s!+_pvqtk0Nhay AbN~PV literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndbr.gif b/src/mibew/styles/chats/dark/images/wndbr.gif new file mode 100644 index 0000000000000000000000000000000000000000..e9de7f0ee137818281101a3f71fbc4b868f42084 GIT binary patch literal 57 zcmZ?wbhEHbWMN=oIK;|O(a<nw?%V|n7cO1`0t_&q17d*GFfg-mC_4YUpvqtk0NYFs ARsaA1 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndt.gif b/src/mibew/styles/chats/dark/images/wndt.gif new file mode 100644 index 0000000000000000000000000000000000000000..f8c096d430cf2266b0701c83270dba5d53095cfb GIT binary patch literal 35 ncmZ?wbhEHbWMp7rXkcQPHhub{#fx<qfB+=Iz{J!O$Y2cskkbb# literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndtl.gif b/src/mibew/styles/chats/dark/images/wndtl.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd6ffc4694040c32260f07d521c13204dd86cc9d GIT binary patch literal 44 tcmZ?wbhEHbWMN=oSjfz<cnKIRUCO|~paaA}Q5FUUCe{$9<*Qj4tN{b{3OxV- literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/images/wndtr.gif b/src/mibew/styles/chats/dark/images/wndtr.gif new file mode 100644 index 0000000000000000000000000000000000000000..5d7d3dd9c6887dc8a41e9fd35c2713ddbe680252 GIT binary patch literal 44 tcmZ?wbhEHbWMN=oSjfz<cnKIRUCO|~paaA}Q5FUUCRP`v<*Qj4tN{c?3QYh2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/js/compiled/.keep b/src/mibew/styles/chats/dark/js/compiled/.keep new file mode 100644 index 00000000..e69de29b diff --git a/src/mibew/styles/chats/dark/js/source/.htaccess b/src/mibew/styles/chats/dark/js/source/.htaccess new file mode 100644 index 00000000..14249c50 --- /dev/null +++ b/src/mibew/styles/chats/dark/js/source/.htaccess @@ -0,0 +1 @@ +Deny from all \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/js/source/resize.js b/src/mibew/styles/chats/dark/js/source/resize.js new file mode 100644 index 00000000..0343cbfd --- /dev/null +++ b/src/mibew/styles/chats/dark/js/source/resize.js @@ -0,0 +1,144 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function(Mibew, $){ + + /** + * Total height of elements exclude #messages-region or false if it is not + * calculated yet + * @type Number|Boolean + */ + var delta = false; + + /** + * Timer id + * @type Number + */ + var t; + + /** + * Stretch #messages-region to fill the window. + * + * @param {Boolean} recalculateHeight Indicates if height of elements must + * be recalculated. It can be useful when elements set is changed. + */ + var updateHeight = function(recalculateHeight) { + if ($('#messages-region').size() == 0) { + return; + } + // Create shortcut for #messages-region + var $msgs = $('#messages-region'); + var $ava = $('#avatar-region'); + + // Calculate delta + if (delta === false || recalculateHeight) { + var max = 0; + $('body > *').each(function() { + var $el = $(this); + var pos = $el.offset(); + var height = $el.height(); + if (max < (pos.top + height)) { + max = pos.top + height; + } + }); + delta = max - $msgs.height(); + } + + // Check new height + var newHeight = $(window).height() - delta; + + if (newHeight < parseInt($msgs.css('minHeight'))) { + return; + } + + // Update messages region height + $msgs.height(newHeight); + + // Update avatar region height + if ($ava.size() > 0) { + $ava.height($msgs.innerHeight()); + } + } + + /** + * Fix bug with window resize event. + * + * @param {Boolean} recalculateHeight Indicates if height of elements must + * be recalculated. The default value is false. + */ + var updateHeightWrapper = function(recalculateHeight) { + if (t) { + clearTimeout(t); + } + t = setTimeout(function() { + updateHeight(recalculateHeight || false); + }, 0); + } + + // Stretch messages region after chat page initialize + Mibew.Application.Chat.addInitializer(function() { + /** + * Contains total count of images on the page + * @type Number + */ + var totalImagesCount = $('img').size(); + + /** + * Contains count of loaded images + * @type Number + */ + var imagesLoaded = 0; + + /** + * Run then image loaded. If all images loaded run resizer. + * @type Function + */ + var imageLoadCallback = function() { + imagesLoaded++; + if (totalImagesCount == imagesLoaded) { + updateHeight(); + // Scroll messages region to bottom + $('#messages-region').scrollTop( + $('#messages-region').prop('scrollHeight') + ); + // Stretch messages region on resize + $(window).resize(updateHeightWrapper); + } + } + + // Change size of message region only after all images will be loaded + $('img').each(function(){ + // Shortcut for current image element + var $el = $(this); + // Check if image already loaded and cached. + // Cached image have height and do not triggers load event. + if ($el.height() > 0) { + imageLoadCallback(); + } else { + $el.load(imageLoadCallback); + } + }); + + // Change of user's "canPost" field changes visibility of message input + // form. Thus we should manually update the height. + Mibew.Objects.Models.user.on('change:canPost', function() { + updateHeightWrapper(true); + }); + }); + +})(Mibew, jQuery); \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/screenshots/client_chat.png b/src/mibew/styles/chats/dark/screenshots/client_chat.png new file mode 100644 index 0000000000000000000000000000000000000000..8dac1da2f7b73b18a8c6c11e55892e3779e0fbd0 GIT binary patch literal 30582 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 TU%o@&Uy!^E<V~5hNyz^I$9z&E literal 0 HcmV?d00001 diff --git a/src/mibew/styles/chats/dark/templates_compiled/client_side/.keep b/src/mibew/styles/chats/dark/templates_compiled/client_side/.keep new file mode 100644 index 00000000..e69de29b diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/_logo.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/_logo.handlebars new file mode 100644 index 00000000..f3503c36 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/_logo.handlebars @@ -0,0 +1,25 @@ +{{! Logo block}} +<div id="logo-wrapper"> + <div id="logo"> + {{#if page.company.chatLogoURL}} + {{#if page.mibewHost}} + <a onclick="window.open('{{page.mibewHost}}');return false;" href="{{page.mibewHost}}"> + <img src="{{page.company.chatLogoURL}}" alt=""/> + </a> + {{else}} + <img src="{{page.company.chatLogoURL}}" alt=""/> + {{/if}} + {{else}} + {{#if page.mibewHost}} + <a onclick="window.open('{{page.mibewHost}}');return false;" href="{{page.mibewHost}}"> + <img src="{{page.stylePath}}/images/default-logo.png" alt=""/> + </a> + {{else}} + <img src="{{page.stylePath}}/images/default-logo.png" alt=""/> + {{/if}} + {{/if}} + + <div id="page-title">{{page.title}}</div> + <div class="clear"> </div> + </div> +</div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/avatar.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/avatar.handlebars new file mode 100644 index 00000000..2a679aa6 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/avatar.handlebars @@ -0,0 +1 @@ +{{#if imageLink}}<img src="{{imageLink}}" border="0" alt="" />{{else}}<div class="default-avatar"></div>{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/close.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/close.handlebars new file mode 100644 index 00000000..2183c6bf --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/close.handlebars @@ -0,0 +1 @@ +<div class="tpl-image" title="{{l10n "Close chat"}}"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/history.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/history.handlebars new file mode 100644 index 00000000..94c896bb --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/history.handlebars @@ -0,0 +1 @@ +<div class="tpl-image" title="{{l10n "Visit history"}}"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/redirect.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/redirect.handlebars new file mode 100644 index 00000000..62822432 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/redirect.handlebars @@ -0,0 +1,3 @@ +{{#if user.canPost}} +<div class="tpl-image" title="{{l10n "Redirect visitor to another operator"}}"></div> +{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/refresh.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/refresh.handlebars new file mode 100644 index 00000000..b5bb0fb7 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/refresh.handlebars @@ -0,0 +1 @@ +<div class="tpl-image" title="{{l10n "Refresh"}}"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/secure_mode.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/secure_mode.handlebars new file mode 100644 index 00000000..aa11fd6d --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/secure_mode.handlebars @@ -0,0 +1 @@ +<div class="tpl-image" title="SSL"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/send_mail.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/send_mail.handlebars new file mode 100644 index 00000000..ba204486 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/send_mail.handlebars @@ -0,0 +1 @@ +<div class="tpl-image" title="{{l10n "Send chat history by e-mail"}}"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/sound.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/sound.handlebars new file mode 100644 index 00000000..c9e81d27 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/sound.handlebars @@ -0,0 +1,5 @@ +{{#if enabled}} + <div class="tpl-image sound-control-on" title="{{l10n "Turn off sound"}}"></div> +{{else}} + <div class="tpl-image sound-control-off" title="{{l10n "Turn on sound"}}"></div> +{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/user_name.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/user_name.handlebars new file mode 100644 index 00000000..bd113fa9 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/controls/user_name.handlebars @@ -0,0 +1,12 @@ +{{#if user.canChangeName}} + <span class="user-name-control-prefix">{{l10n "You are"}}</span> + {{#if nameInput}} + <div class="user-name-control-input-background"><input id="user-name-control-input" type="text" size="12" value="{{user.name}}" class="username" /></div> + <a href="javascript:void(0)" class="user-name-control-set tpl-image" title="{{l10n "Change name"}}"></a> + {{else}} + <a href="javascript:void(0)" title="{{l10n "Change name"}}">{{user.name}}</a> + <a class="user-name-control-change tpl-image" title="{{l10n "Change name"}}"></a> + {{/if}} +{{else}} +{{l10n "You are"}} {{user.name}} +{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/layout.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/layout.handlebars new file mode 100644 index 00000000..b275f342 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/layout.handlebars @@ -0,0 +1,29 @@ +{{! Chat window top. Includes logo and some info about company}} +{{> _logo}} + +{{! Chat header}} +<div id="chat-header"> + <div class="background-center"><div class="background-left"><div class="background-right"> + {{! Chat controls region}} + <div id="controls-region"></div> + </div></div></div> +</div> + +{{! Chat region}} +<div id="chat"> + <div class="background-left"><div class="background-right"><div class="background-shady-center"><div class="background-shady-left"><div class="background-shady-right"> + {{#unless user.isAgent}} + <div id="avatar-region"></div> + {{/unless}} + {{! Chat messages region}} + <div id="messages-region"></div> + {{! Chat status region}} + <div id="status-region"></div> + </div></div></div></div></div> +</div> + +{{! Message form region}} +<div id="message-form-region"></div> + +{{! Footer links}} +<div id="footer">{{l10n "Powered by:"}} <a id="poweredby-link" href="https://mibew.org" title="Mibew Messenger project" target="_blank">mibew.org</a></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/message.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/message.handlebars new file mode 100644 index 00000000..8756d438 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/message.handlebars @@ -0,0 +1,3 @@ +<span>{{formatTime created}}</span> +{{#if name}}<span class='name-{{kindName}}'>{{name}}</span>: {{/if}} +<span class='message-{{kindName}}'>{{#replace "\n" "<br/>"}}{{urlReplace message}}{{/replace}}</span><br/> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/message_form.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/message_form.handlebars new file mode 100644 index 00000000..62daba14 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/message_form.handlebars @@ -0,0 +1,26 @@ +<div id="message"> +{{#if user.canPost}} + <div class="background-center"><div class="background-left"><div class="background-right"> + <textarea id="message-input" class="message" tabindex="0" rows="4" cols="10"></textarea> + </div></div></div> +{{/if}} +</div> + +<div id="send"> +{{#if user.canPost}} + <div id="post-message"> + <div id="predefined-wrapper"> + {{#if user.isAgent}} + <select id="predefined" size="1" class="answer"> + <option>{{l10n "Select answer..."}}</option> + {{#each predefinedAnswers}} + <option>{{this.short}}</option> + {{/each}} + </select> + {{/if}} + </div> + <a href="javascript:void(0)" id="send-message" title="{{l10n "Send message"}}">{{{l10n "Send ({0})" sendShortcut}}}</a> + </div> +{{/if}} +</div> +<div class="clear"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/base.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/base.handlebars new file mode 100644 index 00000000..25c25d51 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/base.handlebars @@ -0,0 +1 @@ +{{title}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/message.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/message.handlebars new file mode 100644 index 00000000..bd62cd6d --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/message.handlebars @@ -0,0 +1 @@ +{{message}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/typing.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/typing.handlebars new file mode 100644 index 00000000..8453b950 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/chat/status/typing.handlebars @@ -0,0 +1 @@ +{{l10n "Remote user is typing..."}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/default_control.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/default_control.handlebars new file mode 100644 index 00000000..fcdc3061 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/default_control.handlebars @@ -0,0 +1 @@ +<strong>{{title}}</strong> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/invitation/layout.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/invitation/layout.handlebars new file mode 100644 index 00000000..59264df9 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/invitation/layout.handlebars @@ -0,0 +1 @@ +<div id="invitation-messages-region"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/description.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/description.handlebars new file mode 100644 index 00000000..942f7a87 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/description.handlebars @@ -0,0 +1,6 @@ +<div class="buttons"> + <a href="javascript:Mibew.Utils.closeChatPopup();" title="{{l10n "Close"}}"> + <img class="tpl-image image-close-window" src="{{page.stylePath}}/images/free.gif" alt="{{l10n "Close"}}" /> + </a> +</div> +<div class="info-message">{{{l10n "Sorry. None of the support team is available at the moment. <br/>Please leave a message and someone will get back to you shortly."}}}</div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/form.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/form.handlebars new file mode 100644 index 00000000..507e83a2 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/form.handlebars @@ -0,0 +1,57 @@ +<form name="leaveMessageForm" method="post" action=""> + <input type="hidden" name="style" value="{{page.style}}"/> + <input type="hidden" name="info" value="{{info}}"/> + <input type="hidden" name="referrer" value="{{referrer}}"/> + {{#unless groups}}{{#if groupId}}<input type="hidden" name="group" value="{{groupId}}"/>{{/if}}{{/unless}} + + <div class="errors"></div> + + <table cellspacing="1" cellpadding="5" border="0" class="form"> + <tr> + <td><strong>{{l10n "Your email"}}:</strong></td> + <td><input type="text" name="email" size="50" value="{{email}}" class="username"/></td> + </tr> + <tr> + <td><strong>{{l10n "Your name"}}:</strong></td> + <td><input type="text" name="name" size="50" value="{{name}}" class="username"/></td> + </tr> + {{#if groups}} + <tr> + <td class="text"><strong>{{l10n "Choose Department:"}}</strong></td> + <td> + <select name="group" style="min-width:200px;"> + {{#each groups}} + <option value="{{this.id}}" {{#if this.selected}}selected="selected"{{/if}}>{{this.name}}</option> + {{/each}} + </select> + </td> + </tr> + <tr> + <td class="text"><strong>{{l10n "Department description:"}}</strong></td> + <td class="text" id="group-description"> + {{#each groups}}{{#if this.selected}}{{this.description}}{{/if}}{{/each}} + </td> + </tr> + {{/if}} + <tr> + <td><strong>{{l10n "Message"}}:</strong></td> + <td valign="top"> + <textarea id="message-leave" name="message" tabindex="0" cols="40" rows="5">{{message}}</textarea> + </td> + </tr> + {{#if showCaptcha}} + <tr> + <td><img id="captcha-img" src="captcha"/></td> + <td><input type="text" name="captcha" size="50" maxlength="15" value="" class="username"/></td> + </tr> + {{/if}} + {{#if privacyPolicyUrl}} + <tr> + <td colspan="2"><strong>{{{l10n "Please note that by leaving the message you're explicitly agree with the <a href=\"{0}\" target=\"_blank\">Privacy Policy</a>" privacyPolicyUrl}}}</strong></td> + </tr> + {{/if}} + </table> + <a href="javascript:void(0);" class="but" id="send-message">{{l10n "Send"}}</a> + <div class="clear"> </div> +</form> +<div id="ajax-loader"><img src="{{page.stylePath}}/images/ajax-loader.gif" alt="Loading..." /></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/layout.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/layout.handlebars new file mode 100644 index 00000000..62292015 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/layout.handlebars @@ -0,0 +1,11 @@ +{{! Logo block}} +{{> _logo}} + +{{! Header block. Contains description}} +<div id="headers"> + <div class="headers-inwards-wrapper-common"><div class="headers-inwards-wrapper-left"><div class="headers-inwards-wrapper-right"><div class="headers-inwards-wrapper-top"><div class="headers-inwards-wrapper-top-left"><div class="headers-inwards-wrapper-top-right"><div class="headers-inwards-wrapper-bottom-left"><div class="headers-inwards-wrapper-bottom-right" id="description-region"> + </div></div></div></div></div></div></div></div> +</div> + +{{! Empty container for main content}} +<div id="content-wrapper"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/sent_description.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/sent_description.handlebars new file mode 100644 index 00000000..90b9a368 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/leave_message/sent_description.handlebars @@ -0,0 +1,6 @@ +<div class="buttons"> + <a href="javascript:Mibew.Utils.closeChatPopup();" title="{{l10n "Close..."}}"> + <img class="tpl-image image-close-window" src="{{page.stylePath}}/images/free.gif" alt="{{l10n "Close..."}}" /> + </a> +</div> +<div class="info-message">{{l10n "Thank you for your message. We'll answer your query by email as soon as possible."}}</div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/message.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/message.handlebars new file mode 100644 index 00000000..0dbde6f6 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/message.handlebars @@ -0,0 +1,3 @@ +<span>{{formatTime created}}</span> +{{#if name}}<span class='name-{{kindName}}'>{{name}}</span>: {{/if}} +<span class='message-{{kindName}}'>{{#replace "\n" "<br/>"}}{{urlReplace message}}{{/replace}}</span><br/> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/survey/form.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/survey/form.handlebars new file mode 100644 index 00000000..092bd220 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/survey/form.handlebars @@ -0,0 +1,55 @@ +<form name="surveyForm" method="post" action=""> + <input type="hidden" name="style" value="{{page.style}}"/> + <input type="hidden" name="info" value="{{info}}"/> + <input type="hidden" name="referrer" value="{{referrer}}"/> + <input type="hidden" name="survey" value="on"/> + {{#unless showEmail}}<input type="hidden" name="email" value="{{email}}"/>{{/unless}} + {{#unless groups}}{{#if groupId}}<input type="hidden" name="group" value="{{groupId}}"/>{{/if}}{{/unless}} + {{#unless showMessage}}<input type="hidden" name="message" value="{{message}}"/>{{/unless}} + + <div class="errors"></div> + + <table class="form"> + {{#if groups}} + <tr> + <td><strong>{{l10n "Choose Department:"}}</strong></td> + <td> + <select name="group"> + {{#each groups}} + <option value="{{this.id}}" {{#if this.selected}}selected="selected"{{/if}}>{{this.name}}{{#unless this.online}} (offline){{/unless}}</option> + {{/each}} + </select> + </td> + </tr> + <tr> + <td><strong>{{l10n "Department description:"}}</strong></td> + <td id="group-description">{{#each groups}}{{#if this.selected}}{{this.description}}{{/if}}{{/each}}</td> + </tr> + {{/if}} + <tr> + <td><strong>{{l10n "Name:"}}</strong></td> + <td><input type="text" name="name" size="50" value="{{name}}" class="username" {{#unless canChangeName}}disabled="disabled"{{/unless}}/></td> + </tr> + {{#if showEmail}} + <tr> + <td><strong>{{l10n "Email:"}}</strong></td> + <td><input type="text" name="email" size="50" value="{{email}}" class="username"/></td> + </tr> + {{/if}} + {{#if showMessage}} + <tr> + <td><strong>{{l10n "Initial Question:"}}</strong></td> + <td valign="top"><textarea id="message-survey" name="message" tabindex="0" cols="45" rows="2">{{message}}</textarea></td> + </tr> + {{/if}} + {{#if privacyPolicyUrl}} + <tr> + <td colspan="2"><strong>{{{l10n "Please note that by starting the chat you're explicitly agree with the <a href=\"{0}\" target=\"_blank\">Privacy Policy</a>" privacyPolicyUrl}}}</strong></td> + </tr> + {{/if}} + </table> + <br/> + <a href="javascript:void(0);" class="but" id="submit-survey">{{l10n "Start Chat"}}</a> + <div class="clear"> </div> +</form> +<div id="ajax-loader"><img src="{{page.stylePath}}/images/ajax-loader.gif" alt="Loading..." /></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/client_side/survey/layout.handlebars b/src/mibew/styles/chats/dark/templates_src/client_side/survey/layout.handlebars new file mode 100644 index 00000000..e6259af0 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/client_side/survey/layout.handlebars @@ -0,0 +1,15 @@ +{{! Logo block}} +{{> _logo}} + +{{! Header block. Contains description and close link}} +<div id="headers"> + <div class="headers-inwards-wrapper-common"><div class="headers-inwards-wrapper-left"><div class="headers-inwards-wrapper-right"><div class="headers-inwards-wrapper-top"><div class="headers-inwards-wrapper-top-left"><div class="headers-inwards-wrapper-top-right"><div class="headers-inwards-wrapper-bottom-left"><div class="headers-inwards-wrapper-bottom-right"> + <div class="buttons"> + <a href="javascript:Mibew.Utils.closeChatPopup();" title="{{l10n "Close"}}"><img class="tpl-image image-close-window" src="{{page.stylePath}}/images/free.gif" alt="{{l10n "Close"}}" /></a> + </div> + <div class="info-message">{{l10n "Thank you for contacting us. Please fill out the form below and click the Start Chat button."}}</div> + </div></div></div></div></div></div></div></div> +</div> + +{{! Empty container for main content}} +<div id="content-wrapper"></div> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/_layout.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/_layout.handlebars new file mode 100644 index 00000000..e1a6293f --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/_layout.handlebars @@ -0,0 +1,65 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"{{#if rtl}} dir="rtl"{{/if}}> + <head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> + <title>{{#block "windowTitle"}}{{l10n "Mibew Messenger"}}{{/block}}</title> + <link rel="shortcut icon" href="{{asset "@CurrentStyle/images/favicon.ico"}}" type="image/x-icon" /> + <link rel="stylesheet" type="text/css" href="{{asset "@CurrentStyle/chat.css"}}" media="all" /> + + <!-- Extra CSS files --> + {{cssAssets}} + + <!-- Extra JavaScript files --> + {{jsAssets}} + + <link href="{{asset "@CurrentStyle/vex.css"}}" rel="stylesheet" type="text/css" /> + + {{#block "head"}}{{/block}} + </head> + + <body class="{{#if startFrom}}{{startFrom}}{{/if}}{{#if rtl}} rtl{{/if}}"> + {{#block "page"}} + {{! Logo block}} + <div id="logo-wrapper"> + <div id="logo"> + {{#if company.chatLogoURL}} + {{#if mibewHost}} + <a onclick="window.open('{{mibewHost}}');return false;" href="{{mibewHost}}"> + <img src="{{company.chatLogoURL}}" alt=""/> + </a> + {{else}} + <img src="{{company.chatLogoURL}}" alt=""/> + {{/if}} + {{else}} + {{#if mibewHost}} + <a onclick="window.open('{{mibewHost}}');return false;" href="{{mibewHost}}"> + <img src="{{asset "@CurrentStyle/images/default-logo.png"}}" alt=""/> + </a> + {{else}} + <img src="{{asset "@CurrentStyle/images/default-logo.png"}}" alt=""/> + {{/if}} + {{/if}} + <div id="page-title">{{#block "pageTitle"}}{{l10n "Mibew Messenger"}}{{/block}}</div> + <div class="clear"> </div> + </div> + </div> + + {{! Header block. Contains page description and buttons}} + <div id="headers"> + <div class="headers-inwards-wrapper-common"><div class="headers-inwards-wrapper-left"><div class="headers-inwards-wrapper-right"><div class="headers-inwards-wrapper-top"><div class="headers-inwards-wrapper-top-left"><div class="headers-inwards-wrapper-top-right"><div class="headers-inwards-wrapper-bottom-left"><div class="headers-inwards-wrapper-bottom-right"> + <div class="buttons"> + {{#block "buttons"}}{{/block}} + </div> + <div class="info-message"> + {{#block "message"}} {{/block}} + </div> + </div></div></div></div></div></div></div></div> + </div> + + {{! Main content block}} + <div id="content-wrapper"> + {{#block "content"}} {{/block}} + </div> + {{/block}} + </body> +</html> \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/chat.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/chat.handlebars new file mode 100644 index 00000000..74e4a38b --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/chat.handlebars @@ -0,0 +1,14 @@ +{{#extends "_layout"}} + {{#override "head"}} + <!--[if IE 7]> + <link rel="stylesheet" type="text/css" href="{{asset "@CurrentStyle/chat_ie7.css"}}" media="all" /> + <![endif]--> + + <!-- Add style scripts --> + <script type="text/javascript" src="{{asset "@CurrentStyle/js/compiled/scripts.js"}}"></script> + {{/override}} + + {{#override "page"}} + <div id="main-region"></div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/confirm.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/confirm.handlebars new file mode 100644 index 00000000..83d6fd41 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/confirm.handlebars @@ -0,0 +1,13 @@ +{{#extends "_layout"}} + {{#override "message"}} + {{l10n "Visitor <span class=\"visitor\">{0}</span> is already being assisted by <span class=\"operator\">{1}</span>.<br/> Are you really sure you want to start chatting the visitor?" user agent}} + {{/override}} + + {{#override "content"}} + <div id="confirm-pane"> + <div class="button-wrapper"> + <a href="{{link}}" class="submit-button">{{l10n "Yes. I'm sure"}}</a> <a href="javascript:window.close();" class="submit-button">{{l10n "No. Close the window"}}</a> + </div> + </div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/error.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/error.handlebars new file mode 100644 index 00000000..3a18e42c --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/error.handlebars @@ -0,0 +1,22 @@ +{{#extends "_layout"}} + {{#override "windowTitle"}}{{l10n "Error"}}{{/override}} + + {{#override "pageTitle"}}{{l10n "Error"}}{{/override}} + + {{#override "buttons"}} + <a href="javascript:window.close();" title="{{l10n 'Close...'}}"> + <img class="tpl-image image-close-window" src="{{asset "@CurrentStyle/images/free.gif"}}" alt="{{l10n 'Close...'}}" /> + </a> + {{/override}} + + {{#override "content"}} + {{#if errors}} + <b>{{l10n "Cannot execute:"}}</b><br/> + <ul> + {{#each errors}} + <li class="error">{{{this}}}</li> + {{/each}} + </ul> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/mail.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/mail.handlebars new file mode 100644 index 00000000..afa53ad6 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/mail.handlebars @@ -0,0 +1,31 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "Send chat history<br/>by mail"}}{{/override}} + + {{#override "buttons"}} + <a href="javascript:window.close();" title="{{l10n 'Close...'}}"> + <img class="tpl-image image-close-window" src="{{asset "@CurrentStyle/images/free.gif"}}" alt="{{l10n 'Close...'}}" /> + </a> + {{/override}} + + {{#override "message"}} + <form name="mailThreadForm" method="post" action="{{route "chat_user_mail_send" thread_id=this.[chat.thread.id] token=this.[chat.thread.token]}}"> + <input type="hidden" name="style" value="{{styleName}}"/> + <input type="hidden" name="level" value="{{level}}"/> + + <strong>{{l10n "Enter your email:"}}</strong> + <input type="text" name="email" size="20" value="{{formemail}}" class="username" /> + <a href="javascript:document.mailThreadForm.submit();">{{l10n "Send"}}</a> + </form> + {{/override}} + + {{#override "content"}} + {{#if errors}} + <b>{{l10n "Correct the mistakes:"}}</b><br/> + <ul> + {{#each errors}} + <li class="error">{{{this}}}</li> + {{/each}} + </ul> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/mailsent.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/mailsent.handlebars new file mode 100644 index 00000000..21842d2d --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/mailsent.handlebars @@ -0,0 +1,11 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "Sent"}}{{/override}} + + {{#override "buttons"}} + <a href="javascript:window.close();" title="{{l10n 'Close...'}}"> + <img class="tpl-image image-close-window" src="{{asset "@CurrentStyle/images/free.gif"}}" alt="{{l10n 'Close...'}}" /> + </a> + {{/override}} + + {{#override "message"}}{{l10n "A history of your chat was sent to address {0}" email}}{{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/redirect.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/redirect.handlebars new file mode 100644 index 00000000..2c370d55 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/redirect.handlebars @@ -0,0 +1,32 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "Redirect to<br/>another operator"}}{{/override}} + + {{#override "buttons"}} + <a href="javascript:window.close();" title="{{l10n 'Back...'}}"> + <img class="tpl-image image-close-window" src="{{asset "@CurrentStyle/images/free.gif"}}" alt="{{l10n 'Back...'}}" /> + </a> + {{/override}} + + {{#override "message"}}{{l10n "Choose:"}}{{/override}} + + {{#override "content"}} + <div class="left"> + {{#if redirectToAgent}} + <strong>{{l10n "Operator:"}}</strong> + <ul class="agentlist"> + {{{redirectToAgent}}} + </ul> + {{/if}} + </div> + <div class="right"> + {{#if redirectToGroup}} + <strong>{{l10n "Group:"}}</strong> + <ul class="agentlist"> + {{{redirectToGroup}}} + </ul> + {{/if}} + </div> + <div class="clear"> </div> + <div class="center">{{generatePagination pagination}}</div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/templates_src/server_side/redirected.handlebars b/src/mibew/styles/chats/dark/templates_src/server_side/redirected.handlebars new file mode 100644 index 00000000..2cb74817 --- /dev/null +++ b/src/mibew/styles/chats/dark/templates_src/server_side/redirected.handlebars @@ -0,0 +1,11 @@ +{{#extends "_layout"}} + {{#override "pageTitle"}}{{l10n "The visitor has been redirected to another operator"}}{{/override}} + + {{#override "buttons"}} + <a href="javascript:window.close();" title="{{l10n 'Close...'}}"> + <img class="tpl-image image-close-window" src="{{asset "@CurrentStyle/images/free.gif"}}" alt="{{l10n 'Close...'}}" /> + </a> + {{/override}} + + {{#override "message"}}{{message}}{{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/chats/dark/vex.css b/src/mibew/styles/chats/dark/vex.css new file mode 100644 index 00000000..42094180 --- /dev/null +++ b/src/mibew/styles/chats/dark/vex.css @@ -0,0 +1,42 @@ +/* + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +.vex.vex-theme-default .vex-content { + background-color: #a5a5a5; +} + +.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-primary { + background-color: #fdab31; +} + +.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-secondary { + background-color: #c0c0c0; +} + +.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"] { + background-color: #c2c2c2; + box-shadow: inset 0 0 0 2px #b78007; + -webkit-box-shadow: inset 0 0 0 2px #b78007; + -moz-box-shadow: inset 0 0 0 2px #b78007; +} + +.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"]:focus { + box-shadow: inset 0 0 0 2px #ffc107; + -webkit-box-shadow: inset 0 0 0 2px #ffc107; + -moz-box-shadow: inset 0 0 0 2px #ffc107; +} diff --git a/src/mibew/styles/invitations/dark/24x24.png b/src/mibew/styles/invitations/dark/24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..7abd6c3f65ebfa9a786dcd7e0d4afdb4a2ac286f GIT binary patch literal 1098 zcmV-Q1hxB#P)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3ljhU3ljkVnw%H_000McNliru-US*D0TdfKO?3bO03B&m zSad^gZEa<4bN~PV002XBWnpw>WFU8GbZ8()Nlj2>E@cM*00XW`L_t(Y$E}rLXw_vH z$3M^ed(WRa=PaAsGIf=kt<<7WiWW6Viz0{$5(8rw72bI%-4)$tmlk3dg%#dJm|+-U zWJ3RtC^eWh37q9NtL>ca{C>apeV;CV=bX;Yw!+~H4?lkI^Z)ri&-2RL$4))>SH&Mp zd?;`YPd+lvrqeIk@p5wT*ttIn)|hK)9~Xk%+S_r!mJ?ryj1bLZ-v>oivGXt$@ID|S zL`LRuA<Q^$OzJ(VI)`$R@c5mp*>!&(%`!d&R<;$`HPFXke>X;$qaUhYlloA<Xrx>u zJhovCJGb<bIzNl&LSXgsR(5ReWpMo}tdTkTs!HMlHg%!ub#{UwK<Wdr_XN!%td~c@ ztCBd6^Pz5VRtZ%}y~oxvnCrk(s-#TKB%lFR)1VwkQqNQ+p&X}#u#f{qUfBPU4qq<O zjFS;zc}tF*5q_VFvpP2bC<MBewNQ>7Q?a8dK7zu!j-}NMP?XsoyebpZ2?~fnXzC$F zxHwrs7HCsNalR3Q|LEz(@UjvGtn&fYT7(%EB3T)(?kFKZHm`ze)+8nkHIM^FU`1=8 z4&>F40BcsX5=l)rE0IZkt#=`Dfx+8W(bu^g7qYwmBd^)S-?gTLf!=On7pgoZ4T|v% z87Ru}GrzHC+a{j8`xZh7q|PrGb>bWmu=CzNb`Rdc(H};#hN)!`0<!(JL;80mtyes# zvT|vGeLEhYlm-r*_=%IlqvRrkWZ={Re01Ylo*(F^U|`StUouvTF*O;Wy_iEDe)V0Q zthg$$je{20{m|`f+jKM57)}jeVxk-)0$s~m*m7$Zaq9W(#}W3QIE!i8#;VX(w8-Eq z?`SD@_2?QUW)jB@OAGXOUq??zJ4Krrsid9@<CC1b^e5w`n3lYyIYL#XHE*#YTQqY< z9iW(tD8-I%M#lJh<TCYrB7z`@WHPD>^XRK87Vp1R*eoI-weA;cqad?3{J%K)&@`L^ zMhuEVbvdTx$)9a$^p~fXT;KVkiEL{mkUc(vHHOI4{tc0ls$11cV8c|%Z69v{wY_L7 zxpevi7r5dTaq;xbrPC)5%VM6xN1h$Z+nd%8<vV-cyf9HhQI=R!YMU8*;?sS5Pt01H zi*c}a>odvG*Z014@v9?!J?;6k1tY}H=OwZ?Hp@nfaq#`e@3C?FQ=I<f@RembIn>>= zPQ=;=Z7%=o`7e$fXCB-Zb<V4@PJ}{h(cCxm@;xfi*3mQHy)pdxhe=K5A7!<mbqlhM QasU7T07*qoM6N<$f=_<?1poj5 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/invitations/dark/close.gif b/src/mibew/styles/invitations/dark/close.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac76815d854204600d904541a2088f37530c90ed GIT binary patch literal 341 zcmZ?wbhEHb<YC}pSgOPD+l}v!2j_P$soy@LUqaM=g{Z%Y(EArE`6WW_UyR<Dc+>x> zy8qLx{%6|$FLeD}>-DED@_${>hvwin?NR@lqW*Vg{O^wY-<$M*QtJPyrT?dA{GXZe zZ+6wYrEPDQcmH3~^mb*><~;|u?mM#M@X7yMX8+%_=>L(`|6e`+|L(>APw)PJ{rvyW zZw3m0;!hSvE(UuB9grCyKQXWs9hiS%%fSpYwS}8Xb|x5{n=~oqXMvL7x#Ld13N-|; zbRCYIt2CwO(8C`q!nCipuQf1`;uM-QCBuM+gOgKKvp`d{iA9*3RbAURjg?!-UV&Xi ofQd;!gk8Z&NtTg;nVEr6R>@0Afqxyp+$t|8MP+5h&5jJ#0PJ*rV*mgE literal 0 HcmV?d00001 diff --git a/src/mibew/styles/invitations/dark/config.yml b/src/mibew/styles/invitations/dark/config.yml new file mode 100644 index 00000000..b5e66c00 --- /dev/null +++ b/src/mibew/styles/invitations/dark/config.yml @@ -0,0 +1,9 @@ +# This file determines some invitation style options + +# Screenshots section describe all screenshots shipped with style +# Params names should be equals to file names without extension. Pictures +# extension should be '.png' +# Params values should be equals to screenshot description +screenshots: + invitation: "Appearance of the invitation" + location: "Location of the invitation on a page" diff --git a/src/mibew/styles/invitations/dark/invite.css b/src/mibew/styles/invitations/dark/invite.css new file mode 100644 index 00000000..20b979c5 --- /dev/null +++ b/src/mibew/styles/invitations/dark/invite.css @@ -0,0 +1,158 @@ +/* + * Copyright 2005-2021 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. + * 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. + */ + +#mibew-invitation-popup { + margin: 0 !important; + padding: 5px !important; + border: 0 !important; + outline: 0 !important; + font-weight: normal !important; + font-style: normal !important; + font-family: Arial, Helvetica, sans-serif !important; + font-size: 14px !important; + vertical-align: baseline !important; + line-height: normal !important; + border: 1px solid #aaa !important; + background: #464646 !important; + background: -webkit-linear-gradient(left, #464646, #a0a0a0) !important; + background: -o-linear-gradient(right, #464646, #a0a0a0) !important; + background: -moz-linear-gradient(right, #464646, #a0a0a0) !important; + background: -ms-linear-gradient(right, #464646, #a0a0a0) !important; + background: linear-gradient(to right, #464646, #a0a0a0) !important; + color: #000000 !important; + position: fixed !important; + bottom: 5px !important; + right: 5px !important; + z-index: 100 !important; + border-radius: 10px !important; + -webkit-border-radius: 10px !important; + -moz-border-radius: 10px !important; + box-shadow: 0 1px 1px 1px #222 !important; + -moz-box-shadow: 0 1px 1px 1px #222 !important; + -webkit-box-shadow: 0 1px 1px 1px #222 !important; +} +#mibew-invitation-popup h1, +#mibew-invitation-popup p, +#mibew-invitation-close a { + cursor: pointer !important; +} +#mibew-invitation-popup h1 { + color: #b0b0b0 !important; + font-size: 20px !important; + font-weight: bold !important; + max-width: 220px !important; + overflow: hidden !important; + margin-top: 10px !important; + margin-bottom: 10px !important; + background: url("./24x24.png") 7px 1px no-repeat !important; + text-align: left !important; + padding-left: 40px !important; + display: inline-block !important; +} +#mibew-invitation-close { + float: right !important; + background: url("./close.gif") center no-repeat !important; + padding: 1px !important; + margin: 0 !important; +} +#mibew-invitation-close a { + font-family: "Trebuchet MS", Arial, Helvetica, sans-serif !important; + font-size: 12px !important; + font-weight: normal !important; + color: #9d9d9d !important; + margin: 0 4px 0 4px !important; +} +#mibew-invitation-close a, +#mibew-invitation-close a:link, +#mibew-invitation-close a:hover { + text-decoration: none !important; +} +#mibew-invitation-popup p { + padding: 2px !important; + margin: 2px !important; +} +#mibew-invitation-avatar-wrapper { + margin: 2px 10px 5px 2px !important; + cursor: pointer !important; + float: right !important; + max-width: 100px !important; + max-height: 100px !important; + overflow: hidden; +} +#mibew-invitation-avatar { + max-width: 100px !important; +} +#mibew-invitation-frame { + height: 150px !important; + overflow: hidden !important; + border: 1px solid #445454 !important; + background-color: #666666 !important; + padding: 5px !important; + border-radius: 5px !important; + -webkit-border-radius: 5px !important; + -moz-border-radius: 5px !important; + margin-bottom: 5px !important; +} +#mibew-invitation-accept { + color: #f1a600 !important; + font-size: 17px !important; + font-weight: normal !important; + text-align: center !important; + cursor: pointer !important; + background: #464646 !important; + background: -webkit-linear-gradient(#a0a0a0, #464646) !important; + background: -o-linear-gradient(#a0a0a0, #464646) !important; + background: -moz-linear-gradient(#a0a0a0, #464646) !important; + background: -ms-linear-gradient(#a0a0a0, #464646) !important; + background: linear-gradient(#a0a0a0, #464646) !important; + border: 1px solid #111 !important; + border-radius: 7px !important; + -webkit-border-radius: 7px !important; + -moz-border-radius: 7px !important; + display: inline-block !important; + float: right !important; + padding: 5px 65px !important; +} +#mibew-invitation-accept:hover { + color: black !important; + background: #b78007 !important; + background: -webkit-linear-gradient(#eba200, #b78007) !important; + background: -o-linear-gradient(#eba200, #b78007) !important; + background: -moz-linear-gradient(#eba200, #b78007) !important; + background: -ms-linear-gradient(#eba200, #b78007) !important; + background: linear-gradient(#eba200, #b78007) !important; +} + +/* responsive design for mobile devices */ +@media only screen and (max-width: 500px) { + #mibew-invitation-popup { + max-width: 100% !important; + } + #mibew-invitation-frame { + max-width: 100% !important; + } +} + +/* additional trick for desktops */ +@media (min-width: 501px) { + #mibew-invitation-popup { + width: 400px !important; + } + + #mibew-invitation-frame { + width: 388px !important; + } +} diff --git a/src/mibew/styles/invitations/dark/screenshots/invitation.png b/src/mibew/styles/invitations/dark/screenshots/invitation.png new file mode 100644 index 0000000000000000000000000000000000000000..1144076998a7ab2c9a90d5c6ce45a9f4936977a4 GIT binary patch literal 13053 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 G{r(qqKZO?n literal 0 HcmV?d00001 diff --git a/src/mibew/styles/invitations/dark/screenshots/location.png b/src/mibew/styles/invitations/dark/screenshots/location.png new file mode 100644 index 0000000000000000000000000000000000000000..ee2ab676a43a64641a0c69ef0397c2f01255dd4e GIT binary patch literal 3891 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%0DGPtx;F%yV5xqxARD@E7 za^kGqd*h<us&*#xw1Stj3hssN*;2KBlrIEG_$_)``)bh+<}x}*UNK$bQk(JJr9}t? zjmk*g!&wO)^shd9pZf9zJ~L}gYRw;KxS>s2FaV2Zt;$edZ*D42ZXIwjVW%pcuO}LS zmCMMJ5uOiTPvrj8EdKl`t9UCRL}=HwCCP!P9BvW(8c&h#0Pze$fJ=bdZqWpkjM}uJ zF2xW+ksOdd-Ugx&AS>u8#>OqcL7#9J6X_dWzgJL;_Ezbfmsq`T1k?>*Z?5r5HyUzB zRO@LY*78=lOo*1aF>iH{9#rD7+Nvpe*A$hRTDwJE6SvAOZ#b=h+?1lI?-#GDMDWiY zBpJC_U^bv*;TBy3X`3vw#~Ej0OH<@yZWInHmZzuzQh<jUJL57J=4JrFaxw47EkRnP zHY$b)gEYmHE-GZCmC4M&dcrKR%rXM8&`Stn_fdwr#Yy;CRgeV}k_yLLHEKY!mFrrA zlIAuk9sx9m6#?ZC{CH2s5v?PVRM(i=kcXA}eV>*!y{rd@mi$MOH;(7M7?$eH*JD{l z!}B^`VuH1S;*U#}w7hQT6co%X5ANm7emGF#ZT|8%n}C6#Z{NTA2io8=tC9w5TJNPf zo%6_EAWfaHkqK2CRAE0S`QxrAeZjm73U|iqvc?W=v^}r{9{oA3w$C(`4>kWxbi?O~ zZ55ZXMQe(eZ@4ru+sXa0N5jRS;ApqT3rgnQSl%R+LAX<?u1??f2jKfv)qeLbS*op6 z(Nm}1G|kSQ@CW2Et`4_2<F?ECQ?8+e-j8u<4F(z+7dmh2xVpW9cq!kONX~wyEeowo zI#+qk(!;>;^l2x)ES;_DX`ms~@j-A(T_d4`1oDcMr)}%AGpH>0QQT4YZa5`92RERl zhkWXJ_TwNr)a~UPJjVX+9&W|M7y?Neqp`feP3m3HFRl6N8e9-}w?L^nVbB)*s1dl) zA#qM^0<|2_f~B`i5jdBtV9W^kQSE<y)&8=}P8>o~4nWnKwXB*V7@GJ%%8&kgTm)FM z#mn35uF^*soT%>7Fct&|9&Eq=eyg0yAK|$jGzj+9<%uTHy7<8UlLA_;=z>_S$UxSQ zq~vpXmtHyT2LsrLVeYa7-u`FEvjhfM0)^+d&qpAK+Ccez)SLYGMm3KzC)yG#Zj$T$ zyXIicMI5Q6UhAK8KDuJ&vQ0~j8=dYy3t-gcNjhep_=HF@m0$j@KQ}kWUSu#6D0awS zyJ)#lPN`%u1a0?+%`FsaGRmCj+FiF|GibD`dKZOa^~|LvFvxVZ?ZKo?mGrQQCw-$E z8qGm*5pa{h^a|Kl&~Z^8v6GRFAlip-<|A}+%|3xU*J%@N`9SE`5dF(7iFk!fhFeLy zRGCZNYmN6+v}^iT9&jmv%C3!}telz-H2WkEtkzaInf+nIZqATwFWJHH({+2_q1f{s zlICxNc^$$mTFzy7H3|!LNy-ToQSEeLg>sj>lXjvMtA>(e{kKLG$OE;t8tm_>Smc*G z*)r~Iod^V?a65Ewk^{rQS@Y1F-XOMej4V+;ZfmWzB3~)U^EtT`&Q$stp7-l<YaZc3 zm#nQdCHOGKU;Wx}8!F&60kH1R&vYCsXK+z3Z1s51@vDj=?CGE7P-Z(r*doh6ao=F< zJUH5LnK?CAZrFdPo^*aFi>K&E)5ApcbOU?5mki(X^^KP`_?Y+T)Y74}awUiA8^~wP nx%6w_!wYoC_a3VAG0+Nwt2C>IcL&%%!vN?-Ym@2=x1#?CY8WRW literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/config.yml b/src/mibew/styles/pages/dark/config.yml new file mode 100644 index 00000000..0cb03cbd --- /dev/null +++ b/src/mibew/styles/pages/dark/config.yml @@ -0,0 +1,44 @@ +# This file determines some core styles options + +history: + # These params are used for history windows opened via JavaScript's window.open. + window: + width: 720 + height: 560 + resizable: true + +users: + # Use as wrap tag for the thread element + thread_tag: "tr" + # Use as wrap tag for the visitor element + visitor_tag: "tr" + +tracked: + # These params are used for user's track windows opened via JavaScript's + # window.open method. + user_window: + width: 640 + height: 480 + resizable: true + # These params are used for visitor's track windows opened via JavaScript's + # window.open method. + visitor_window: + width: 640 + height: 480 + scrollbars: true + resizable: true + +ban: + # These params are used for history windows opened via JavaScript's + # window.open method. + window: + width: 720 + height: 480 + resizable: true + +# Screenshots section describe all screenshots shipped with style +# Params names should be equals to file names without extension. Pictures +# extension should be '.png' +# Params values should be equals to screenshot description +screenshots: + home: "Operator's home page" diff --git a/src/mibew/styles/pages/dark/css/default.css b/src/mibew/styles/pages/dark/css/default.css new file mode 100644 index 00000000..3ad40ffa --- /dev/null +++ b/src/mibew/styles/pages/dark/css/default.css @@ -0,0 +1,1017 @@ +/* + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +/* reset built-in styles */ +html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote, pre, form, fieldset, table, th, td { + margin: 0; + padding: 0; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +fieldset, +img { + border: 0; +} +ol, +ul { + list-style: none; +} +h1, h2, h3, h4, h5, h6 { + font-size: 100%; + font-weight: normal; +} +q:before, +q:after { + content: ''; +} + +/* basic page layout */ +body { + background: #c9c9c9 url("../images/header.gif") repeat-x; + font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; + font-size: 0.8em; + line-height: 140%; + color: #333333; +} +html, +body { + height: 100%; /* 100% height with footer, 200 px sidebar */ +} +body { + min-width: 750px; +} +a { + color: #9d6e06; +} +select, +option, +input, +textarea { + background-color: #c2c2c2; +} +#wrap400, +#wrap700, +#fixed-wrap { + position: relative; + margin: 0 auto -41px; + height: auto !important; + height: 100%; + min-height: 100%; +} +#wrap400 { + width: 100%; + min-width: 450px; +} +#wrap700 { + width: 100%; + min-width: 750px; +} +#fixed-wrap { + width: 750px; +} +.content-div { + float: left; + width: 100%; +} +.content-inner { + margin-right: 210px; + padding: 10px 60px 10px 20px; + overflow: hidden; +} +#toggle-menu { + float: right; + margin-top: 12px; +} +.content-no-menu { + padding: 10px 20px 10px 20px; +} +.empty-inner { + height: 40px; +} +.inline-block { + display: inline-block; +} +#footer { + background: white url("../images/footer.gif") bottom repeat-x; + font-size: 11px; + position: relative; + min-height: 40px; + height: 40px; + vertical-align: middle; + width: 100%; + text-align: center; +} +#legal { + clear: both; + line-height: 30px; + padding-top: 10px; + text-align: center; + color: #9d6e06; + margin-bottom: 0; +} +#footer .footer-link { + color: #8a5f11; + text-decoration: underline; +} + +/* page header */ +#header { + width: 100%; + height: 32px; + margin: 0 -2px 10px 0; + padding-top: 10px; + padding-bottom: 10px; + background: url("../images/graydot.gif") repeat-x left bottom; + display: block; +} +#header { + float: left; +} +img.left { + float: left; + margin-right: 15px; +} +img.logo { + margin-top: 2px; +} +#header img.logo { + width: 32px; + height: 32px; +} +#header h1 { + font-size: 2em; + line-height: 32px; + color: #494949; + margin-left: 40px; +} +#header h1 a { + color: #494949; +} +#header a { + text-decoration: none; +} +#title { + float: left; + display: inline; +} +#path { + float: right; + padding: 10px 20px 0 0; + line-height: 22px; + display: inline; +} + +/* sidebar and menu */ +#sidebar { + float: left; + width: 185px; + margin-left: -210px; + margin-top: 20px; + position: relative; + line-height: 180% +} +.sidebar-hidden { + display: none; +} +#sidebar ul { + margin: 0; + padding: 0; + list-style: none; +} +#sidebar li { + margin-bottom: 20px; +} +#sidebar li ul { +} +#sidebar li li { + margin: 0; +} +#sidebar h2 { + text-transform: lowercase; + margin-bottom: 10px; + background: url("../images/graydot.gif") repeat-x left bottom; + font-size: 1.3em; + font-weight: bold; +} +.locales a { + color: #9d6e06; + font-size: 1em; + text-decoration: none; +} +.locales .active a { + color: #555555; +} +.locales a:hover { + text-decoration: underline; +} +.submenu a { + padding-left: 15px; + color: #8c6613; + font-size: 1em; + text-decoration: none; +} +.submenu a.inner { + padding-left: 0; +} +.submenu span.small { + font-size: 80%; + padding-left: 5px; +} +.submenu .active a { + background: url("../images/li.gif") no-repeat left 1px; + color: #555555; +} +.submenu .active a.inner { + background: none; +} +.submenu a:hover { + text-decoration: underline; +} + +/* form, tabbed form */ +.form-wrapper { + background: url("../images/loginbg.gif"); + clear: both; + width: 100%; +} +.tabs { + float: right; + display: inline; + margin-right: 15px; +} +.tabs li { + display: inline; +} +.tabs a { + display: block; + float: left; + padding: 2px 9px 3px 9px; + font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; + font-size: 11px; + color: #9d6e06; +} +.tabs li.active a { + background: url("../images/loginbg.gif"); + border-left: 1px solid #bbbbbb; + border-top: 1px solid #bbbbbb; + border-right: 1px solid #bbbbbb; + color: #000000; + text-decoration: none; +} +.form-header, +.form-footer, +.form-header-inwards, +.form-footer-inwards { + height: 15px; +} +.form-header { + background: url("../images/logincrnrt.gif") no-repeat top right; +} +.form-header-inwards { + background: url("../images/logincrnlt.gif") no-repeat top left; +} +.form-footer { + background: url("../images/logincrnrb.gif") no-repeat bottom right; +} +.form-footer-inwards { + background: url("../images/logincrnlb.gif") no-repeat bottom left; +} +.form-inwards { + margin: 0 15px; +} +.form-inwards p { + margin-bottom: 1em; +} + +/* fields of form */ +.form-fields { + font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; + font-size: 11px; + width: 100%; +} +.packed-form-fields { + font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; + font-size: 11px; + float: left; + margin-right: 25px; + margin-bottom: 8px; +} +div.error-info { + color: #c13030; +} +.field { + width: 100%; + margin-top: 5px; +} +.fields-header { + margin: 8px auto 8px; +} +.field-label { + display: block; + position: relative; + margin: 8px auto 2px; + color: black; +} +.field-label-left { + float: left; + width: 11em; +} +.asterisk span.required, +.field-label span.required { + font-size: 8.0pt; + color: red; + font-weight: bold; +} +.field .subfield { + padding-left: 30px; + background: url("../images/subitem.gif") no-repeat 10px 2px; +} +.form-inwards .level0 { +} +.form-inwards .level1 { + padding-left: 20px; +} +.field-in-row { + min-width: 300px; + display: inline; + float: left; + width: 45%; +} +.field-value { + float: left; +} +.field-textarea-value { + float: left; + width: 67%; +} +.field-textarea-value textarea { + width: 100%; +} +.field-value-no-description { +} +.field-iframe-value { + overflow: auto; + width: 100%; +} +.field-iframe-value iframe { + border: solid 1px #999999; +} +.field-description { + display: block; + float: left; + padding-left: 10px; + color: #676767; + font-size: 10px; + min-width: 200px; +} +.form-button { + background: url("../images/formline.gif") repeat-x; + margin-top: 20px; + padding-top: 10px; +} +.form-button .links { + float: right; + margin-top: 5px; +} +.form-button .submit-button { + float: left; +} +.field-input { +} +textarea.wide { + border: 1px solid #878787; + overflow: auto; + width: 95%; +} +input.wide { + border: 1px solid #878787; + color: #333333; + line-height: normal; + width: 95%; +} +input.field-input { + border: 1px solid #878787; + color: #333333; + margin-right: 15px; + padding-right: 0; +} +#form-message, +#offline-dashboard-warning { + padding: 8px 11px; + font-size: 0.85em; + font-weight: bold; + max-width: 700px; + margin: -10px 2px 10px; + color: #515151; +} +#form-message { + border: 1px solid #ffc107; + background-color: #f9f7e7; +} +#offline-dashboard-warning { + border: 1px solid #f44336; + background-color: #c7c0c0; +} +#form-message img.warning, +#offline-dashboard-warning img.warning { + height: 24px; + width: 24px; + vertical-align: middle; + margin-right: 5px; +} +#offline-warning { + border: 1px solid #4cd496; + background-color: #e7f9f1; + color: #515151; + padding: 8px 11px; + font-size: 0.85em; + font-weight: bold; + line-height: 140%; + margin: 0; +} +#offline-warning img { + margin-top: .4em; + float: left; + padding-right: 10px; +} +.asterisk { + padding: 10px 20px; +} +input.submit-button-background { + border: none; + border-radius: 0; + height: 35px; + width: 110px; + font-size: 11px; + padding: 8px 0 9px 25px; + margin: 0; + outline: none; + cursor: pointer; +} +input.login-button { + background: url("../images/buttons/login.png") top left no-repeat; +} +input.save-button { + background: url("../images/buttons/save.png") top left no-repeat; +} +input.search-button { + background: url("../images/buttons/search.png") top left no-repeat; +} + +/* tables */ +.table-toolbar { + float: right; +} +.table-toolbar a { + color: #8a5f11; + vertical-align: top; + padding-left: 4px; +} +.table-title { + background: url("../images/graydot.gif") repeat-x left bottom; + font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; + font-size: 1.4em; + margin: 10px 0 20px; + padding-bottom: 10px; + color: #8a5f11; + font-weight: bold; +} +table.list, +table.translate, +table.statistics { + font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; + background: #c9c9c9; + width: 100%; + border-collapse: collapse; + text-align: left; +} +table.list th, +table.translate th, +table.statistics th { + font-size: 1em; + font-weight: normal; + padding: 10px 6px; + border-bottom: 2px solid #8c6613; +} +table.list th, +table.translate th { + color: #8a5f11; +} +table.statistics th { + color: #8c6613; +} +table.list td, +table.statistics td { + color: #9d6e06; + padding: 10px 8px; + border-bottom: 1px solid #cccccc; +} +table.translate td { + font-family: Arial, Helvetica, sans-serif; + font-size: 12px; + color: #515151; + padding: 2px 8px; + border-bottom: 1px solid #cccccc; +} +table.list td a.man { + background: url("../images/tbliclogin.gif") no-repeat left center; + padding-left: 15px; +} +table.list tbody tr:hover td, +table.list tbody tr:hover td a, +table.statistics tbody tr:hover td { + color: #8a5f11; +} +table.list td.level0 { +} +table.list td.level1 { + padding-left: 20px; +} +table.list .disabled-link { + cursor: pointer; + text-decoration: none; +} + +/* list of awaiting visitors */ +table.awaiting { + font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; + background: #c9c9c9; + width: 100%; + border-collapse: collapse; + text-align: left; +} +table.awaiting th { + font-size: 1.2em; + font-weight: normal; + color: #8a5f11; + padding: 10px 8px; + border-bottom: 2px solid #8c6613; + text-align: center; +} +table.awaiting th.first { + text-align: left; +} +table.awaiting table.inner { + border: none; + width: 100%; +} +table.awaiting table.inner .icon { + width: 30px; + text-align: center; +} +table.awaiting td.visitor { + color: #8a5f11; + border-bottom: 1px solid #cccccc; + padding: 10px 8px; + margin: 0; + text-align: center; +} +table.awaiting .no-threads, +table.awaiting .no-visitors { + height: 30px; +} +.awaiting .visitor a { + color: #8a5f11; +} +.awaiting tr:hover .visitor, +.awaiting tr:hover .visitor a { + color: #8a5f11; +} +.awaiting tr.banned .visitor, +.awaiting tr.banned .visitor a { + color: #9ac8e0; +} +.awaiting tr.banned:hover .visitor, +.awaiting tr.banned:hover .visitor a { + color: #4c9cc8; +} +.awaiting tr.in-waiting .visitor, +.awaiting tr.in-waiting a { + font-weight: bold; +} +.awaiting tr.in-priority-queue .visitor, +.awaiting tr.in-priority-queue a { + font-weight: bold; + font-size: 1.05em; +} +.awaiting tr.in-chat .visitor, +.awaiting tr.in-chat .visitor a { + color: #777777; +} +.awaiting tr.in-chat:hover .visitor, +.awaiting tr.in-chat:hover .visitor a { + color: #444444; +} +.awaiting tr.in-chat a { + text-decoration: none; +} +.first-message { + text-align: right; + font-size: 0.8em; + padding-right: 10px; +} +.first-message a { + text-decoration: none; +} +.first-message a:hover { + text-decoration: underline; +} +#status-panel-region { + margin: 10px; +} +#connection-status { + float: right; +} +#connection-controls a { + color: #777777; + text-decoration: none; +} +#connection-controls a:hover { + text-decoration: underline; +} +.default-thread-controls { + width: 100px; +} +.default-visitor-controls { + width: 20px; +} +.default-thread-controls .control, +.default-visitor-controls .control { + height: 15px; + width: 15px; + margin: 0 2px; + border: none; + cursor: pointer; +} +.open-control { + background: no-repeat top left url("../images/tbliclspeak.gif"); +} +.view-control { + background: no-repeat top left url("../images/tbliclread.gif"); +} +.track-control { + background: no-repeat top left url("../images/tblictrack.gif"); +} +.ban-control { + background: no-repeat top left url("../images/ban.gif"); +} +#sound-region { + display: none; +} + +/* list of available operators */ +#agents-region { + padding-right: 10px; + float: right; +} +.agent-status-away, +.agent-status-online { + display: inline-block; + height: 12px; + width: 12px; + border: none; + background-repeat: no-repeat; + margin-left: 5px; + margin-right: 2px; +} +.agent-status-away { + background-image: url("../images/opaway.gif"); +} +.agent-status-online { + background-image: url("../images/oponline.gif"); +} + +/* search form */ +#search-text { + float: left; + display: inline; + margin: 7px 20px 5px 0; + width: 60%; + padding-right: 5px; +} +.search-controls { + float: left; + margin:7px 20px 5px 0; + padding-right:5px; + display: inline; +} +#search-text input { + width: 100%; + margin: 0; +} +#search-button { + float: left; +} + +/* login form */ +#login-small-pane { + float: right; + padding: 10px 15px 0 0; + margin-right: 0; + line-height: 22px; + display: inline; +} +#login-small-pane input { + margin: 0 3px; + padding: 0 2px; +} +#login-small-pane .butt { + height: 1.3em; + border: 0; + background: none; +} +#login-small-pane .butt:hover { + background: #aaaaaa; +} +#login-intro { + width: 400px; + margin: 10px 30px; +} +#login-pane { + width: 400px; + margin: 30px 30px; +} +#login-pane .header h2 { + font-size: 2em; + margin-bottom: 0.9em; + padding-bottom: 0.8em; + border-bottom: 2px solid #8c6613; +} +.submit a { + font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; + font-size: 11px; + line-height: 35px; + color: #000000; + text-decoration: none; +} +.submit { + background: url("../images/submitbg.gif") repeat-x; + vertical-align: top; +} + +/* threads log */ +.log-pane { + margin: 10px 0; + line-height: 150%; +} +.log-pane .header { + padding-bottom: 0.8em; + border-bottom: 2px solid #8c6613; +} +.log-pane .param-label { + width: 10em; + float: left; + margin-right:10px; +} +.log-pane .param-value { + float: left; +} + +/* dashboard */ +#dashboard { + width: 100%; +} +.dashboard-item { + width: 300px; + height: 200px; + margin-bottom: 0.4em; + vertical-align: top; + display: inline-block; + border: 1px solid #ededed; +} +.dashboard-item-content { + padding: 5px 2em 5em; +} +.dashboard-item:hover { + background-color: #a5a5a5; + cursor: pointer; +} +.dashboard-item a { + padding-top: 6px; + padding-bottom: 10px; + display: block; +} +.dashboard-item img, +#dashboard-locales-popup h2 img { + float: left; + padding-right: 10px; +} +#dashboard-locales-popup h2 img { + margin-top: -3px; +} +#dashboard-locales-popup .locales { + line-height: 180%; + margin-left: 10px; +} +#dashboard-locales-popup h2 { + font-size: 1.5em; + margin-bottom: 0.9em; + padding: 5px 30px 0.8em 0; + border-bottom: 2px solid #8c6613; +} +#dashboard-locales-popup-close { + float: right; + position: absolute; + right: 5px; + top: 5px; +} +#dashboard-locales-popup { + display: none; + position: fixed; + _position: absolute; /* IE6 fix */ + background: #cecece; + border: 2px solid #8c6613; + z-index: 110; + padding: 1em 1em; + font-size: 1em; +} +#background-popup { + display: none; + position: fixed; + _position: absolute; /* IE6 fix */ + height: 100%; + opacity: .5; + width: 100%; + top: 0; + left: 0; + background: #000000; + border: 1px solid #cecece; + z-index: 101; +} + +/* install and update wizards */ +#install li { + list-style-type: circle; + list-style-position: inside; + margin-left: 2em; +} +#install .password-form { + margin-left: 2em; +} +#check-new-visitor, +#check-new-message { + color: #9d6e06; + text-decoration: none; +} +#check-new-visitor:hover, +#check-new-message:hover { + text-decoration: underline; +} +#install .warning { + color: #c13030; + font-weight: bold; +} +#install .error { + color: #c13030; +} + +/* chat */ +.message { + font-family: Arial, Helvetica, sans-serif; + font-size: 12px; + color: #4f4f4f; + padding: 15px 0 0 0; + line-height: 17px; +} +.message span.time { + color: #000000; +} +.message span.name-user { + color: #b11e23; + font-weight: bold; +} +.message span.name-agent { + font-weight: bold; +} +.message span.message-info { + color: #b1691e; + font-size: 11px; +} +.message span.message-event { + color: #5f5851; + font-size: 11px; +} +.message span.message-hidden { + color: #5f5851; + font-size: 11px; +} +.message span.message-connection { + color: #5f5851; + font-size: 11px; +} + +/* themes page */ +.screenshot { + border: solid 1px #bbbbbb; +} + +/* updates page */ +#news { + font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; + font-size: 11px; + margin-bottom: 15px; + padding: 4px; +} +.news-text { + margin-bottom: 1em; +} + +/* about page */ +.about-page h2 { + font-size: 1.5em; + margin-bottom: 0.8em; +} +.about-page h3 { + font-size: 1.2em; + margin-bottom: 0.2em; +} +.about-page ul { + padding-left: 2em; + margin-bottom: 1em; +} +.about-page li { + list-style-type: disc; +} + +/* pagination controls */ +.pagination .next-page, +.pagination .prev-page { + height: 13px; + width: 13px; + display: inline-block; + background-repeat: no-repeat; + background-position: top left; +} +.pagination .next-page { + background-image: url("../images/nextpage.gif"); +} +.pagination .prev-page { + background-image: url("../images/prevpage.gif"); +} + +/* rules for right-to-left languages */ +.rtl .dashboard-item img, +.rtl #dashboard-locales-popup h2 img, +.rtl #offline-warning img { + float: right; + padding-right: 0; + padding-left: 10px; +} +.rtl .field-label-left { + float: right; + width: 11em; +} +.rtl .field-description { + float: right; + padding-right: 10px; +} +.rtl .field .subfield { + padding-right: 30px; + background: url("../images/subitem_rtl.gif") no-repeat 99% 2px; +} +.rtl .field-value { + float: right; +} +.rtl .log-pane .param-label { + float: right; + margin-left: 10px; +} +.rtl .log-pane .param-value { + float: right; +} +.rtl .field-textarea-value { + float: right; +} +.rtl input.submit-button-background { + padding: 8px 25px 9px 0; +} +.rtl input.login-button { + background: url("../images/buttons/login_rtl.png") top left no-repeat; +} +.rtl input.save-button { + background: url("../images/buttons/save_rtl.png") top left no-repeat; +} +.rtl input.search-button { + background: url("../images/buttons/search_rtl.png") top left no-repeat; +} +.rtl .about-page ul { + padding-left: 0; + padding-right: 2em; +} diff --git a/src/mibew/styles/pages/dark/css/default_ie.css b/src/mibew/styles/pages/dark/css/default_ie.css new file mode 100644 index 00000000..78f61d4d --- /dev/null +++ b/src/mibew/styles/pages/dark/css/default_ie.css @@ -0,0 +1,25 @@ +/* + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +.inline-block, +.dashboard-item, +.pagination .prev-page, +.pagination .next-page { + display: inline; + zoom: 1; +} diff --git a/src/mibew/styles/pages/dark/css/vex.css b/src/mibew/styles/pages/dark/css/vex.css new file mode 100644 index 00000000..42094180 --- /dev/null +++ b/src/mibew/styles/pages/dark/css/vex.css @@ -0,0 +1,42 @@ +/* + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +.vex.vex-theme-default .vex-content { + background-color: #a5a5a5; +} + +.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-primary { + background-color: #fdab31; +} + +.vex.vex-theme-default .vex-dialog-button.vex-dialog-button-secondary { + background-color: #c0c0c0; +} + +.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"], .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"] { + background-color: #c2c2c2; + box-shadow: inset 0 0 0 2px #b78007; + -webkit-box-shadow: inset 0 0 0 2px #b78007; + -moz-box-shadow: inset 0 0 0 2px #b78007; +} + +.vex.vex-theme-default .vex-dialog-form .vex-dialog-input textarea:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="date"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="datetime-local"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="email"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="month"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="number"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="password"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="search"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="tel"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="text"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="time"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="url"]:focus, .vex.vex-theme-default .vex-dialog-form .vex-dialog-input input[type="week"]:focus { + box-shadow: inset 0 0 0 2px #ffc107; + -webkit-box-shadow: inset 0 0 0 2px #ffc107; + -moz-box-shadow: inset 0 0 0 2px #ffc107; +} diff --git a/src/mibew/styles/pages/dark/images/ban.gif b/src/mibew/styles/pages/dark/images/ban.gif new file mode 100644 index 0000000000000000000000000000000000000000..daa6115a3e2b38028a286aa5706278458e1132f6 GIT binary patch literal 368 zcmZ?wbhEHb<Y(Y#SZc+vnSo&o6Vn!E=B;dO+jw}k0}(Ipc7FaHLP9%*g?EXG?GhK? zEiJuQQE|Vz`auJO!=|Q(&CHJ4*c`LBKjG?n%Fl0kWaQb<(ABA_=VD^kq^F;cja{3S zwZ5omLuu*doScmn6<6}}H&s_(Eh^evS9h(nbW20S*5>AIJv}?8OxZPk`rW?1J#**o zoj?D<v}t=6E!wwa$-bpa_b*?5VAZN8OP4-fvEte4)hAD$ym#fw#|sx2Fo5Du7Dg@x zdj=hl49HImY`q8O2duc%VzqJMr}iv{dFS1;BAGnG)<|cUN;b5~IIxvz-_Kz@yx{9@ zMU@m|sRa!Ib#ezz)vRV^;I`0aFqdbDOs#9Mh+<HZZt1LVOk>bfZZ|iX+>>g_pr%qa zySql4DV0ZHPK|+(sFMN%3+LQa14(uxXE7$hh$w9#R&{SJz5st=eQ#$?83`F<Z$}1e E0G5`C4gdfE literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/blank.html b/src/mibew/styles/pages/dark/images/blank.html new file mode 100644 index 00000000..62eedaaf --- /dev/null +++ b/src/mibew/styles/pages/dark/images/blank.html @@ -0,0 +1,4 @@ +<html><head> +</head><body> +</body></html> + diff --git a/src/mibew/styles/pages/dark/images/buttons/login.png b/src/mibew/styles/pages/dark/images/buttons/login.png new file mode 100644 index 0000000000000000000000000000000000000000..a20758f03e0c46df415e703b5d848dcf0374e03b GIT binary patch literal 2739 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 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/login_rtl.png b/src/mibew/styles/pages/dark/images/buttons/login_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..be15079b4540cebbfb07d46f93756753cb38d298 GIT binary patch literal 2752 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 GLSTYuOh(E8 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/plus.png b/src/mibew/styles/pages/dark/images/buttons/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..05870e990e97d0cf00af682eecdf3ded86781028 GIT binary patch literal 580 zcmV-K0=xZ*P)<h;3K|Lk000e1NJLTq000yK000yS1^@s6jfou%00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3ljhU3ljkVnw%H_000McNliru-V7HCC?g(o57qzx0ntfB zK~y-)wbU_g)Ib=;@xRx*aey3xiYB2=B!t8fxCJ!@5(hv+LJ8N&5s+4ND0>T1B!pe9 zXXZT$kG<n$9Z`UrX{?{#^EaR2A3qhq`H#0ib!_5NZUYX;0c(qBky<>Q5h)-??0}sX zw$G%rx_A?rXZP5oD>=|%Eq0r+fC>35v51|pjg+n=odByDKu!j3yJT*Wdu*GNg?m`+ zF(hGF0$svUO>YaVtNA<r#A<2kqnzpihUEY-1B#m42gw%oAs4UKe0?1`m_3=ou+0GO zui1S&tkDFgFy+_gKrzj}W-*8=4xpq-Yy|GGzGefS<7&~>q(htfh?F9pnWV@j{=)9C z+&F{96xZ>ZFQ?ZS56N2Y0Qh)%Mb%whpyJ)-A%`^sx~qJzrf5f?X!BWe6?TC=OxRu8 zrhdw&<qIl|We)0Rd^r6Mz~^r-*@RmxNJ=#I4wFX-%MD0u<IOP5lp-Pkun9M;+uPxr zxx_|8d1M1LGa}_F?*>pNvxdg~rcACAQiKd9r5&a&RF8Qyl<u#w_tI|S9q%unBSTXc zHTPfzm=;qT;2xT&SzwD{_45C0as&PX12`*&l2(#V3`@)5F^v7m&VUvF<M{*Gk(`6F Sr(EFx0000<MNUMnLSTY1Ao=$I literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/save.png b/src/mibew/styles/pages/dark/images/buttons/save.png new file mode 100644 index 0000000000000000000000000000000000000000..39033af047f3a748437315aa981a1e3abc2b6994 GIT binary patch literal 2804 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 GLSTY=Vreh{ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/save_rtl.png b/src/mibew/styles/pages/dark/images/buttons/save_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..261f2423533e85e5ccad87006acb06cea2255b38 GIT binary patch literal 2814 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 Qs{jB107*qoM6N<$f_cVUWdHyG literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/search.png b/src/mibew/styles/pages/dark/images/buttons/search.png new file mode 100644 index 0000000000000000000000000000000000000000..805c5fc3e25fce34bd4040a8921c1765ca11ba9e GIT binary patch literal 2885 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 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/buttons/search_rtl.png b/src/mibew/styles/pages/dark/images/buttons/search_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..8aacaac0c46077165a49731a20efa4caf8bf96b0 GIT binary patch literal 2898 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 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/blocked.png b/src/mibew/styles/pages/dark/images/dash/blocked.png new file mode 100644 index 0000000000000000000000000000000000000000..859ad91762c81c7795c3ed4ca450048412f4808f GIT binary patch literal 956 zcmV;t14I0YP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F8000AnNkl<ZSi{|y zO=w(I6vuyW=FOzG6O%X$iI@-CskkvNswfmuSAtYQ47kun+b*P3K^qrc)Ye51TZ^Cz zQNikL6kL>a<Htg)R;e+dLIR?;p-oyet&OqGWafR{b6m_!oXN~&X3WEa7Y^^^o_Fs5 z{@*$Od#|OcT+0^W8aKO<gE{u_zoIBQblm!XFd)Soi4A3%3g{o(QD7jnUm#KdK+sgc zfBeG&U<v_Izc~OU|F9WATVo(J0KqZ?Zc_mR6FLA>%*JK`nAQQTR_j3^bpe=<MyuW> zuTM18k8+J@$bes*(M)Efs;@WI6^;(9R_nnV57qoIz3VXk$FHneBkV@Co^!pL!KU8a z%gue=Yt{(6QLPW|JznuVacEnp8ez9u>yGD#su6apwSLbFWBmESGofjO9ZIdQK_l!& zwZ5u0v<e`oX24QaX5PB@Ki!uN?EcDH!GNh->j2a5?kh}`I1!DJc7Gz{?!t@27;ek( zWBfrnI8Pgwu`pHNt=246W$M*C8#3V2#g^Q+%wOD0r&+A%`(@omx_ZtsXZK-~Z8+%Q z^AnW}WZk$GWvSe!0+0~r_QezAfA2LLQi-T{B@docm_hdd8|Tl#LNI$VZTj=kYEAf% zXRSzC$RjJ0@H6ibwlYSH1pqu!<mg#;imStKGg*=yiD=^R7ns?f$&Efn?7l}?H@qM3 z)Aw+W9_T-Pp&S3kL3;VJjJYJ!#96AdNwZXyBa_=`(>&dp#S@pDc+BA=;;Ipsk(ccU zfKRYvw7>X1vD@xO=I4kcdr;3IJNg9v<Tn6W3r!x_G3OSS7t5`&?R}?gp^Ow3BbO!h zI3vP2HKoBZ;v(uHzT6_dAbFRo2e)G`OcO~K7|Omjg8ThR#23Vugz>fCvA~TKtf_6e zsDp@8xT;ezxQdVQP2Tth;~V1lKTfnay&T}Wp*`sOPD=g8H&<Fd8HqS5TC@V~D(b0< zkEkK@)Z*I`DAo-((Z1&;)OA=m_$1!cIClD0HVp4W0%d-^VgJ*YFRe)CTDEdOP<!U0 z1`)%hlyG{J%cfsvxq9>v?hhw%C&$T+pP+sFbL2lC!vw<DTXHRnlGW&NdVXtX={5zN z0yfui%>X+~4}GWp3g>VtMoadG7`;P`zAi@36yF&!Iw3}P7H!!-GzMnw>ZsS%0n|;n ef$y5j#lHb46G?c}OxbS$0000<MNUMnLSTZ=G}0LW literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/canned.png b/src/mibew/styles/pages/dark/images/dash/canned.png new file mode 100644 index 0000000000000000000000000000000000000000..8117c30c2a9e730e304d88a82b80a84f31afa027 GIT binary patch literal 472 zcmV;}0Vn>6P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80004>Nkl<ZSi|L) zOG*Pl5Qe`Af+BIHD-jh05y6cvyn`FPfp_p;f=6*Fu3Y;Hm}D}qu5vL^Ga;GobOo}o zp<y=N^>@|(^;9RS$|^^P6_2&wulEO~dl<jd;01PWl6V2#eb_iPoJEWoK*uw7s8N8% zpTZD-Qh)=TL4dQCK%zHUjt5kXB@oCSbx~590xTI&37|-P9;l2S(1o4a6rffU%EF{f z-2={e54eR%`4b?<3<RzBc|Z*wa9KbJ#Dih104<;z`7_Wipo$Y98Au7mz)w-D2V(94 z$v_IIGAPr43@lTC<n?qpR4L^B0E%=;0wjm-`FLFpGK8%o|9WY~FvJ5=*W2YF18{vP zKcMWx=7E2`%i1!aGhN!qkd*c5%ORxCP<}zygY64{@E=m5N}w`P?@?{K-V>ysaCqep z-XLY3fWhnR%UT7hq7GhWb?_psg`C|6)P0JSxdM*w{2lGveY11+2A@UB+@De4Ki^7< zNr07<&RW8{DFX&lx_gPIDK(a$jg;NXB%mt}d45HZa&p~j?&ROUj=uqF@L6brBVIND O0000<MNUMnLSTY9tk7Km literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/close.gif b/src/mibew/styles/pages/dark/images/dash/close.gif new file mode 100644 index 0000000000000000000000000000000000000000..177a90929db021663902147021e5adf57edd6441 GIT binary patch literal 340 zcmZ?wbhEHb<YC}pxXJ(mM=syK`s)9^FaMvs{q*G1w<q8JKl%0l_19mofBbn9q4%ae z>h1FGw<~+zEp7YI9Q?V~>r05*mk6~l@uuIsq<)2{|90d1?IZffgY!>a<iAkKe=&Oh znxg*AuKJ&<`#;U<f2QsKLf8LwLH|25{&&ay?@jtYDfR!<(*M&l{?E+#zohB^mf8RJ zEc$<B_5W9o|G#_j|I@qwUqAo<^ZWn*FJRXZAQXSHaB?x2FzA5Pf&9e4R_HKm!&IY% zLAnbkg=)?8@taoU8dU1CsIP0wqEd@R)7M;{xYK3MWfhU2qbZwablC>hILsEU*~(Ze zA|x%XY*1jJ+$6{?C#q-Un<gs9Z^A1jBPk*xDI>+}#K|WiCN3@}!N=*v$t$o<fQQ4& Mi*YOCW=95V0A7uf4FCWD literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/exit.png b/src/mibew/styles/pages/dark/images/dash/exit.png new file mode 100644 index 0000000000000000000000000000000000000000..4fa48182505672187defc18505b2a299d8eb1a14 GIT binary patch literal 287 zcmV+)0pR|LP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80002yNkl<ZSi|j? zQ4Yc&42FN^uD8U*J8WmtJD3<f-hlcbo52VfjJ7`5gzRA%eEg;ViXkFsMhE3k2j~I7 zU5|U_xC0mfn39hUr&}`xhVZ0cNC8!)pm8NoNjf+HiXeIb@H|$q38D)MoT)yL8Oiq_ z3ed<{>RBZg0B*lYLc9RHmoUAr5K;;xA%X&;f5Zqv10aG3De%w=Ed}BfI9ULrRfb5H zp^O4)BXazQFmJ`y`3rzidhr!twr&D2F?2y@QyI?IiSL{npsXdcZ2^kf^W_k#EdB=A lXGD*hi^)p-znp3VJOP5jz?EH4i}L^g002ovPDHLkV1l~oae@E< literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/group.png b/src/mibew/styles/pages/dark/images/dash/group.png new file mode 100644 index 0000000000000000000000000000000000000000..fe3ad6574b726dc9adec9fc5dac814ed29cf671b GIT binary patch literal 2351 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 OFASe6;v8qEuKOQN$huen literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/history.png b/src/mibew/styles/pages/dark/images/dash/history.png new file mode 100644 index 0000000000000000000000000000000000000000..c4ecccf54171469257a3e53fa76ea0847d70df42 GIT binary patch literal 1297 zcmV+s1@8KZP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F8000EoNkl<ZSi{Aa ze`u9u6vsdB{V{dT-F0&lo%xHKt7%ghWHOcMG6TcuM3f-h)RL@!1Q9JU6CsmI{UglG z@CR5pry>0zj2e@sgbhSRTdXOmYjZSpzwX`pzRz>|WAE;d-MhOxNj&iV<9*I~p7VXq z^PF>@*ANk&rg#8U)w0K(UkJ1Te-C$}d&Q3t0s!u^6G<niGjC4;RsoBEg$YdBfNJ10 zQ0*=|(Ul4jLqt$j%W#(+8^rON0PqR$R+y~M4<j?cmkq&AFhkJZjI!*0lXhS`aKv49 z%uMXr7a?F*mEuW2z&^8PtK&S)<9ilfEQXxf;2oD>MGak7q4_d$qYkA7pb;oDFs`}F zjt(G@6*+>wd#J-YtEwUmI0Te?)4cG?3dkt|!xM29Y69~CWEMsi%_x9r1sGG`#Pdfb zRzrONxG2a<H~M^{K)Ct{2oQmY92b#tZ)O&}u?xn&4u(6%hTp!0ny&#BJC1-S2WGsF zckXI{3=#RsJYBvh)-H~K1~k2u<sXU2sx*H#l<Wj=c32mKU?-+!f$mAHN5k0H@Rn=< zaEnM~Z)JHPqK_h=ML;ycQx&tc$nFtd56s&HMmmU23}vIVvzR1-uaLA?OVJ`eEpj|O z9vcCi(6d(rD1H|_W8y;_4a>w<+L=5Aa+fe_QXV4A={dD-dE60bEp+{`ZlTt)D1H1y z@XZ`NtPYg2v28V^T^KW0BLZ5>r*TIhB8W)2h`{v4L+=Q|RvJsGlx#s@#CV>0eljAG z*ZKYWIRoy1MvGpO=5;~VtmJ3vz_JyVtw2;t_K1c+QNORHF}*-*nF9Dn<m3WIOqvWP zwsHudQ?dsjD-YdQpbBFNhy(x_Ga)8Ll1a$237M92qf?uM*N?~T!n9RjU<9)J4ANs# zB$=3|O?S|w{>wGV+vT)eSh_#_J<{tYWZM3L5$O98<y5wzWny3ouBKbK3<ISSlQvui zjGr2_rWT3#i;6%S06h;K5-CXWhfF9=vH3@>*&VXbS{@CEfNlh!r3qfvPwx2>Y9(k| z01X2pa0_Vvr}@5roC<;~?a2^m{=Gj7>f<V*)^g6Y6x^?Oa{CG3=B2Q&7y?Q(O7u}B zn$X3wsaLn*pz|-9n%hvK8z!yYe<_xL(o9{uuU092{!Uv5+^PNFcW>8xhf*4)^tR|r z=>o8nQ(l$cW+|<1SD%4kOX?+dC|p0qpZD6al>YUF_504owd4M-mcL=&728(ZJGw)( zR(%0>N9x^fFx;!-dTlMXt=eo`RU~|nSW5NvbrA|S9@t|kb@J}N9o#;#6T0q%b;HKB zO0JweNw002mQt$=HXdjU>!Q;z($}3vW2*|lY<<vG{^;mu%$z?Drk8@tn_9Z{v=FTR zhO14j0A0Y!*_*!lB~i~XM1;Cs1r%*Q7^kfJ{Jjr=y}+n3nd#&e<U@W5WKK?8?e1Pe zU9IJEL$mW-;|5S#wE19ToPByxgusQJGnl{SP{Pez*t=mOumf1vKla?{QKXOb;vbz( zSIES)Z0<korq>GJ?iS!<;K=+fhZ5KJXaY4m@>#I;aMGyO?0F{_SPm=!<^mZ5Ol~>9 zX6JzF1zQiBNf(SJ@bmVU9=EvWIsb(1!<|^N`(}i|)0F=J-xRP0)fp@|00000NkvXX Hu0mjf<S}a& literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/information.png b/src/mibew/styles/pages/dark/images/dash/information.png new file mode 100644 index 0000000000000000000000000000000000000000..aa7b34c5e3c3ce15e22968d7726a93ddc82b9c1b GIT binary patch literal 611 zcmV-p0-XJcP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80006iNkl<ZSi|j? zL2DC16vuyc7f%)ng6RhQ9&HKg$({nGmVgy2f^DuI1V4m+fVK!?Ja{o6r2PVsB*&J1 z0!zUl#Y@|RHZ$`))ZI<m%+ADZ$i;zonVt9E|NY;8W@n~Egh`GYOn6KjKzMmV*O#_{ z2q<4ujt0;T9=@ysF#TZQ<5a8xU0(v&0yf4}>^4vh9(}PgkR%W0SD<hYf?~du`aAq+ zqC21IE37(H10oWM2*KPk6e|$S0w$jYvrw!M%q=4#h)84=p@@`41PUcUvh8>WU9X_) z6*%5;uP>Bh0A(uxBNs*(IV;o6TFP>>=4K*{()hMrkRC|J*;?UpBo80Uf!D`?U_?NS z)56j!#t6m;VQJONCy8%kApNM_>b|qc&6UM|xjS8qg@F`+F$uxr7-{?*44i&i%S<x; zxR!^3zYD|;Kx>ECGJK8k1(2cWnJ4c7`1$eK!2Io}ADq5!0Ajqil)lnW;~_$mzXjG- zc=$LO&<OzL45qFCP#&!LZbRvf-U1IF_ck0e1MU{YBJt?wuk+r>8qh8gCRKS<^ZQ(l z%z)Ak06nFh)wJKf7(V~zIRFc<-dTN<_)Y+4-{96=OAuG37Vu|BUH}?EnS))JUmv>o z{_E|3JBkl>V*m~7eLyMQRZ7!o??G!5P7d?`0#6R1wMnPFhf*4)bT><c@ojbEYil1` x`(wG5+W}l06!C&<f0ztQKJYO4|2Uo0_yd2}m|O3;tnB~*002ovPDHLkV1jNH67T>3 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/locale.png b/src/mibew/styles/pages/dark/images/dash/locale.png new file mode 100644 index 0000000000000000000000000000000000000000..ed80e220389f8a938c05eba813467bcac12f5660 GIT binary patch literal 470 zcmV;{0V)28P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80004<Nkl<ZSi|kt zJ!=$E6vpx2CNsD%!^R+@l90y0Dx#P|#7eO<g<`3Nji8l{pTG}bunCA_C!`bvi<DLt zq9_)@E+7iFl1MVUn;Dyn#U{~lUlN3Q;4qgv_uTX6oHKK0DtVsUPer{GuO7~;RjVc^ znkJfwIF4mm)@pY;Nt(9bZ)~PE(^Q(abvj*Ho{6GJy;jpq8j?m`qh8gB$82S}wY2+t z@0s~W+W^LP0ZVWjZ;<0N-i7fe+(&H~8Q2DJX?lDqiSji(!-XAuPGbQd&>A|x>#tik z*1MG=zO9gz>jh&i6ax51C3t}+IJ(Q4S-cEo`+F1isXMrdx4~9170PuL<AtAs0kd&A zSpPk+*D3)@fD)htC<^c$D|-eIRhWu@!WA6AF`NqH^H@ZCBmlDqD=wa#aO6-7%RPbG z;jp<EKvstiaN^t?jb;(wkC?;L0&CZCYZOiR19wBIzU^>-1CMbA&qsM2FJl@rIE%v} zLn{HI_*e0O`Vy>s5&b^^f9!$d*A@p3Fxf{29`syCs>*)<oR&@a3k6<W^Sbx)2><{9 M07*qoM6N<$g3j&By#N3J literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/lock.png b/src/mibew/styles/pages/dark/images/dash/lock.png new file mode 100644 index 0000000000000000000000000000000000000000..f7dd4b801555b93e66aacbccdb6073338710fd66 GIT binary patch literal 1075 zcmV-31kC%1P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F8000B}Nkl<ZSi{Aa zOK6=%6vuz_&3)umlUQ0)(<*AP8ZE7Du?iMlDuO6Qgsi$%+_@EtZgf@ZMsTGl=*m`9 zP$<-;R8mo_#e@cJ?2FrnM3db6J?8vf+}!q>`})!@a^Nh!Gc#v?b7sz&`J5!yQwpmM z;foi0jq$*<z<85w9ykt!t^*Hz*&CpXi~(-}Q^0VW_66Wm;1F>AmLt$XUIIP=hWzHO zFuWNGrFx4D(ij#h!{O?s*MWn;%fNSe97n4Sl2+?MNk@HO|B!!pA8dOR2Jfs-oK!)A z!BN=y2>yYcfQBS}BWY^2uUrvW)$vK-!{Xo&Ozee18LrL4`B~B=x#`45xbX=X*@Ay? zFPfe9ndu{71~|2*2$=q-AAl=y|89ti@W)TYbEiWbCx=b!Gf_72Sd!VH_}pxjv(w;9 zxQX4ED496Y>~F1G@Vum5#rr0qe;6ur)UH;llJ-k_L(-3u5=lQxdPmaU+T!9BF3-W> zDCK)5ko44wcHDwC5l};4aSj+Ahb(4!{wyZFY0?i(eVX-*Nv|zeE<(BtBU>8wsYai* z0!)^NN1;%JrE8cJO!~OP<PAM$(gOcp17BcZZ~&8btPQ}dq2u%o01m1PnA!CerHckL zJImtV^(-m(VP<2E_FP%eMB0z{pa4k?ld3suMwNIOLIy6vq|%xSk$3f=q#@K-FF^>H ziK6#CXHP?bEUAObdXDQ<3HL<K^`{rlQLLONP6Ne)AB&uu?gdbCetUJPM)}N1(h!K8 z8wGX%zvcqiFf#lCaFk-n6BWQY%0L-Pz@D|-bY+QhNH>tB)4+4UiQW;oW8=G&`aFd) z_&UHXiv%HsEH076Z|4KRZ3hQYR6hf)iBeC^yCz{^3>MErWu|`UR!@E-(ISA!d}qKi zkA=F!s7>xV2ivEhaCiNCU<Zsm1gAgm5QP91z=F>Qkfji<n4>mhw(SJJ8Pv4m;x^cL zFI=8&?H>Y!1kxmD7R1Z-A`*)20SaXxYjgbjAYN*<Tc|H8spY(mlNt`)C?qXXnSo8u zwAwHI4z=a>TaczGOK^Drk~C1T8a_(e1I+ybn@+%{{WonFzJ<SLJDdR{n2`meoDU!) zn8!zk>yUz_-;Tr6kFSKdMso7&E}1BTi4a0gfXwiM$hpn{aTP3G0Z53`&=tT;WM*v0 z2N3X5SAbAm!Z)(O5|XS3fJ6v6Z^JZX1Vvo|uKW`iyYM}1c>-p>BFVCz5isQhNHV(| zImVoGO;xxR<j>>BfMcDeZF%CEX+9S~7VJHTj@$&ejk^FLtw5l|`5q*u_d!+QRp;1s tyZ?R?r+~x2XYJbEdjFh8th1~;z<(iWrDIQ{zAFF#002ovPDHLkV1meq{DA-f literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/mail_templates.png b/src/mibew/styles/pages/dark/images/dash/mail_templates.png new file mode 100644 index 0000000000000000000000000000000000000000..d91efd94452e6c3b1c846053d6ac34acd9b0503b GIT binary patch literal 706 zcmV;z0zLhSP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80007sNkl<ZSi|j? z-)qxQ7>1wIq(5nr!EBRuLva(m5D^4X1pi+D50x=d#4$t^ymM>XIdE9Iv`ccl_>wiP z>DsZD-t4=~IlS-lz4>yID6KW?tO9GUTY$9#m;g#C^xt=yauZZ(wT^lO!yd|dt+dtx z02ssp=nF6#peic}Ck7qB#WBQzctT`eCec5FQ6H**p!Nt<ZONSvVDKHzPhfPGrhf?# zQnWw;zYoBzL1`;VVj1QEjE+RR-iD$jp6Lt#5!EJ?HUS0x9(XUH)Veu@4q(&){{vXt zU_FG<sd#1ppkRV|2kH?-7x3#Xv|mB_1`s-cVF!-)z`hIhUGWIdCZ7V?9D_2U*Z_M3 zI)tP5(0U0K@A?orfWU{&KG@q}?})ZC#VZ#;M>3p659|oyNa(%i0#R5HB2LWxk6>+q zy(^j+;*k#!rE>wQ03{ckNRl|-2k#kFTrlQ9L;(a{@IQmy24`2aRAH>IqZt611u!xY zF?2qG`xL6~>?Gm<&b!b(NX#FIM%wvAv(o_RbTG%I3@9fMaU@+epFq_Eqde955YBz* z9fFl~UUo%eS{I!I5KkwNNur!h;tRNsq2@s$fry7N@S*z^oUO6>bmv*G{96#terHvh zNfIIWhtLe6=F0M*3%ze(x4_wvy%c8a<<CHT1wabXfQ?WD{6p9r$kORgaN4l3BYUng zPrd#J2<HGK5ak9qp(JtgLoPclaPG_6JoD6R_Bk-8lpzssM9F{w&ON!NjKwsrK8RQx z!c5+nW_@w<r2wQ5MJIQ#t_`5I2LH_hGq9|0laTaxAd`TeAY1KcnO?#zxDi0!4D@>w oN90PYe=;7W+h4O=fOP}>1CtdU5Ys#IjsO4v07*qoM6N<$f;?|H$p8QV literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/operator.png b/src/mibew/styles/pages/dark/images/dash/operator.png new file mode 100644 index 0000000000000000000000000000000000000000..5ceea8ca793458fe700a60fc91f1ca114e5eb30c GIT binary patch literal 1999 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 TXY-q?e7{(gJPq+kvrGO4zXcec literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/plugins.png b/src/mibew/styles/pages/dark/images/dash/plugins.png new file mode 100644 index 0000000000000000000000000000000000000000..2e9cac2c78b47934b025f5f9c4d59e27c149926f GIT binary patch literal 1123 zcmV-p1f2VcP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F8000CkNkl<ZSi{Aa zTWDNW6o$VumrR;VH5Rc6SR;sdDSb&bLWK;1SWrW#5&EJiLW*x8FMV-3Z3a|OAH0AV z@I^%t>O%q|As7;^BGP(66mLbeMiO-rJ9RRdbIxANhjZrS%zdUbxM4HrKYPzw|6c1~ zYxY>G%KtfHO?SL$0W@Q|3?zA^{li3>?huv`Xfj6-mUbor!bpp@MlOed)l>toTTSEo z!tleW77^XTNCA;ejBX-Q@Nscj#7;hQC|{p|d2j4BV8VYtlOc5s;AHk-Ljv#aPjaDm zcO&PB*cfq_yZ-z%32^eEp_&?)2tTLDsGov{vqk5Kn2}~8oT*$)kx^V|G+T6zh&0wf z`t;dy$2&J>V&k*Nsv;n&!91l;Sz&yI=S0mitgHqt^&VABG7Ug<>69nf3jEDIlPHD* zi!TH4<;dd*4nxat0r2_VW2g$lpUi<})$RjQK|p*0s)9&~jF-nSR#A)^R9#$SJc4Q? zVJw2G;2J|D8m&V>>JSh`OODMpsS@@Gx+qQ{G$RhGZU_si>R~I=ZUi(qd61?MR#l8T zs5*fSqb@4$HWoqE_fg@er3n1C>UFSv{+=*aRaQ4HqB!jL*H<?#m8EWVqu>z`g^I=+ zl;PAHXR3QZNdtZ^OZf|9RmC{AC(3w-cj5*(5{c6H=)6@G0aFnH6Qlrsz2!InH~jEC zP=OT|hL57^a^JZ*06rKRMO1m<>v;g?4m^k|jD0u1U0u~0kct#YAh?_Qy)PBN_f8(h zs!Cr^3{?xG-ul%&2~-JiUr(p64MRj}Ujr7VtO~+dRlIhqf*4=*M!lSuuy5PLb*jKr z^lDRzfC$-KF903>o-p<Z2;zTww!GApaOrGD1hu3dfjSxxMMcZ@gt4jybsn5l)F+^2 zUDb%9^{U{BR~Ih33dC_d9FKeJ4R9n9W$?+5TCV~C^}AQlfx}oWG#c{->)CCDjp$6x z6b$a&Q%1n~-3^{^o&3zYlE264z2|~kQO!$fip-rWi3FQP8{2V%yTZ4>{L!+L+ix5w zvj^M;oXL>-xuynAoIXp6Ob0Lv94>8GThFn!p1Z7*T9(CN{~mg~I>WE0Go;ef;|I$x zB(~#XJMNV2xQFA{_7lJB2=T6N`g*%a#A7(FX?tGPy^BOVM%bS1xF?P~>3gd*P;^|1 zxTDdC#XomE4UtZEAKFK8_E{2%I2-?NwjF^)B8F>Bl|A78ZdfQIuvK)}!ubnepztxd z&LJXeU$9kl=uUJ@zdi6$`o{}vEjz#Y`s+xMnavmM(Mo&3#i|GtiZ%u87lG09?>xsf zy}LMnsQ|DJ%oMQsaQbM=1Ri^3zM;LUOKCQjr!fBhVm6mQlFjA6`f25Flg;H9v$=e7 pGB>r7&E?w)e=~cn|25m;@gHX!>t5t(S(X3*002ovPDHLkV1jhE2@L=M literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/profile.png b/src/mibew/styles/pages/dark/images/dash/profile.png new file mode 100644 index 0000000000000000000000000000000000000000..8a46c3f2920b037d2f710e530316eb9af8829b7f GIT binary patch literal 359 zcmV-t0hs=YP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80003lNkl<ZSi@ud z|NlS3KmsO)0S2QE7<B*(jPZAE00RR9!%PMShBO-6Ig5dTA)PsR14anY!*T|w9WyaP z;6D{DXK~48VBj;rl=yUk;m@AQFh``LI)Iu560ar$!~dUH#nJ77JK*2Hf7EjTHp_9? zgKz*fL*VaM+z!AU0#tOszwdZL0EYwqQZou(UtnMm*1{Bjdkw=LnuNfI18W%=7}k<l z5K%J($SMg3+yQ_84~`I!Nm+_j;gdPhSmnqO#~%eh?qko||Ndc>BTF0!Fv5z)dsA)c z8V5?*hZ#{q;Mbo&1DghZ{(?9_UtgV|ri&ME;#7C>;!W}#@as3k0jJMgB}yZ)>WFv1 zpTD!{)F6SiiclT!`|sa$q!tU!n`9WdV6<62>VOgJ006U2mT|PEwU__^002ovPDHLk FV1jwvmC*nI literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/settings.png b/src/mibew/styles/pages/dark/images/dash/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..f6a8f8c717da7c11d7a87e98d3d30c741ee42b85 GIT binary patch literal 858 zcmV-g1Eu_lP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80009aNkl<ZSi{Aa zQDl};7{`C>%lH^$jELApN{kW_rNlCpY3oZw7u^&o?Iy<3UD{QOL?d-mq*A6&X*Wx| zN|7R^5fLLI(s=88{@pyEo%eL!w{O$z`5f=}{LgdF`M>8p&vTx)O%f|9s{tDK_b+x_ z2e2W~zX6{XGePCR!vz9MkTGC1&_4s~fo!o8ty;q3Yk-pxwhlP5ls8!gp!BatXi%s< z!bgQV682+4l?bZ{b*E;}`9Q)Cdw}P_THre{2|NQ10euB8(*ryPt^f_71`Go8z;0kR zHK<Jz+1<gS#s8OliAl5{oD6p$w*{mBd2xKcN5IBp7+RjdByemQLjF}@9*BHk%Hz7L zV4``T?siS-0|tO<34z;%1k7>_GT;T!pRj)boB-w`e8R)?Dln87_bnnEg`pI-4oN#A z3`rA`h9%7<`fz;M?c%<Qq-u!e2$-zdHkj;&$vOfIlf5?CsR+Yly$S4;+lN@E$<BmW zo`9*>Ot;MR-b^(!5w-JX$^!kgnSPq-jXzHZeVN<GbBvkkrJ4G|BljK9s7Z%SBGEFF z>VaM}>5@rR*Q>7A0-L%?^NG2(n)KA9OJz<N%dC5TQ;I_L7;rC$luy8>0^9DgJP=EJ z;wmn>qRYln7KUF-Y}R>v&j*QWd%|uq_+RyLt=)zu8!_3wg!f{yc9Zo7`bCpXMK)88 zH}!rWN21*}*?7ta>fSCy#RkARf5V0+s=dGtKjU}6Ojzu=eJuBYv%rUcWx{bUIKngC z>{;%3fXze;H|46^hw=kB>d!<?7$gQi>#V@by9-h=|479%sl^uvG;##`N-m-y?|+iG zjQUF=WSd7tmL%{iPvCG16>-g5tJ38p>q!E?e>XyG>oR=;3=|Uh)yNUp2TU(RNp`W& z2cjLA_4;kv6H47fsN&JFr(~fi;100M3)0S1J@_|)ybm-<Z1F;(5oNoNUbx0`85r^Z z*WKv`fVV}9FGPV^sxOtE8=fbwCE|QM!ZNR*TKG0h6DX3Kp6Nm#xl)iDTE2`HGbRIe kM!Dj{QoXZnr9aRA0F|P=%2u%Xg8%>k07*qoM6N<$f*(zkf&c&j literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/statistics.png b/src/mibew/styles/pages/dark/images/dash/statistics.png new file mode 100644 index 0000000000000000000000000000000000000000..8c58a404c4fbdfc0177a1b053c4385ec2e5d0afd GIT binary patch literal 1301 zcmb7EZD`zN98Xs{O0`&>_%cCbrl{a0c`lc`OWJcyn#7*->h<oh{Ul41r@e4ZawgC1 zUZ{BO2br$O5a%|l4rCuxT<6PH1r?<ep*YmZ=G%uNq9`I*QL5;iKDpg>{V)m!lIMAn z|L^zvzvi*b@I5`<+qwyY=t&JJS-g_L-4()5zh3_xFE=1{4CUMjRM9<1NTxdu$&{^6 z!YtIy+C$5*pCCGqTKO?FmcCCkT$|Pd8@g(jFq$CxcT`KdQG|#bhm)3*q<(q(J&Lr< zBsI#X*>q_T7ObJV2Xpn|yiqS2f=TVTo9wTOn81ceC#&|9<BQcK)#MfNK6uSgWYYu{ zlhg&L#?l#b(Dfk6(`?vaV=Ng1G~lA~c>FFh!UC3IBMgXyL0se_BFmDki^6K2IU!~h zt)+!eNveQQNo1Hxr9xLY+Vv(GAP7Rh5s8GcMcA)7NUw$+e|wujfxh8cC1kk{88GVO zZW$#h?CFIN>{8a6EFgcK-0@q<!f9iwdWiuv%Xm$jAig##o!%T_+w0ao%EF7zUy|R? z*GiDdLf<WW2Cm}7_6<^-3k8O)7{s*h6(O#orce2>`5~Pa@5jztjy|QhM%jiAN-0UI zT((S6QaLReV-pE2At)*UQX<9*f(9Z$im=g$&?eXj#9Fk8u>#M_N=%N*ys819va%#` zvaCjxxC}TRC~a)Y@saKrFc1x})<rD0DOMcxppING@48d%Zpsu~<oX4-L=NV7a@2B6 zx8etd#>_ZS1$x$QXlkBolg*rq)+N-rh$;)wsG@3Ep9MgW<fx=60?P>+$Ez~c!kYg( zT@3bw33_Zp&$VCSMh>>?6NC@zGYB1AG7nGK_n#JC$J2Q}rAYbe*WVrJ>)rx-AKiNM zb*tB`t;k>6uY`}j+gO^t{nf?eizBPou01GAz01!Wnmab$$IZ;;66(vhOi!OY%s#zm zZsNq8_fjWPoaffw{N#;4KYNY)$hb2!F!T7(PW`r?%eqcKzjz1nBu)JF*380-9ic{{ zyY~q3dF-ZRVE>OJUF5;SJ1aoBddt9C-|7#9bOmuRl)15Sc<IXb%}1X2u*m<sf4Y(H z{9x~aUuEKY_P4HV$37vt&~a}l6Z@tE<%oS>4gA#AC^r6H9(iGA-mm>ToA3PiY^~?k zryf52!2HQ?zqmZbZ#y-A)tNsIEoILT&(fnO&Yn8|&+c=*yNIpl_N?q(Iqn8Os+2mc JEXccN{{!ZuxKRKA literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/styles.png b/src/mibew/styles/pages/dark/images/dash/styles.png new file mode 100644 index 0000000000000000000000000000000000000000..3bc3d45e0fdeb5fb7d164a367f2609559507e018 GIT binary patch literal 1642 zcmb7Edr;GM91r706{j-f5Z|HRrcT=?ebL5NOi4RX>!g$eov5J=B|@8+1e(@!V08>o zrf!_m$&kA_<;2IF&Y@`KeBykdqUapDIi@%t(4Cyj>2xUq`iJM8xl4Yp@8|RRzJ4j0 zHS@!P;lslL02r8*h*^XY48HxsgfHv$b_&BV&X~@nP+6QCX9xhbQ<(&q<is6>g~08e zMJEXz0EBKQt?694c?M#moKie!Bjug6fCd0vJWu1c9D)Ng2?y!Yi#zHLi9yn?7pJMr zkeN;(vdKg*L!@|TT5aAOo7OIlp91Q5L?Cby91il%To;S*dT}=|BFux^GBMa~!sY12 z&z(v)&jJ%Dh5%JkNMeK35U7TwutFIZ7dHu%Log(R<T6+;f#VQ`9DyLP=Mf8Pj6Dmn zV5S}|VWk&ma~zGxWNx=x>Q+c8#vy~XT5XU+E|&-v64vA5a9-kK$M!N{1Z!hRnj<L} z7-YmVsXR_E7Ce0(f|It8j%<$YBX_Yq$r92g<8fLBOCcH4Z4->I7iBiT9^rKMS+ksl zc;Wmj`B|%nCS(?ZrSce?P{pjVFG;;#C}`Ld17gOR973p~3D0GT?gO(K`ABe{bm6%e zWy^CCE-nevi}UhGJAxV&CZ!tEXiOR{W`to>qlUCv6D)^OIi!?pdkJ0!3R+UTfYlgP zuv%#}7*s|R3>zT>iYg2SqY{fVzzP+N^<tA;EQh;nL{Kz{C0}6C*J6<bhQK+Bu~JlS zZ#T`#rZ|etrf4uBMFpmjE<5FBgM}8Dg+MWaA@d2liJ_cecg_*=73vDP(V$f-F{4S) zhhSKX8kDFB(?SZZNue?t#64L18>dSqcp?k-*h@XvyCpPoaN2i+ghk&SBwRwt7~zIh zH7))Z0NzST!cZ%J_1@*ioTddaqCm%nP39k-uDhQ;dsGcqSL_p^*cH5Cb%w6AU|E%8 zSfvg*aQ}mO2l>F5D-nN-R*sJPrZ{(-tC>uz+kgCh^VbLb!>)n%BWsrI7RU4}FaN5s z%X7VR$>Ydr6T&=e3Z_i;EFJmDjuwAW;+&=OHHC=BxAhU;(7GtGWPAu)vAJw*RxDC* zmtI-Fd-#}<?`#qAHO-wXZw#*&#aCDCuT8ylWI#mWw`EPY9Fhv)LSp6CxMm++Tf2A8 z`WvI`kKJr}yJ1LMY(|=oj`=vxKPvEhN%F&^z^zjBpOi-a(8i1NTl4#$Q^%f-s*0~@ zKUxPY&AI7pd7505`b*fpJu$^@33f2QYG_N#qwoihr5j44?`2hJ&i1PwlF<HiVZo@| zqWC+JVI|L!3!y+|=<-jyqQDtXehN8!JT!Eq==zV5-oTU8@%wg1q)t#ixec8BtEs5c zI7uOjopM~gR#iWz>)45Q%Z1DHE+lI!vL9~VHUpjZxvw~(Dl6>IwxPfM{P@~wT}R>M zw$(+liLDN>Vb^~*f8F)jf=f+)XWNLvgY?BsU#{Vzmq%PF)5m-_xH_s7@{@CK>FDsz z?N`gok@r?CjBIXK?^(68s=#~3|L*y7jp#Xb?H`qczAwFWVmj51S;paOS5*7?J*$Rf zUiD>oO`T=4uk#KOGqFRxb5l7n_w+jJ7bEWatc$1Knb_5`ck&qx-<lCpZ96}%aej34 zsl^XYQ8m*i4~TR&ddAnb4er0eH@k~I(%yAXea&%VQSR7hgSRXj6qsHZ0;~_@A0{_W R*ctr$CmCmAI}8ha{{uxbbU6S3 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/translations.png b/src/mibew/styles/pages/dark/images/dash/translations.png new file mode 100644 index 0000000000000000000000000000000000000000..7ff7957706b0b5f573a3fa2deee55344dfae0f48 GIT binary patch literal 733 zcmV<30wVp1P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80007{Nkl<ZSi{9u zOKTHR6#gcWgj9+f7u7-wjZN$$#2B+Ebmz{E;13W)NPTqSW8*&%+_)(S?%W8)T6E*i zwF_%$vA$|6)><nlqC~Ap=AO?*GwGdIGLr;y!Xb0dIro0wx#!HiV~|8QWgh^1dUCZB zYX!~Z?!c+rQ`R8Tp+x?Mh%M@aNQb}^ZIuA6_d#3WbpkEow+&t|0mJ{w1QR~KIfA_e z;{@+`MYsu&VYEy#=HpW&&yoC1vO@9-$sf)*j}io~K^Z`-fxiM^r@`2-2kZorr)OM& z>yM{x;K{-S)}KFfh9v;p0&u-Hz5$@WX%7f#Q>VOtbh#{K%<?Dm1wc$B^99#jA+HI! zE#!ufH$D6wJs`BHF01pGObTO`Z#b6+l&b4+F7KL8VIPG99(LFIo=s@UyN4G|l2OZ^ z%4Gqmx-^x`hHB(MC3rJ;!4xuT+0xlDKvjJ;ogMQkhnE^nci{DdDO=_vnRG*NOGh&4 zX4xB_uc3(OHWNV98jO!00nAF^lWlZ#2rDaVUM?fZYiI+{932Fzl~70P%eNbW!L=Qr z>pst>4u{Gd0G3z3gaX%gz*Yhr8#)M7|Ahiy`tUt8xV{5X-MF~+4aWx$1O{K+_|+2l z9syF-o=wZK@bM?|{rj6P@M7yv%i!8cD4>X<NWAt8ieO>0gsM`$y0BS-9#0XRID5}< z+MMdz0aGdc_KMeTz1<8qOUNARad-Q+`!jIj{C&f*Ua%4<`vez>rOzdd_3e>(_0<hN zS)8qJy9z-dVlmcrvN&5Ym5S@O<*gDb=I*~oyshR=zf*0^LK07B&iD~b1o-4O5K>M~ z&o?ZAE;|5v8juJL?%e~9&J0MRZE(NK$d5!XfKn&H>pjp-iJ;5UbprnZsumJfu$l1| P00000NkvXXu0mjfu1rxE literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/visitors.png b/src/mibew/styles/pages/dark/images/dash/visitors.png new file mode 100644 index 0000000000000000000000000000000000000000..479a3df5b1cc6295b2b3f956f519b1a8bdc4cb38 GIT binary patch literal 877 zcmV-z1CsoSP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80009tNkl<ZSi|L) zUuaZE6o<dfZVYUqg_uedtXO?m|3s32c}fig0)j$=eN%*rB@(G52#O*tKKRfVqmiIB zL=XegmTD!BT7+n5p@I#rRiRj`L853@VoXwU=bY1r-R!RM-e}!j6gn_4_wJqfefKx# zoV^n=Gu~w@;vKih^gzxv6W-LD9G~A>4;%p2=RxB#&>7y;+m~9K@Mjm&KZd5aK+ZJ- zgn_S9;^92M>?vReAlU$E2Mhx^1ndKd#Oh%AMwqkY?IqnX3|+?kei2|hkO21j#()_s z&DdiGk+mCP<xZIM5nylMBbBgpGm-kun1LC)&8P|hurJLlTwFF67B>T$zrLW6;%F2z z3!7Q1FMyggs2MD+212>L`71pH3zwm0s9A$=7MNKj0HqaRn*V$&DI*o|mA(L~mW=wM zaLT$oHxpEinc0=?Kx&``0#N*_ZX_!PvH+|g06HsxTG}d1@(&=A(RjZdkODcNuXR8( zTR<TITt*|nfuyQ>g?2!K03HG5j6N<*8vZjr4e%(S6l=elGIcke$%H)i@rU<OQ`EHI z7eLfbh?)#1Ucld%@(b|rDo>wJB5ERPC;S~yi>q3Ps&Vh<3vjIm+>0E=J-GcNLl=KQ z)ljugRf`A2fCB6X%7N{72M1wrka^J(q9w&IZD(n$8diJ?MUl+S8{aYh=O5|IDJLYx zCbOrVPOa~s1)d18mZJiEai_bz4`>4#N5&=?8JjU{pr48x*QjXP0`pfT?^VVa`t_Hf zZ^Euv%h8_z?sT^Y060lUf2^gW59sq-Eq=VM2{=BS7+XI4{kK%bmcY7J_;5Azq9u$x zpBM!eR_*MZoRNoFIzBPrIZ2k`*Yv8^BbPiUYdk04cuuCS-~5YvXTE~R*IBgeV>~Ax zcupFF<_7{edGp+_-F0lTcGt1}PPE2}4m=s1;J33qJR7=?6UB*c2>ec+p_2vh->Y9; zd)KYH_O4Hy$TlaExc%S>P6Q`13&6`d>2txAgR66`b>+Ze;Pce=8X)fX;JSl1eNIN2 zbNNjG+foORlfZ@`fZ6|!b8iDc4bbo=4~PEur{jMCF}{3bXbj$V00000NkvXXu0mjf D^y88| literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/warning.png b/src/mibew/styles/pages/dark/images/dash/warning.png new file mode 100644 index 0000000000000000000000000000000000000000..24a0004d6c00cc725fceb5573d187937715a5eee GIT binary patch literal 1681 zcmb7FdrT8|94`+M9gJ?Eh`Qx=OfgEYcfGdsDuuMYs}?9iVZgvg&-Q==dROnRv=o%d zG?OKBf*b0bn<g+HjBV(Gb7bOU0ok15RAvw}aV)weC{8fZ>DU#4`G+ytC3nBq_w)ID zU%y;!M*6bwnR91KB$9CRa@;D8fd35*5x>08HzE!(0+A<Vv4w(%<S2>W!LFqMvy&{M ztQ6^}Sl3M@N+dxobatMQXGzoAStmsLZ6L4HC88yg#AL6Fw3ku>u$C&K869}1y#oYj zhYrkDSzwFHNEOq|eH@kLOV76ZO6`~fOilt4y;_mLNeLw2b(S%_)~f@@d9~u)zbyxW zaTB3b2R?Bs&yoQcS&jl!5G=F9Y8X%>5P~Wb5)$G81&qLQSRqFgG9*EZDzq>ROgx~d z#yJYLR@^k9C9ZT}u^_m#a=FLjfjlV0az%0k!!SRGLLn0^WPAl9kX{+X$4)Zf6mREf zmq4=&;AbS)vTi{Kik?0R!RfNnMa2R?Mb7XO$r95h_mVC-0>N@_+{Pc@B+6oWKEmmo zvgQRV^`G<4<ma<1T$J2O@vNJ(i&ZR)eM;*2LVm-E7_=6WE2YFLn#eMq8b7dDv@1mC zX@)GrS-aawF@hP_fo?bL(CP`)q*TKijY)&y1cK-_Y8b;zhyu|oV5I_^BzPJqYC#SW ziz#3eu11Xp6=6aU0ygONsKG!e@dN{cst|k<Yi4+XWbBk*)Q_e8ScEVlC=5Rrt2J^I zDX?5N%a%=cQ${f>uzWG=0*qNIAeUwwtcUj(T4WXj#VL+1ryM4Zbpqo#*V4~WM-_wt zQz~)7B<jNmg6R!Py$Q!)6f>bJ!T?TS9sfIBa?umHzsH{HxydcDk^R%D8ze5K?jXg8 zCF8^!MzrqilSl%6W?Y}`?Hk;&qBv3?)!E@pQCi1{{7qY=i-H>s>3{CCO2K_Zgip#1 zgP{hpNg5hDYD;M(G9zwSh5=nv?Uv~gx~SmM9&7%#ns;wxe*N76qG{;{`sn3dd#>#< z%P`Gws^SRB9zR=&-s^qIu=m5Ja2Yhz{AtAetLvsI(tO=uOzbZ$@gGN5&lvtZt~$-S zL1!u1@VJDBq@9gt){hme&w1@yXWQ!mpCC~8ro`0xL#-_fgB#7*XXi1_(Hy+;F7f?n zd+V&g!;YSeVmaoFvn^;?Y-TP!i0rx(*pzVMpxKt2K9rpDa-CY11FT4~790;7Ss7UF z37VcRiR-$IVBFm`$85@;hCj9^@I|j)={>l0-ojUQyY+QZfkU-JC*Ql)VC}jcN1@TT zma3}qE+*a6?91r6ItScUXx}^d_nISB;FSYMFATJw>YHXx{%dqB?N$yT%!0O^Zi8Ii zCo=+?p<zc({HmCNnoc^mwm;_Ar0(sN9dF%9&0I>qHL~m5y@sFb-Z|6%O}uSj##fJ2 zx8e4tf{pjX14<Vd`>&){9e?qW=7qtB8=E3dG*{MN*mml4&BpM=utL1Lp|P#}+}sZ~ z7oE828Emoqler*ra6c4Mvy7RuN+&h)(zoS6KW$rcZp8G{Lu|7;q@*=^%lnH~2bGuK zoxY?}A$=UXF#4nU_8(@>2Z`Ux3cFTgq4V757q_l^BOqvY$n~>H^}(8pk?O#?QI~+U zH=7P`_gt@f5L%}Tx%oKN*2e4(i^~qk>Sd!)w+8Kv{Bp<slKdosDQLX8dq5R)(RupE z!LW+-*|PN|rxK5ux7Ppe4mejm#`SRl9n<DW?gJh9%}WmL^#3HxL^}S3!B+Dx!s}tt literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/dash/wizard.png b/src/mibew/styles/pages/dark/images/dash/wizard.png new file mode 100644 index 0000000000000000000000000000000000000000..d9e5b6b82dd3f7dfd5d28931ef54faf36d84aef7 GIT binary patch literal 1089 zcmV-H1it%;P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F8000CCNkl<ZSi|j? zUuaxK6vlsZ?<Q{6)QzQy!AeN54<fBbrNM%K>Vw!)tOyl~;Dav#3z8@C57Jbs2q{%c z1tA3DgRKOii(n-XPy(&3Lh(V`q>uy>8ncqPakEJ`yL;yxA2J&^$=z&Xt$lIeaOa*G z&iBokGvB>qRFyl~JnnG&pFm{ATgOBHcKoeCYK`~Qa5w?6vRQz)fKx!e%=nMM_rMNd z064Ka?JEfsHbtNf=mO%v`yt~#kOkgw@1KS3`w9X<ep3WqEy+UCWnmIH@BBSLYsvgB z-~y0}lp|pCwi4)e;3V)Y(CB>Cz-iYXC?U}4-p>GMfqq~OfGHKC^q~hfQdHjpdqT!0 zfyaR9RsPeS(azd;ULQ8iyX%z*<5RwA-nnn>F_b_mSxN%gD}i)}jCD&O)2sav$-P<g zcKf7h-d&IJvu0+P=8<j<)d8`(5zC9!fe`=mt9`x{h`x6u8)<2cVtkmsUc=Buy*hRy zT!_@_diIoBZFK!w_e`kO{c5#Ot?p8*zFNhzmMxOup3ZjlTOKch!_Y;pj@>ZHRAziV z9f-T4>IV{T=wqM*I0AeQTmlXQeQvzJ7^8+9cay>E=~1@a4-%AulT2m)sES0ILkXxT zu2K&HuK{VNWG!w=);+H~ThVG+AgWosFM5@RHZVT?HdqSI-pj+=Mh@;Nr-TYH@6_vn z%SOCpN;d3h7@$_?snQ(&m%ZODfmcI*28>TKnIxIY@braYV}ZJ@4~7#^yIh=ujzF07 zUI9k_4q&O3c|0uDUlmvGz~@FGHAZ7YoVqiYOi|{3t$B(2LW@uo6|Gm%4%c68PpIfG zDtZu6Vs?SrAPr)PhJpWn4JL=Ud9vS#fCwx~H9rJR;io`EeG&ayM7N75Wh^hE5BoNU zALOtWVtu{&a^RWc31cl-3kB;jPYrVmS;`e*qx*<lajsoXYKxWrk<)X0DIf~*bG<id zXsZeXPk)dwrSTWM7$T6$EQCw(#FO!`J@0b;{l()}t$CudNL`}0Kto$31U&oau|#Zn zVHmPrjKKH+G+j=Y5h7h<pQ!S)Dk)V4P^H@DxGPwsF43!Hz;m-l6EPJ~S&Fk@VifR~ z<Cgy;TH7q}3eXf$Yh!jPb@zT#zTjq$CZeSQvR)0=t-SItS$Lc9kcp^di{P>j_=-Ib zya)wTwQg`z>0WT+*oU;o62x~l!y_-2T{%;u#?H-BC=>{SfEj7!tUSkzL{PUEpB{gA z^BH&{HeLxl$JA)F2%ZjF7?fxDNw%RP%ixOqvkb`j!+4MGE5Gss=ge)r7px0DHF`_n z8@rfP*z?;@U>)#Wq3S;%ke@MO;Hkn627{MxnSi;|*Ym#saVirvqNC{#00000NkvXX Hu0mjf4j%%- literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/favicon.ico b/src/mibew/styles/pages/dark/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#8R<X;Xj(2FTR*K(6HO4v z1qz<ow{T{e0fv+TrXf%@7>a=^aVjp=$0ZB&*VF=aWP5?!871hRg)3Om6?pgB31E0a zM1Wqtd;KIZ1mFtL80)7be*5`<QjQ{AJ&?P)KLSk|oV%hs=>E;KaPy}XYCX7herdZm lTmc#b=r3UWA`1e!c)|f$B`)^=?+gt8p966_{`8GY763#9J8=L2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/footer.gif b/src/mibew/styles/pages/dark/images/footer.gif new file mode 100644 index 0000000000000000000000000000000000000000..ca50d62def7181f711cc579abaa2f1c6e726c82f GIT binary patch literal 160 zcmZ?wbhEHbWMt4_Xc1%BvSrKGty{Nk+qQlC_8mKR?A*C?*REZ=ckkY_XV2cfd-v_z zw}1cs0|yQqJb3WXp+kocA3k#A$kC%mj~zR9{P^(`Cr+F^d6EGyQ2fcl$i*PfpaW6` pvXg;THX$_dNs3nx%i8|OR=$UIx+kfeD3oAz<Y{UU5MW}k1^{c|Kn?%^ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/formline.gif b/src/mibew/styles/pages/dark/images/formline.gif new file mode 100644 index 0000000000000000000000000000000000000000..693be0a96d821886cc61c7b6dc547a2a4f57bcbd GIT binary patch literal 35 mcmZ?wbhEHbWMp7sXkcRK>gqal=#UNr5P(D&n3!C+7_0%376#4$ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/free.gif b/src/mibew/styles/pages/dark/images/free.gif new file mode 100644 index 0000000000000000000000000000000000000000..1fb63de6c2456e329af51f28ec09da35d1eddcf5 GIT binary patch literal 49 zcmZ?wbhEHbWMp7un8?8J|Nnmm28II%4gg8TpDc_F3``6<KsHbo#AXU%WUvMRE941W literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/graydot.gif b/src/mibew/styles/pages/dark/images/graydot.gif new file mode 100644 index 0000000000000000000000000000000000000000..51c0ef82bdabb2e3782d829261ae865fd63670a5 GIT binary patch literal 43 tcmZ?wbhEHbWMW`sXkcLY|NsBPhYuBhvM@3LfewfO$v7}E@o+I%0{{+k39kSE literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/header.gif b/src/mibew/styles/pages/dark/images/header.gif new file mode 100644 index 0000000000000000000000000000000000000000..d7a66c543848d6e73be795d4e4207fa941564ed8 GIT binary patch literal 160 zcmZ?wbhEHbWMt4_Xc1%BvSrKGty{Nk+qQlC_8mKR?A*C?*REZ=ckkY_XV2cfd-v_z zw}1cs0|yQqJb3WXp+kocA3k#A$kC%mj~zR9{P^(`Cr+F^d6EGyQ2fcl$i*PfpaW6` pvXg;TRzaZWkb^*Lp^V2QjnjurdXugBm$*+d`8y?HsSp!`H2_=>K)V0{ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/icon_err.gif b/src/mibew/styles/pages/dark/images/icon_err.gif new file mode 100644 index 0000000000000000000000000000000000000000..e2fbb6e8ab595a393a0cb98423fc808c4a5da912 GIT binary patch literal 671 zcmV;Q0$}||Nk%w1VJHA70Hr<vvj70I0RglF1GNSQwFd{b3JSLl4!IK(xfK<<78be~ z7`ho5nI$E>9UZ+PA-y9bz9b~RB_+QnC!8`ezbGibDJh;iJHjzB!ZS0&H8sRJIif~J zq)SW3Lqo_$M#@Y~r&w6aPfw^?TFX&U%v4m(SXirNWzSt*t!r!1W@fK(aj<i9v3GaW zaB#AFd$N3d)pByQfPl4zhPRH6xQ~z9hK9M6l)IXmzNDnNrl!-z#>vUa%gV~`#>M~u z00000A^8LW3IIO<EC2ui04M+`000L5z@KnP9PU&tPs9)~L_94Ou1Kv`S*HYG%k2UZ zCzf?gbcMWVbjU@n?qG$qyjy_n+QZpr&hLI^crqGk88tRLh=?{d8EG0aWHW<aBQ%MZ zmoy`28h~zlT@Nvsq?a)cULSW<FkU4&rLj9V3KU*2R4#E`C9<(E1OW#ZbZkUtTo16m zm?8ns0Tm5hAw(=*qs*5n(9jZIVnQcfBiff8-QCDrCqg?~T$biH59!b*J6#EPDqR`o zJAl~>fItVLMqE_<Xwe0PIcEbg@JIxrON$>Ky7bV-Z6FC!T|E4V&_x@%fgDP8iSWZf zNm=v;20#(3i-8{jUX~JQ4}ra}E&*EVY$j9UPcAn}aw%m&=0|2LF?Kn0PG(ANAs04G z6muX=Z56p(?8oI_z+gQA?m)Oj;kzz0AlfquP~WNvT^2Z1yJHiVc0#TJwRaU@3~)pk zbP<ql1>YSHs1?!GWxz9^k4qGzvH=Z*iF`G8!9`^UsASp9#fa=@6%|Qn%4zf4r4t!J zgdCCr!L~M}HhTI9|AWWfhF!wF)Nx(>hneKmj5RNU1>PJm;ig+Tl4MDfCsCMdA3r__ F06Ul@4}Aat literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/li.gif b/src/mibew/styles/pages/dark/images/li.gif new file mode 100644 index 0000000000000000000000000000000000000000..e5867ba17be6a5c691da7d1b6d7fa3e6dbde20b8 GIT binary patch literal 60 zcmZ?wbhEHb<Y(YwXkcWR7A?oXz@Ye(g^`PakwFK@W&p`BFbVhcuRPuRK&U5Oi(%u& MKJ)Vp9*hju09+{z`v3p{ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/loginbg.gif b/src/mibew/styles/pages/dark/images/loginbg.gif new file mode 100644 index 0000000000000000000000000000000000000000..2653c63500441fb908406b8a1dfb2aa0140edde1 GIT binary patch literal 60 zcmZ?wbhEHbWMN=oIK;}ZX3d(78#nITw{QRc{Ra*lV1NM~5Cf!!ftk}oK}e^WQ7Mdx G!5RQZh7V-` literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/logincrnlb.gif b/src/mibew/styles/pages/dark/images/logincrnlb.gif new file mode 100644 index 0000000000000000000000000000000000000000..4ae10f190af8a2d6d3e290c5325d431ee03e0863 GIT binary patch literal 140 zcmZ?wbhEHb6krfwc+AbPX3d(td-v|!w{QRc{f7=6I(+!>kt0Wr9zA;O*s&8QPMkb> zk^vRyfVd#N3@nZxI25$DmUb1J{&T+8JM+oh#V&PHn-)z~Jhvw3fX)I5{go;$GQJBP iM5-hgDG40$ow7~YmpRrf{OY1D(|jekZhNvYSOWlJS2zv; literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/logincrnlt.gif b/src/mibew/styles/pages/dark/images/logincrnlt.gif new file mode 100644 index 0000000000000000000000000000000000000000..0e9d792531ec7f2b04769dc2e4d9905a44d179e9 GIT binary patch literal 191 zcmZ?wbhEHb6krfwXc1&svu4f4jT<*@+O%cMmaSX2?%ut7&z?Q|_U+rhfB%642M!)Q zc<9if!-o$aJ9g~&@#7~>oH%*%Bm*fx2c#He7Xzz{f=b_#!vfutCM>R$Il#Sng5vS~ zGeYI{6By-v%%nI9jXfUTXttTLQ@llRE#K0xCEE($X7P9De^YHJ6MUR==(JDA&2|9> FYXEs-M;!nF literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/logincrnrb.gif b/src/mibew/styles/pages/dark/images/logincrnrb.gif new file mode 100644 index 0000000000000000000000000000000000000000..33d0ea0a6b5542264820bc24df35578b78d47eca GIT binary patch literal 131 zcmZ?wbhEHb6krfwc+APLX3d)2yLa!~x9`A#1BVYEK62#9(W6I?9XodN<Vgl>KnElU z(#ybN5x}94zEmiAcK-jE7mc&c+SDwkshe#{UoeU7mJo-x5Ia*k3-h6LX0G<5o&^?H RG^>4-mJ3+82?{b;0{}P_D)RsU literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/logincrnrt.gif b/src/mibew/styles/pages/dark/images/logincrnrt.gif new file mode 100644 index 0000000000000000000000000000000000000000..eeca80d03de21ffbc73adabde3238c166f35c3bb GIT binary patch literal 134 zcmZ?wbhEHb6krfwc+A7FX3d(NJ9qBhy?fujeFqL4IC${j;lqcI9656I=+R@xj-5Dh z;^fJb3`jr+#0KeQV6mRCq-9Bz#q)!V=8TJSo3Ga%jVQ`amzi~QTbsi<qYp{x{>v@G e&TTls+0V>kbb|9okF7?qR&3Dxur+2(4AubSo;bJw literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/logo.png b/src/mibew/styles/pages/dark/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..88ca231024bdaeea9df565adfa40694e9b69c57c GIT binary patch literal 1287 zcmV+i1^D`jP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800006VoOIv0RI60 z0RN!9r;`8x010qNS#tmY3ljhU3ljkVnw%H_000McNliru-3lHLEfB85km>*c02y>e zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00eJIL_t(o!^M}|Z&Xzj#((=< zrtP%M6zV`H2qL9E03t7t7>JRGq>%)l#Hd8xG{i_SCj0>!UPz22zG#S1K>{Wk5)cv+ zK%=09Yod_`qzDB%+}ciOdYS1tdo3SkS{XVs+-zCNdYHYxz4te3t^KWi%+7<y=I4dI z*?c$)3=?BYz3+BqZl_jx1A*+>dHTvzzUwlP7Fe5nZ9(&XuXiYT+IJm{nb7m`UB{&J zI@JrUqN+@^sVbt17m7tyt7d;`YctL9C_{l|&zVcOPI+{^F2aiWGcdrR_G@(a=c+Nl zisFT$prB}la)DPC%w%>VPA&-f;baGnDPJ$M6O(v-aSH~+)t)RzvqRO+CltX8tW-RF z1ZbrYE-Qs}RU|8dh=Ktt_t+N*tl))K3N@gn3bd4vN_kvKEmg#gq6tR`h$<D*T2ddz zfK-bB22;FFYPd&a3k1yjTYuEQQhlQf%h|Ms8tQxpD@td2s3JDv8m7l;!9XgLCl^Xp z0`rn_yikNf<SMhhp3RL}T+Z^La<OOdKCdAJq7-xhW#VM`zZ$UC7H$Fhc*H2MT1bH? zRcm0plrR*zGX+|bp8}!(FDfG7IHi|6w1Q)cMR=#TBw|D(-k9-+^;u8EnKym%nDI~) zCoHO)2%~=ac81T_E+e$1;}7nN?>c<?#!}9wdQ0ZCsI1P2WGXW11A*nxpZ~D!o#oW{ zPRZQ;x*)`(5x!g3#_r?i7zpfL7%fD=s*VYbYYbl<Jx6`SWB2-%JUOKSRr5e$UpOPd z&UI}B*7Egl=W)&0^`e4l+q6T|gTrG~Kmp%1e6jXLl2hVzc4yhV?<8ltdWg7giF7Lk zi5?DxCC?<;uwo&JSd^~rKHmN2X9BBb_iwC=U{-wmt)_E9MHvdhkY%mSe7JHEO|g2e z_4aeMCrej)kna8*#=z8Alw>^0%%({sVo`cB1AMaY1V8<K9pCdRwz$SxAG7?U?V8C2 zRC|-DLVkFdB`s5Veom4((;7)OHV})}pg?voPb%Hdg&S#pzmVc+$4zP?k?PMpRbsV1 zo)lHkR8c|$)cPK$uJm%EvzNeH!q6ht0^qnVp6B8hQ&a1Eg<h;weGgbsJW*8zqxaiE z3J*$r*8%)7+loF=KTywzbf{{}qjn=xWuiiG)ea4$yqjl_zuGis!Qq;Q*fir9Tnvt5 za2<nditZX51Fms!9D`#DzejQ`0v)%~^ydOKcQutd-_@pus0l?8DXM@dLw!Bn9f!Vu zZv^ZBlOG`p(KVa4em3AwT6O7mwuD5i)~EBp_BSscJ9waY&WPoJe)o==7y<?#()<26 zym!~^xzF92F+KTGCLel%wSW?e=#+S@z4O#B`|nya%s9P5Ccm|L+mRbN=5`O{Ra8xa z!Cwz<-ta;>urm$>dUtGm``O@1`})>I%%G}%eSC4HKRaGuq<Z=Ek>g%X-L6?Jt*aw- x(fGCYGhgO2y%`>Zxi4?rvSrbl58BF2{tGW-4^5%E>(c-L002ovPDHLkV1gwiR0se7 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/nextpage.gif b/src/mibew/styles/pages/dark/images/nextpage.gif new file mode 100644 index 0000000000000000000000000000000000000000..dd69c049a1a09be3a9f4f711200ea4a09a862087 GIT binary patch literal 207 zcmZ?wbhEHb<YnMxXpvwjH)QB_Vdx7GstIwOAI>o|R&GtQKx<aqyd1abO_?XFrM5Tu ztnbM`J}G$X+_LQpYcDKKJGUn1(%R;;o4c=XY<;~w`|$o<Cr_SazyWkX;vl;iSVIz+ zV^cEYyj4vvN16$J)$x0xcj1&od(!j{cjZP436_>a`4<y(#M+u17z8x*INS`Y-f&fL nKTed=2&uJsKQUp$1h$Ks3mzD+6crV}`m0z{Bu`IOk--`OudPSJ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/opaway.gif b/src/mibew/styles/pages/dark/images/opaway.gif new file mode 100644 index 0000000000000000000000000000000000000000..e45ad55d14ed690d0de1e787a847d637592a20d1 GIT binary patch literal 905 zcmZ?wbhEHb<YC}p_-@Mp0u2pramC(A89s42!HGGcp`p>q*{P{nscC5$X=#}m8I{@D zmAQ!x4Grxj>3xNveMK=VYyDP*hMw-WJ~NZyYPbB=ey#`oO5f*8{#&H|Z$tFIJ+=QC z82;-q{7+-}U(E2oq2Yfc!~Z^p|C4q9Pi6Q&P4WM1hX3;o|1V_tzg*@2N~`~?UH-2Q z{lCuR|3;VpTeAM|&HjI=^8eAE|0g>CUzqg&(#rogSN*@U>;K)2{~sUz|DWMM5RZb< z5THf~DE?$&WMHsm&;c0+$`cG6X$;jIZw#GW`h}$Yctk3a4z~&E79C(vEMRC8H!e7m z(Wvas)yS%n(U8d8&c$by!C_NyfQg&WJY~%a#^i)X4#}7W8HJ0E9AahB(1_Ww;XpID cOQ)K^gp!3#tiIxE9s;2cLRK*|Gci~L0EIV;JOBUy literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/oponline.gif b/src/mibew/styles/pages/dark/images/oponline.gif new file mode 100644 index 0000000000000000000000000000000000000000..d91cc8751d1a8cd8e20de65484e13f09d10321cc GIT binary patch literal 906 zcmZ?wbhEHb<YC}p_-?}h0zC{2lNcE0FfjaQu$iW7vsT`Bv$@|!>rfzA6&kk9HDbG4 z%x>?P13t0cv2kkx;}?X+pY%>R=%2XXKdCb|X-`P<RsWRilvE(N9F&%jkv20eZC+e@ zOh$TqdPY-9W^7g_5EQ3p7iZ<%iO4+_Q+zbF^k#D9shpaVh4mK-8yXlI8XDSeRCHde zo^ZQ)%I%J+*Sn@Y=$i9j;^OBs);wLf_1)^DzxN#bzW2n>{r~^}2RnL{7!3g`gn;5t z7DfgJ8wMSaS)e?@z>&^S$?@di0fr_vO&y*m7aN#(BzeOgbQn53VCPUxd$J($5nG=y zlWoI<hC^+ABKiea1ZF6@v~cU?95E1dKI*`)td<c`u;^f8tAtHS!G;Yl*o0gsr`?!P XlE@|~Ig9U%K&Te~s!&!o76xko^KFA# literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/prevpage.gif b/src/mibew/styles/pages/dark/images/prevpage.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a8e0433a51ecad59fc9ba3e2ff7cf0ca210c841 GIT binary patch literal 208 zcmZ?wbhEHb<YnMxXpvwjH)QB_Vdx7GstIwOAI>o|R&GtQKx<aqyd1abO_?XFrM5Tu ztnbM`J}G$X+_LQpYcDKKJGUn1(%R;;o4c=XY<;~w`|$o<Cr_SazyWkX;vl;iSVJGE z_B~-WeQIGEv~|hE%{Eh7`X&}h@Nn;)?$M}VAS2LujJYt7gMrEM;D(4VVr`4A8Q2;L p>`Ye_xGO8hKJlo-nO)^eVi>hdd4fb+ch3-NU0ACuR;9>b4FF>TNeTb} literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/subitem.gif b/src/mibew/styles/pages/dark/images/subitem.gif new file mode 100644 index 0000000000000000000000000000000000000000..5c77ad12a79180c877821a61701fd294b04c34a8 GIT binary patch literal 75 zcmZ?wbhEHb<Y(Y#n8?5|efo3;28RFt{{u<IpDc_F3``6<KsHd8AIO$z>6^K%_KiqS bMo?mApK%3yOPhEMd*-rNr?xpUGFSru&|noj literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/subitem_rtl.gif b/src/mibew/styles/pages/dark/images/subitem_rtl.gif new file mode 100644 index 0000000000000000000000000000000000000000..11d36ac19c138edd1c8b9a9aaa0d06e5c634e67f GIT binary patch literal 74 zcmZ?wbhEHb<Y(Y#n8*ME)2B}d(+r9~Sva{Em>6_GT#!5ilk}8+iIdyU%7qx8)XKZc VR&lDrL2OEI$I@4)HnB2T0{|ao6C?lt literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/submit.gif b/src/mibew/styles/pages/dark/images/submit.gif new file mode 100644 index 0000000000000000000000000000000000000000..db4119704963e78dc460b329e25de54de1b0944d GIT binary patch literal 1676 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 W2r=XkL=sVC5%J77?|e@I0RTJj{x6aM literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/submitbg.gif b/src/mibew/styles/pages/dark/images/submitbg.gif new file mode 100644 index 0000000000000000000000000000000000000000..0eccfda10260141c54655ea9402c72d5b1b651eb GIT binary patch literal 55 zcmZ?wbhEHbWMoigSjfbXk&$uo<VglFQ2fcl$i=|KpabH8<QbSarsxZte#;}E#b6Bp DLOcqT literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/submitrest.gif b/src/mibew/styles/pages/dark/images/submitrest.gif new file mode 100644 index 0000000000000000000000000000000000000000..d3fbdd6462c2003459edf43d4f3c44217e0de3c5 GIT binary patch literal 89 zcmZ?wbhEHb<YG`}SjfbXk&$uo<VglFQ2fcl$i=|KpabH8<QbT>ru45o{kFehj>(N` n#(P!i{~I0IC(S$AxwtDSH)7MKA5mXDo-!Qy{_nj81A{dHXxAUJ literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/tbliclogin.gif b/src/mibew/styles/pages/dark/images/tbliclogin.gif new file mode 100644 index 0000000000000000000000000000000000000000..433e5b8a7ca9e47e5c2126e3a1b8eadf54ec711b GIT binary patch literal 85 zcmZ?wbhEHb<YM4wIK;}Ze*OA&>(*`DxN*~_O>5V#Wq<+2pDc`A4D1X#AOVnC24<;> hU3b>0?DCMF`est+{PowSX5MxTTRvsly@?DA)&P(!9SQ&d literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/tbliclread.gif b/src/mibew/styles/pages/dark/images/tbliclread.gif new file mode 100644 index 0000000000000000000000000000000000000000..dfa43682276ec1b41dc88162cb0684a957d8ef89 GIT binary patch literal 329 zcmcJ~yGlX<9Dwo9b3A4TN|G)hNF>z|P9|YESi`Ye3fdYYaW1!_C8(itFuRA{=&Hvq zT0vu5_zd+JEy4c};Y0Mjz>jZYDxDae4-nucf)tP)q=@Vyd&oX=fE*%6$T4z)l#o;8 z47otAkZa@?xkK;KGFm}hw2D5UkLVNnjMmUP`hvcqZ!{VW{;j@Wug4}uv?(;7@MS;F z7bl~3s<#mQSqLS=GsSW|8!t`Q=LTknda9p^)v^AreEKUK3thf{4-ZCyTN`GqmKkv@ rZ!Xu_?U;sPTK<(lhvPNYm)hFb3=f`s%d*pIZEjmWzn!VL?l{Rm&x=}8 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/tbliclspeak.gif b/src/mibew/styles/pages/dark/images/tbliclspeak.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c5636aa5fa522a4931149fe40cc7b07ef03a2fe GIT binary patch literal 309 zcmb`CT`R+396-<iAEsDSG)tx}c}gu;F1D10Z8n#?a?9>qE%^Y_63OdEW<;cU$=l|o zTyf_M$hD85-}5W>9h}=!r_N+16^+gK@bPJo68ePRqF3k(T1W4Z4P*~JLod-gWD7k- zD(EA6j_hEM(PyNL>|?jFCukLYz#buoXboGzR*^Mi7rjPruqEWruJgZyf0`UHL>k$~ z6D`?zF&`c7T1kJ$-!ccI6Pq7{5$7VEN-hQ6UT^ZN5E>XS56u<>fj;Ag7wvL)ey%Y8 f-ul`e>gmXN2<D8Zf2wWTpKzNOR*ln{7-QrYN`+cq literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/images/tblictrack.gif b/src/mibew/styles/pages/dark/images/tblictrack.gif new file mode 100644 index 0000000000000000000000000000000000000000..1a4473c46b6e8edac15e9f02c1c1610ce409d54d GIT binary patch literal 190 zcmZ?wbhEHb<Y(Y#Xc1xfGl}8PWQIRe8U9RT_%nmy&rF6tvl#x&VfZtb;m<sVKMNTC zEMfS&g5mEfhQDhV{%&IUyP4td7KXoD8BU%&$v^~9{K>+|#URh115yjJlY!OxfqGwx zrd!6USvlH!KisxDXL9oG^&9?rN?aUAzFTUD@hBafc7~D3EScMZRb?ILqV)<K0nAN| M2N&pWcVe&x0D&q!DF6Tf literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/js/autoclose.js b/src/mibew/styles/pages/dark/js/autoclose.js new file mode 100644 index 00000000..3ea3e9cd --- /dev/null +++ b/src/mibew/styles/pages/dark/js/autoclose.js @@ -0,0 +1,27 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function (window) { + if (window.opener && window.opener.location) { + window.opener.location.reload(); + } + + setTimeout(function() { + window.close(); + }, 1500); +})(window); diff --git a/src/mibew/styles/pages/dark/js/dashboard.js b/src/mibew/styles/pages/dark/js/dashboard.js new file mode 100644 index 00000000..2a51d9c6 --- /dev/null +++ b/src/mibew/styles/pages/dark/js/dashboard.js @@ -0,0 +1,30 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function($, document) { + $(function(){ + $("#dashboard").on("click", "div.dashboard-item", function(){ + var anchor = $(this).find("a").eq(0); + if (anchor != undefined) { + if ($(anchor).triggerHandler('click') === undefined) { + window.location.href = $(anchor).attr('href'); + } + } + }); + }); +})(jQuery, document); diff --git a/src/mibew/styles/pages/dark/js/ie.js b/src/mibew/styles/pages/dark/js/ie.js new file mode 100644 index 00000000..09d894a4 --- /dev/null +++ b/src/mibew/styles/pages/dark/js/ie.js @@ -0,0 +1,35 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function(window, document) { + var mkwidth = function(){ + if(document.getElementById("wrap700")) { + document.getElementById("wrap700").style.width = (document.documentElement.clientWidth < 750) + ? "750px" + : "100%"; + } + if(document.getElementById("wrap400")) { + document.getElementById("wrap400").style.width = (document.documentElement.clientWidth < 450) + ? "450px" + : "100%"; + } + }; + + window.attachEvent('onload', mkwidth); + window.attachEvent('onresize', mkwidth); +})(window, document); diff --git a/src/mibew/styles/pages/dark/js/locale.js b/src/mibew/styles/pages/dark/js/locale.js new file mode 100644 index 00000000..e6a70564 --- /dev/null +++ b/src/mibew/styles/pages/dark/js/locale.js @@ -0,0 +1,82 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function($, document) { + var isPopupOpened = false; + + var loadPopup = function(){ + if(!isPopupOpened){ + $("#background-popup").css({ + "opacity": "0.7" + }); + $("#background-popup").fadeIn("slow"); + $("#dashboard-locales-popup").fadeIn("slow"); + isPopupOpened = true; + } + } + + var disablePopup = function(){ + if(isPopupOpened){ + $("#background-popup").fadeOut("slow"); + $("#dashboard-locales-popup").fadeOut("slow"); + isPopupOpened = false; + } + } + + var normalizePosition = function(a) { + if(a < 10) { + return 10; + } + return a; + } + + var centerPopup = function(){ + var windowWidth = document.documentElement.clientWidth; + var windowHeight = document.documentElement.clientHeight; + var popupHeight = $("#dashboard-locales-popup").height(); + var popupWidth = $("#dashboard-locales-popup").width(); + $("#dashboard-locales-popup").css({ + "position": "absolute", + "top": normalizePosition((windowHeight-popupHeight) * 0.2), + "left": normalizePosition(windowWidth/2-popupWidth/2) + }); + $("#background-popup").css({ + "height": windowHeight + }); + } + + $(function(){ + $("#change-language").on('click', function(){ + centerPopup(); + loadPopup(); + return false; + }); + $("#dashboard-locales-popup-close").on('click', function(){ + disablePopup(); + return false; + }); + $("#background-popup").on('click', function(){ + disablePopup(); + }); + $(document).keypress(function(e){ + if(e.keyCode == 27 && isPopupOpened){ + disablePopup(); + } + }); + }); +})(jQuery, document); diff --git a/src/mibew/styles/pages/dark/js/toggle_menu.js b/src/mibew/styles/pages/dark/js/toggle_menu.js new file mode 100644 index 00000000..325ff555 --- /dev/null +++ b/src/mibew/styles/pages/dark/js/toggle_menu.js @@ -0,0 +1,39 @@ +/*! + * This file is a part of Mibew Messenger. + * + * Copyright 2005-2021 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. + * 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. + */ + +(function (Mibew, $) { + $(function() { + $('#toggle-menu a').on('click', function(e) { + e.preventDefault(); + + // A special variable is used here only for readability. + var isMenuShown = $('#content').hasClass('content-inner'); + if (isMenuShown) { + $('#sidebar').addClass('sidebar-hidden'); + $('#content').removeClass('content-inner'); + $('#content').addClass('content-no-menu'); + $(this).html(Mibew.Localization.trans('Show menu')); + } else { + $('#sidebar').removeClass('sidebar-hidden'); + $('#content').removeClass('content-no-menu'); + $('#content').addClass('content-inner'); + $(this).html(Mibew.Localization.trans('Hide menu')); + } + }); + }); +})(Mibew, jQuery); diff --git a/src/mibew/styles/pages/dark/screenshots/home.png b/src/mibew/styles/pages/dark/screenshots/home.png new file mode 100644 index 0000000000000000000000000000000000000000..18d8929d7c5ced5fce433f85b966dfa2c326c55a GIT binary patch literal 32084 zcmb@u1#sp(6fO3JHeZ-w!_15uW@ct)X69^|vtgzUGcz-DvSDUsPMW`cZ>Ddi(@v+g z$C7>L>ROWJqbupy;qtO#aL`!L0000^LR?r8006ZG06^@4px=_1Pkkl;0H(`RS>0LD zz>UD((azMu+JwN_!`_6z#NEOa0B~QeOto^{Z-Wc|azfJp-6BZoH&bzqJ2(O(ZCrbF zH?^fwZ7ocuKpX&phhMAsdiTokyTJ&oCnKY5J+yv_WL4d2p?G{PKbl{0=bhHmUD|Tv z+hD)d_M8fEYQYn4pQ>`;^Xa&r*m*sAD_WQHZiU-Gxb(1@Nqg|@;u`hw+i<&KQ(nGs zq`keg?1qc>+IBejjHPd`O7LaRu>~rmhld9~QMc$%o3(NSU#|rBaGsq7FwKMxID^c8 zy<EEs^7GPOacI5a<;n^8R!uA)t9c9_D_#4viv`iwPPj$2JRg9ibgd&)zkIw6>>R{@ zz2`<=Y$ZE=UGa=>o@wetriC4H70A|X7=;92hVOJFa|C@2G-eh!qOP3-ZY>~DT&v3O za_gcaZQBl;w2rvfdj^kFAW^P902G~SJteOol61m6>yMy@%&0wBzCVNMo>S;AC$y%$ z`_W9ZWAZi)CT_-JLti%f{Tx#}LqkR^7y>qR0A7<;>+<{e2?~JS$7n515Z@SV-?wD- z^s;yZtiwLgjEj`;>~%5Q;NMRA+PmIKam-A1U_oK6C{rx}P`36sZCBL}jH56kklc_X z)W9o(ZN*y@avxYiFXArutPHn-tXkfe^9Qzda74;|0(~JF5Y?#g_jvV@ykx-$%EC+% zv;<2_j{Q`nDUG^6+6e>-e~ghR6$_K(4JAl1C<_<n%Bn%&rCHTV3zt^Y*`vd;ny~h; z-P*45hO<2{=cKAT;pWT+;zjY8#!3og`1*s$OtYEBE9z;@(4}j4C8_B(Ococ}TATV~ zxGp+OQgqzB@>~mEFP<SwTCrLE;^rJ~1*6+V_ZfE*W&ardFy!S##1QchdW=Y;r4y|l zp)_ssj3DyJl#Yl_lSKmSYsr*b>#TX>zpS=rE`3L{{gfN|8GQK_kO|Uu)$#$_Sn6Yo zGf+jfkh;qMP<il_UKHM+z$$6M!K{&dlEK$Cu`V>0lsmjKo*!t6KzyJ(r`}Ru5NVSr zT)mF{?6Wbu_ER<c`k!P1Yb;Xj!eNQe%be4OPcnn#nZZ#aLwucj6lt!;q?(ob#RtV$ zML3phDSUgv?^ssTrB6fQdeTSkjUFiOS`$n~P-EhinPqdIfa%Mw3)8fZ301oKZft=w zWu%+_ios&kQCdv;1}sDTy24y+MPJz9HAn1moTq+`O9Y`yh!|SF*2UmLT1wkM&wp9E z20nh=j@?nGvBVQU>jX>qq{W26t_lXWMHJu@SLL<zQY^Y?ci)&Ke%Qz)+7z9KW)Lqd zy+wQd<ot!XS<q!{6-v_C?r&~m@Tg;&?_Ktzow)owx7(l(sX|r!NO?IT5lg0K!cf&{ zA1{E2t5lO%q(k)>Ra+}V*-d_;2-SG1X1GN05yxw6%=Yg;qd>QFCPdJ#V7Bnt)0%}< z0o-yX(NY#*n{d;9mz_`4$)08y<dvw~b|PaV+0Lq|DNq2D6*6=7gwfdbbaPr@FAuue z4mmHSSJ1gP(vw4%1PGm?mF;QpC?U2C?IgMGOQfbxm7ZDnuqUW*E7{x3Cf{ZsKDo={ zkFu*XQjJayZX%j(A%F7_L?!{`2|%M|tZqe?-rMe$<<^$sa&Iv$aCkJ7o@=6-MPp!G z?9Ylr>S8jEr=`VkAy732);huvfltF-u*Ajqp3iW$v@?Ob3iQuoM-e}<X^{PC@wW+x zMW!9_Wck&#$iZpL-~PHTRf)J05)G<*lZs)!KQA1%x^o*CXNk+440sk)oFsF7Vrn*J zuu2~lJCVllq%82z!6>4!Saf8?^<ZNKN4r2SX3(&;$C1)7i7nEU8;RJD&2hx~FegOe zYZu4M(Ko|~1NoOBN`CzJ578o08|^)6@{(0dmwe8!5(BZgcvRbUn_=d@i>8d{@J#C| z&FVNP{PU{S-@Au+N@p0Xe1pwXY$n)<RPtTI{+}9p>rNM=>dtH&<Ys}6iucA8c!Nv~ z|B(92V}qDz<I1qpsA$j92H938^y|!DLlu_yBD7ZU96KwTf3)a3ObQ2$q7&L6FCH5F zExoUIO|s!sKQ*P#hI%!*zoR-m_Uh3eV_4SNf+k@&JRb%z493Lu&u%V&AzPf%QWvwc zoeP!QzH-~x^Pmkr1qI#2!k@|rV>g}{%V6qShurA!MuZ!pK@CBMeNd4gd2Lt?Plr82 z1HnpJnRDRu0$s56M~FSup=B2i3t93YDtN#x7kRF!rS%9tR2_w@mBef8>IYgAk{Rfr zd-i5pM&KZ{UZk5z$p4)0$)agHu}$xUTc`EPM;y6Ko1{d?sau5>_nLj~wGTa4W<p^$ zsC1poCfXrsHJ}#`hAa%wI<9J{aKIaB&JU4lAn6s4?kxKI`63*M?#c@K9{FqZ--7P> zDu}3+!~PEg6u|<~+<?ECpz(wgI{#Mv*RcW{teBoC_5J9Sj|G;*?|0gAPe5hqMpomL z8{aIdABZ3$Lxv?{N}JD5!_K?&Osq{4|Hx7=7Gy7VQO)ZrFp|>*i_gU+QoLb@lB!`N zBlW8CL>BTQrg1|#5b#jK8fqz+S#AdX)ls-xEyKEPocn<j4pQ0JX1MvZ+vr~Bx~iCO zJZPueInvre#Wm8o3OnY?BEgyeW5K25ipOWgs9J;AKn-gcizarRSR_lx|B)1oS2FH} zyH}z67MO;Nr3ShSN}Z;PaUln}aYH5TW4*DVw4-b^i@;!_`fwaxq2v7&IcR|9DO6rC zNv|vUDg{=itcdc{XO_%gc951azlaPx&R*;~nC)b?9u?cTD1tRA8ugN82K1{yNCL!k zV}enryCQ*QMOheZv>f{<iK`?^TD;BRSEjjkd_!I+if7wEoN#0e6mR(8^zLlw0ivxP zS*|lFPZI))`=EpqNI30tWjtB=S>$>c4BT&2I1?IIK*PN`12G{Hl3NIX%o|hBwECAf zVeXoHuZtmrGD4Y)kXTF`l(4%p-)mI9upoIKb;*9ZL7g&p+VX3^m@yu~JX?y-BcFYX zX+2Z&kA=Aauc2ZlgM~P27b*vFY&O<s#?wH<5`{lPUfH8f{XxOk(f+$76EVFtvf2N@ z8kd&}Is+acK0F2>(5y_Vg$0RtkFVxy(ok%E(4#+Z|6${dHEpzh$J*~iE+^zeE_50R zyjTzBuwq$8lM>V*6~{*Ip%f;!#+L6EMub38hs7D<v1tR+A{ZSH1;ZUuBu`l(3%JS) zs(!Gzat0f0M1pO$AyGphKy&p*@Ap%z>Nivq$iw0!@G!*(dkUP}q{5;JbesflZxR-1 z8X%04aEy~x4y%$-JY}xXpJKTv^}`DPyv^@-Xqy-DIN1T=)?j2)vyAB28=NDgfl@{c zcCwq>>W$NaP)jvKfUL#8j$QIr7V~*s(6VhPU(AhCu4vj$ptPRihlh%caw(J6$8Eq5 zQCn74mJ#V907oiyN9cT&8M{h|PoW@GkjZg=5<xNSLLl1i6unecuC<NCic()0A%0R; zwP}N$bNPew>J(zefn~kP3(-)O-!@R69KhlUu<664(|2Cpcf&`!{@m~<&Hw8RH{=2{ z*(mGu&iVNEq(-@{A2EieDKX*qa{D`=#MX63!C%zx4;~^X<buq+wLAug6!9f0r?IFp zjbmsLBc4W_^RO=2`UTrZ(RABH4R!PLe*MSsD<O>cZYscGvWcQDfJ#|fO(F>0ASbYf zKS>VJd5wQWZ6~ZEzdILJpuq|%;eh&h+T2Yusr-)~(l4k7&WvjI&z+a42^QGCu-3kg zL1oUA>Z^2H$GyDfO>n8-UxYScmkaeAME9_?ZdX#0M#BpfIjeae8!PV?J!=~5r<KQa zof|M-Z?;{V&wAY%e?V8GCL_-z{1WCnMSxZ@r6a-dGpP;kXws2wH>WsnmZJL}Y@__^ zD`41*OX=L0rpS4kr61+}`Y%(}%ufd)viIdzhjL)PPq>5)CvZ#e7%i*CkNaBP<=<|7 zu!WG2yo8X@|McX){r60tcpmY7ew;x)r9vt+B(AVu!X>ik!Xg6_<?=z$d8+1%z58?Y z=5uj>TYf=TK|u1Mm&4OdwQ;sU2W~@#Wn?7eM<zaZ|D7RP`n~7d(f-up1qoavny+YL z<e#@;Mv9Cmy)VOb561629zZlTHvQ@J2UTqR#svXi?}~`K{GpXktU0|Fa~mbxEX`nb z0DC|wqp8;;=hwh(ous!cx8)o}IDTuD`}+{bQC$zSkSP<R91an>lS~B*<9G(v4T*#L zqVpJrB3^lB^DnDGrt+<XZiduZwd7V=CqzaXLnvfn3W@@MB5PsuMTy$D+z)e@FaNWY zk;1rgfM^UvVy=Me$F|>fyB0MU<0UCX0smX%o;NI5fKINeL*|vyaA_9c(`;MP?paDj z|25%WQV0egglDa1&_zh;(SIB__iHpxW+myJCD<C>ov*-763nNWe>r_w%Ll(0f&Wii z#1;TDv`0LqZdt3Ny`Z((Z+hYF4J4Jwu}Q+y=JR`m^}|p~O!zzg-d=>-{k|h8dvOh? z??D&Je+LL4Jrna=2<a>#BLaB<h6F`~nXMKp2mlZOB!mT&-B-^yG!k)EJO~cIHvbVb zJL;7&S#7bO^Rs&jxFyIaW>8v?C}2ekPez^`WZpzwc+~nBzx>-H&oLSwW=7a!X5JLN z{b?btk)QrI-MHQ@H(*GULK)3+%V~?*DAwyEP9+$028JzA{nD*$Rzo8#KF#ml;j4w+ zRyhC4_h}2Pp8>X?0U<&SHAy7E05ik@uOrbgN(1%#3^OE2@xRbxPKweI#Ah}qz>!~r z|L3<zRg!N_Gwa>C^8o@O&f|GQL1v&Lo$1?7MWQeIhU<7pFyK|_H1gwyuf1c4m<9a~ zVW6S;kO?!O#{d+#x8_;Z`oJM1{pcbJ(DynC*}FPF3#-Xx{!Tw_L`j;6C<q|HP1O4- z^_2lL9@Y<rv^CnhuebGY7g3NOWc#r&&(x&72pn<_6JQxkn-Bu2hza;k!cSQUzyyH^ z0#FosJ)r=cuMMnu7{5)**;3l1l+z!0v=`pbnNmI#NO8*xjzEsLre!f9N+P<PRPHwG zNj`17LL5(89nnoyQ1uR|ZFv(1TJk*~7fDKHknSCa8=ck9yJYy?srhms$!jK^w_kPY zF^^m?z!b;85~<34*GVe*T&L_7X^>}-dyum9k!P0x<pYos>rt>(gyIJ1z;iXVNel`| z?Yh4~@O$pZ|2!5;IZ_3Yx3Id@MF05Ud+uizYyUb8HA5m|ma-bweQUJK=D4kwa<cQi zYo5lD)$8cu*WP=x^Lc)){+z=9=)G#y!bo;IwO0ABj0on{N^WN{U`8d!dDF(NPawLd zNK8l%dK1ekmrcb{V%}1${f|IFH~4F!sF<$nRTz{F0K><Q){jHzHJF4wJ0OlMiI>Hr zP!`T@C~-QKKu>jWf5eDbf30elF?*y|;jNtCH9IPRkW_+_%OcbO^Uy=2nXP#~tM=m0 z?EFtcRK!Am#6nbnL5CL@VeUXZt{mdCtD7vnb;%7L;5zC;G#I8(5rB%A@1Ks1@xD>K zYE;y?=oIid9~QVVVs8oRw642YI8e0~Lr@AW7^WDAxXJa)!;7+W7(_RB;Vx{?!|(lY zpU=-v)(r}j0APf)WtWZloPe)$z-YPr(f$Z}yeS|bgovzCdH4^LIHQH_QR>}x@Vg}t z206UNXHtx6E?>QWYzZ4bot%eJ_A^X4t(6X_UKHGwyU0=4+|7#fAD?UK{c}GVsX0oA zak^urM<lR<>w;W^fNv3>R#sCkRPCyL3`abzy~`n(AReC7%|b^-nh#lUSS`t@dH>?b z9(f^;vc#=^Ur-v(eTIteh>D8Lv;$QtR-p^}b0b-V9zor728!WOww&}Vq1SK+;#HWa z7(0hOXlieJhTqLNb<@#f(C;cU|GKr=It9`aL=<#+o<zj&zve~+2r}Oq8T~q<_xn4i z#C3-e>vI7IK|#<{q9X}H9E2nYEDeakXphE!-#^z6y;}ADeDZz5POVWKV}QNOJjKO+ z-&Zt!7I%v^)zPYeEq=va?#FCzg0dV?Uwag}UfBOP*nHF;Lhe4@i^*Qc+;M1!<|bc` zjP+~rUs}p;LgtMGfzRI}BajUKj_ZN6Tkqr}99D;x^p*JEJc=|cBV>WNosAb9mix6# z`%+|4eTDyK?e_UTK%gIg?4Goj&-y$_@&KOo3+^vHDec-xV`0SubA~TI^PBa!5suIK z(Dy(uxV(ns+!f{FpFel5zJ^?zSRPKR3lkJ}kGnr#DWedd_qv@0MSv3VG0dSvz`JVS zyC-Jsvo^5qhm6o)(Dt!c3I74qqrQQ;qdeNWAPg=aYg1i|G!W81><p_>lOSs@2t72{ z&9KkOf&q&klLDT+xJ!2>Gl{5Ev~qyjAqp+Z3-JhpB-~PB0s;~EXG<;^wU3D&sK`)} z(j>wfK|$D5DooT9EN<1Ca&CD^Q_@M!(+-iN!aDnMcXV~2q?|q^So8z9v!S34&d;Y^ zIiXe|5bagT7ZHGS5(&dSz4YrFUhlM9m&Y(3sp;XV-PSo4(LVKg@9G~`rHFCyu>DQG zfmWTeQ;%rc&!?=N4{t_B3RwhQ=6^@uxi?Xe9|;2JV&7MXt%I^l#^1`Rp=U`E`QpI5 zL`R(E?1HtfS>F0V7o8}Fw;#g}fNhV>Pq^$OD8it)$LL~bLhflL$tx>DoMFPCE@wi> zoHqbW>l<8y-TDpXr5j<+&xm%6Ti6PXWIP%kb<di6cW#*0<)0njkOJFZ1ETw1E({72 z{|nVA|I6t&^8bhb|JTC*qqq1U`u|h&e-UO==iK-d?%22Ztau&nIN+$!rTFmTPv6mC z#YUX9wN=#%n}m-cKfFjQ2hAwSOY%&YFIrk>@gT>Gg9F^N%?N#zDGF=VrI%fnUCtgj zVSrK#<Qxic{rcgrBPb6i$4Q_)DC&1Pijc$}d<r6fM3E~gqjBU1jI5FgpU@N!GU6A4 z-yGbG2@e{Z%(h=)EoG0Y2P}rH+X3}Kf8uIOIXLh#&~H>0K9dnmZoGqPj-E4Aa`}-g z!HsAL5dJYUG_m^l*x4blE^OBQF*WdD@Lh={?`v)Z8&KbLR=@FS<L0L%H9F{4)_Z3& z_i5gcnf#Z;r^h5Ab7^Sc1IS;-vFNIl^#vm$2ceK(ZN1gC_3~xDM+U5w;YIToGTblu z!TZ<LyY6tEOI_i|mD!Q#zPXT$0Qhm|-?r^ED1G!J0{3t~nxh3hk_w|`R3&rjHtyei z0!<GG1^~h#{5{PdVN~qTo;9`C5Ijz7OE)hc3T^}Lay}P)0aN|*n<OiwabWJd?3_hp zoYWY+&56FYB(s+}>LpkI;Qs2L>7R{QZoah%xD7sfAQbE=_ORK1@A_*FCn>_$m)!3Y z6CHa~TC_vVKKUS|{4%*qy*X3hr%`!Rn2O*}2CHaIqkOHMio)Duk^C3aW#d6@&6V!W zT|2i9o78RI>o$iC!h8hETHU*`#WrQ5WkHBVLAjl-Ie(6vv$gUaB{&|a2}byJPB~+a zBo`n63m$)onf2;U*{U}p%CfDJrSg*-A~1;iyCtCnFu_P=jUpqm0>etX<gLK_aB*dA zCQ-OdRPtoU7i>5Xg@H<v^6g8Cf*>HI)2`N(ePA!mj35B>bb)dUFn#B@S*X*c(==L+ z&8wx`&zJyL`}Lt@a@UzdGI;06eDR68gD@hh6WJbo=!-_h#JM9AaNYX}=LaQ8C<~hO z6<?AtLxVI<(;02~2zWtv>i59kg&#%vN$rQ6xkI2yGR%xjF^EM2LO`&Y-P^a?UUmx7 zg?d0F&_Hs$Fe9UOw*UK#(tT32@n={uK;Gt}gFe}@HHhS{o%V+)e@+s5fsQ1??Zjq) z5da*JIan@w&?Lt0T7^ROL(wR8&;QS(@0~3%AW=~g2N#A4)Y6z<bJv)GCZo`Wa%p+2 z$^!Rez=BXf1PE4m!3`M{fV{eCk{6^Hix|j}*V&~W{qB*ZDA-FJ!=E*siXnuPvhGTL z1jFLy%AlM`uxy=nc%LJMTfN9^#oaWf!iY0x6Klx0w3@cGo7Lz|>u`*n|I9r#h`=#U zajV6T1F+{=zR`x#1^}Sfdtgq3HMqDNm-%;AUqg3lw|as1(GTkn-M3HKwJ_t!A|@kP zeagez0D^_}HhncgWR@UvD<@atIaYa1y~ulKjUssMpzle0y35hdOy7CFdns<u<Z?;~ z)UB7jNBFkk5B91P(7xwKMalb$iyM$^Q`?UIm*1woqb%VOFr0jp>Gf2sP0jTI<_((W zKi=u!;8JXTBL>6Pv=tTYo{4XcOn{M`@teH1_ltA)!)sSQ80B5r_lRF}%|he=Kt~3? zN!e7dq9v<aB7a}WGNP)M7CtAQy=1kD?)G0qdvB8)TtCl-h9-Z8$CutcFz_4yT>Fo= zoloMIU<*dx`1V_juKN>Dy5E_S{Z>B~Gll%02Cc@I8;$EUTy_)efbUA1W*Zktc;+18 zQ2L;x?S+>;|MJvw+#F~!&;R~a(e0GAPi5wF5SNdEQ&l_s6#!G@35yaoe%BIF8g8fr zm|6AMBJw_2)gy9OTIMk%W?+9W9UXg}d>;5o+-$6|aAmb1B~rLYO6><{H1>jwr%><_ z%GiG2!()s4q$f$~aKRNq?CQsT7NZ!^La+-99`+={vHz+xT%oBe@139jlJL7yn~ceR zm2$nOE02F!!cV^L;n1lC9?>C=46HVQlOLDg_VZk?!tY9Mx%;WO@{CU?aIF2cH&jUy zNzk9+=qwf<w~-oRo3y%##!`Z|)@x*J>mffku%wXx^4=m-ilfqLq71$NgZzA#>Q7sL zf3@deWECP>_AF-v08t(s711AFAArfPb8Wr5GSJzH-2)*i#8_G9p#=3n$por<Z~6V| zUk`H)@<W$fXw(7q^@hW+qTC-~Retn+kiX+5n3|luNGMD8l9Kr&@i-bD$9|^GSFB~% zV{0&I8*Z)$kh28<YVZ7OvbUffI`!#3;hsajGt;^H=Yl|S8U%m$K$yB6OFUXXm!EK* zxyIwc+xwmcaO)PM>8XUue;eFrT&+71^eW3yn32hbe9TEX-eiM0Em*x^1u|>*@$X;* zJt@@<9t#P>01vUq6=huDyEn*0&vGBEO!|9FNK2&RN)?E_S1ZOL1LtzpbQ@r7wKFZm zBNicLm5+=@qH%`P<id;?tFb8aU4dP@n&|!$2D^$X3vD8_!RMK0oE4&<9iD|T+x2(Y zRIFF0iA2S^b?{L_pn$%P>FU-#;32p~q~RtSDoq(L;XjF{=D?3o%@s7gub=HEM1akd zKAb0<DzFHT@>M|1YDRP%9_I67&Uv%0F0ECdyL~^5OSkq`+R?s0>T$0izjBWy+Xs)> zpnQey=1pjb08pY#dJr|%WSe7G%E9tqm2GJ_UT00-1Ad_`3I#?OsdVj;25uJj+Hs5V zGsrfC-<`9SU2#0v^dkVI?(&}yi%ln`xlTU+glU#%)smAma5(xl=2Xre2i==eSITn{ z2ku9b@kpgjlcQ7z4(k5WT|!AvpsqHt7Raeb*d9@>d3oFKrmAK?)<~<Mt6wej#1NhU z14?)BWh=)o2cB-MU#~XpZ5v~>r8?CTIFOFwg&MMo&okqmwFD4*Kqv2Gc|+*~5tT<` z_+J6Yyle!b36<xjxmT&#dP?njyO!{R1kXyCd>^4;lpxdV*!u<kD)zVpqF(+_F^XfM z#WSx5udcFCq&@XX&v5{iC>6?uK_!`OaT;_NX&q^J&&i6twtPK)9PzP4CPtDMP;Z7% zhOk+d+w_j*fsP*w_tyQ(E<s1yDkAFl5GYxwH<Ap36C@eSw|6v!iq304?fo9@7Tx&{ zYZll;{Ew;Gafj*Xb!{HMW_u-9N7frO;rwrLFJv5ipaAI?Mu3MO08~{NKrTe~bQXd3 ztzzvQ7BtxtR^<mGk<*FNJfDkI(6GfKv<JXm1{V<Zs_6waz)(Jf4nW1=+wiLaaq;H{ z__x9XYzuL3m;k_zlCz+_Q~%v-8oY};oRn2`KuZ;5^oF9O%C$BqFmEm9p}^E&+_Dj% z3CL8T0?{|rT%14$u+aKT;sMTg(E;CZ<4*(tsLy~aEN15<`1A0u1bcX1WNj~~ofLK> zjirbCBn^J8xSd-yrsWWlUdVKKpY^KtTPyOj`eOlpUHGKDj@cfsel-$%=+l(7B(BJ8 ztlEeHr82MqGc?T@`C$AGw2%O%CXj{Vu0&*`>g6raO)yq?U8m+cPx$rK1ks1{{4+y) z9r9){z&0u_z^9aFrQQGxU<~N7J=ZZ4>Tcr8Uo2~&M^UKHcvIUkN0`zVW)N*FKf?nr zwE$6X>Iy^LjeF83m#$Ovl(Xte;;lDr&K2pge5U&-@0vGrHKkMY@=Jlu0(Gv@lK2=U z<cqxF32K;q8Cx3u>UvB0x{e`qD{km)(sl^VZw?`XVCA$wkMAhMkyMb}`I*JKx2h@y z3Ai?f)CAxF04@REqLe-(!all1xJa{GzaHh**H4`vw|sqwao%G;e<Iqw`F-K@0`<=E z-(wvduk|q^P<&>4jjY!`6+;G(m^cCQ(`P_s0l+o6KPEraKeQTLz?N^3#pq7X8nytH zU?Q@=ZIdFN9Hot&GA{riVI}=pP|lnK&2==g-E3D~F!8}M)R8{hW&8Qied%)}!?+09 z6EI)4(NXJZw1W4sG<_zLb5dH2b^M_Z@E4XZdWxky1mxmeI&^)?fdI7GSZ_c)3uS+@ z5%gBREoDVWf+?(4I5eIf2+PCy7t=eBbaErB=Uz(9tE8Ji0DvO660m_kvY{5h&g%(O z#isUF)x2U3^Z5h{?|Z6X4_|ei6O8m18S%|PeCz|1H9kUL<fdR2pL{Y^3PCb?N29+$ z+5@+LE7YLv@Bm6!cfQ2^_LlI;LP2^8uc>K7pEll#$XF-?d=KysWUb@AZrubDo41}1 z8U6AP7TwkiUF|OjQ{l31Q7J&$1)_!~4_l;Go==?=B|!iHY60}I&`@^`Oi$byY+A{n z$8f!h7~YamaK5ztZhP`fh!bCInA!|H3;e(uU7k9p_i}&6KS_k>>0)ycM4q$>n``?< zfF3%mSC-1I;d>^`EuWhk`Wzp(ZOUVqX*<rE{o*g=qeReLF3s0=KGe_5*zg&fc+um? z{EjcR_lYcCQIJ*0K)x%;%du25qpn?}H&o#VBn=OiD-ZgQOIwt#dqpwKf;FrNub1a$ z8v?l*$zdRaAm&BZ@WY7Wt^gS)anQ{N<WaBg83#?Fvyo8(=a6YrUt{@R09&UH{f+L5 z^%p*%$Kqpu_)4u=ZMhCEig5@N0MhvNcp-&jTg@1SDA+#!`y;qz@%&cS#>gi0=q2fF z8EFX92)w2_PAizWyUDZ-+(`QVcFxqoiFkNN%MN01Loa*6W&5}>117RDSt9%hsqHNU zgrN;>R<7Eo@1pZdF;BeoX{V8z`}+YoWqs6pP!cXzd24QJPOC^qaYW7Z73S<)!(WKP z<7$fm82m1WO-KlW4yz{sp^QVKq{|F$TS9L)7cD$4CZ;wfwl*$}+U$>fx4No^4LNE2 zFs+InAFrb00zebhWotpku12p~eDENBzfSq-yHzAHAfY)q-OzJPXKH6k-$m2s(&3CQ zlOV9CDQn{?h>>8QlP&jyi$Qe6LM6flgK+=fV{hf2{>3oRC}!=;xwVmXp7f%^Jn=Re z=ECjentH|(?aoE2djAd$hQfizj;{uCOV^9f&To$^j{CT$&HrQaCt}y<&6Z~BQSRq& z1k*=80zpit^+hQ@V)L)NOF9?3`XQWSJ0JHAYP)LF(~Bb;nu?a@$BmoHu*T|=5F`R) z4EAPd&o`B&WL3#vqK(Km-zmPPLqivj|H{48KuMTFuUBSWoszC<%hl`#)uQ#&i^0J5 z&F#tnz^^@AP?JME&=_%WxY`(d8?+`zBe`Li7h=11*F_t!29wG2G(YKGiR&=k=vEyX zbYuJcJtx%K)Y+}Ri#Zt4#df#T6#m2<gIug$*1R?0tJxnA<PkDted(4XMBnXZTPX3o z{sSWtd_TMQAgz&^T-2u1)5Vt==P@9U{;;AHRg>;mvE`^RJbQO4COFZO6v6lXs_QL} z%xO3_+In%l=mNyQav1~TP@cf%pt(SRF!fSnqs085_Jjs`8$`y?w9j=d$<9T-LAFo% zX++-C&cx}YVD#69U8ltTX;M;zsS5PN5aA|IyC$CG4{59x$DPc-9c>*AfdQg@w=sp{ zg(hD;;X*#Ra@%3yx?`Av6eJ#eFDn{Q^E*PJ&B>+(U}9|O^lolXXv`1-OX&v}2%B#w z$KlM3-7W4X+V=a#PF62jiXOK!1JQ%DK{r<Pc*U}J?~Nh_3P;X7yy#sVP9BxQkf1nZ zODnPTj{Ka+@dp>u3>=1+6OXdl(&T-qzp3#%QNkWEmK}XpHpqMn8`K}=9;rn7A3$r5 zUtpv@6iS^=gZoY=7UEIl6ily_v5MgloEq*wn)z_ABGqIfAd;x3n@Wm;i9>>AaWm{s z2N5>;{LaO{CZ#Z%`l0e#DuI_P52rB2vd_QHt~UAb)q-O3!pD{Zi=87TlP0YnMn>o7 zmyd+uWjkLv7ual<lnJ@!uY;8h$&Gp=5SyjeQ1+B?X6dz4Ram?A4$+q)i-!zz=umwE zwyDL)&qXiSlQdFd@2w^|DToB;VOnzoi-+3S%Bn7I12d$GAme5=Cys~Pf+D%zjsL1# z3&&a($HKFf2e+<Z#|P|zN!VDtI(oZ1J6O>AS7e36sX}`sqL-zW=DyEHvrgP;QtuVT zgp1~}pV+;&%?Z5ZJ-$p>R*eQ^&>Gnuj<Nonmv19hd*W;rg?q74^SKzfo+upe4;AI@ z^cLC`nYjCt_S5%ZkviwR!`-o_fw6t%+PkYpYx<ueB$ciO5-aPcp&d6rkDJLOGJQGb z-ujrcEV+8b&m>&gIsc<0dfx?}hkP=a`lHP<&In`~mB@!Zr49C?VlRZ80ZcTeHQ_Tp zzst;AaLqwMqLc2L^doQ$hvpx}F%y|u>$X45raEwxTgNfz9?8J&*wyBI3jCaI`Xa?d z$6dJU-RW3f1C_RjvX^JGIyiH}{UK(njEsKA?np|mB@LYv^rvDTRZldY%1Bg;y#+mO z^1MlPKRgLibv^fLq2ohCypuh@%MK0H@wX%i?j7qN8CE%%H~3k($Vx<=reUuL-W{mP z>Sk-~xa%^*2!7p^cKy|z%KC7&sS(or^(4SBw^88XB!x|06vFrVJe1LW>w<5qqc<gH zUa;*!mCviP!jgn)4CYfE)Uwo=HsNRAa--(=cCr&cRryDNkq=W;W~_bDkoe!4KwVn_ z3(&>dT7?ZDQLrbZX4VAB`Ae_B*<}8Dk)121b3o-5-_N_A_$Qa6xAE(4y9;~OC<Wn~ z2^9(|r%TD#3-0y>Ha?AQL)&iYXON#qqaek<Y)C*-<)ri1jJ=#Dd1hy)4d>LtIDN9D zOHdC!(AmvR>?8fibEhky7VqZ0ac+N~UmOY0!>AdEUXCioi#A!Avi0@(#5IS@xl?gL zD*}V48$sGWw_(B82(`Ue-KoAlk%|rn&H~#*El^#fjgh2GLG)u!z#4g*vM<kAE~q|8 z+|Mm_YrP6SS~^BXI+@wyRXBSV_Z;s+HS><oV;DJb)VNNC!n{|!NgkAS6FZJz!Dshb znPAiB-rg_o5KtHpvzd44p6hiyV}AQO(NtzZI0y+4wIyCy$%zW?%L_9*MgLP-`Q2d@ zXruP|Y#<qUGzP|PtL<lZT?%#q0g1aPX0k_45B@}=N|eo-iC{Z<UCOrgEKIz*>#JeT z_qe<+&Q_Nd#AMl3KH`RFg^t09^oz_<&R*8u4S&iV1FqwD{?4rsJE#B<8@Bnk^u+^8 zQOKo-p+gEBDXIcC8E62ALh++rQ-dpLoA~7^kxf;1>P=D}YS2Rk4ySFBG?nzeiimp= z7jTb7&1|=Ld2~1af>vfa7nr|Tc=I#h%UGqSad})9^6&)tan?vPi(c7|*g<<!hrDV( zdw1w|`W`Ha&?CYCmevi_rS03sb>94ES7%$=Qv><4HQ>M=>xBmWUs@Dk{BnLra(>UY zoJcO<lM}Wa16iq<vET)bS-7*s!Ki)=@mQyqJ&82dX2`3=m{FA~V@Z~iwhOdzDB*v# zs^MVeR9vxc%t@#~2#)36wqCX)Vq0o22|-FMj{SRFwfW6$$()|AcQ#9cK4wK*{Z%do zq(a9E(E<9p=lFaE)|>p8^b_dt_*``^mqyovayVHei|dl3Hxk?c#EGn5y!)lSEy}hF z<vaQWYBa>)0y0*Ij)>=+4%SS^FsRLSU_$+#I^@}KfCY>bIGDu{5L64^n^Q?!@0!rD zfPlZN`T6@R->u+tszz!*z}efTetn*g*TcQ9G6_czUuZgf)w5RH%9PDe=Of&l05!(p zlV4BHPka#IFIZc88Q1Lw-1GEx(V92Zq*%w@mC;=^FOQ=i2~e+9c9a%E_VJ|aFW3B6 z>;e~?%)|jIJ_ia0CgdBB=k+pZSZbPHwCj<5ihqp1K+==HI(E5F*~E5NprmxLNV-Of z=Rg4<e^VTtiX$3S0^^;&fo!Nbowl_`KzLGEbJpHPa`Wv<3=_#mPMYrw70Y)idq9AF zA*F&KicVVjvyI>=d=L5KM@S5;C4P2iqPS}?7pD^M!)@?^_%HN7*`*-5mt0#fQ@Cyt ze~dMjj_?<A*^rcHEjSpMmf9OTEIhpZILTfXDzh?YDOActN%EjANf4ph+p;1c!_QWO zmPv%ce;UwLIEGId)9Hb1w{a1Rc50Tf*J5EE!-{zhy=yk`ooKC%h@kN55yXIV^r+}i z`s;{2j%%`9YU1s-2us5Z8e$R@Nhszf6j$x4!FH0Cfhed73HCn(XNk_{3v!~VHc+_U zn~oECuBZ?}e?3P8=2L_ijMQ0wXVxaUYH<uB;&Z`2)`^jv0@@6eTwmc%Dl03ia6+|m z6_JJX{K+F1Tp7<xw8&Jv4pGrqk4T2LA49o6z<>MBthtE?I$qx&rNz4n^%8b?H;YcO zM3*IeW*!?t_m7ImL8*mDxckC_mL-d6^LZ{2IB|e#ecG|Kt=V{~bFOBosG<)4i!l+K z-wyW?!b^cenitV&X<1o_fwx0GR?PD9MsSG{r#IEf)>yL8Y%UGK<k6FR61gh{Dp=5X zFr2KiF)eHrZX)Sm@o{AlPShJIOLNNvA@2&3#R7IFAI^<|9t+aBbT&h4>;L2e7_|>Z z3Ua6Mqk2?!@UfO%yB3%fg+fZ5VasIQJG+ggC$DYVE>P3XLqGr8#8C70-RHa!2lkZz zWWiBvf8(NEQxH;!2+9qd=dtK#Xf#*up(rXn%V-r>h9~u`=gR0OE=@iu+i~w9Uyks= zz2PQz5e8F-4$DrG3}It;(iB^-F3}{Bkl|UKFJ#x^l?f02$OsnIQ|!t{A@kZpNGr*< zlF%eVLaaqk;(+m&a~1KRjEj(B-FOV%6Ud=~AY#VP@p-YT#&Fb7_@4B-e$|v+A{s40 zpV2Rur$!rVGI0tJS3hW!|JT%N&(E0Qvayh~Phpu1`6HoKkdlp4AlkBWE{-U^bTcMm z)T&JXRE8F_DXc_)+J#$f)>s$qLX-mMK!~w8ty<+Ya608O!tN+Sv*#$~@5M#ODMAFd zJ}Kg@1fdFvB{vP|j!7;ZvJX>ep8(}r4Qa2{iL9F)D51tq>8544@N^TwJ7POQSy_4! zWkkNsTFz6dYG)v0vQW4r-I*dPoMi|7aRXBaA5~<B?J<Z7goIGc;%t_q&NK$JS4^~f zaB<Tf=pYcLD;HFg1ncC|#aZWunpeY`rBazH0K|j|JD=jarKmM?6pxN~;7B)8X<0H* z-E_pNGP%09h*76d<#j=EbuXHyXX$+W0aThY&;GPXFKH)Nu)_TGM}~T#hU+{i%~vUB zpC~0JZZmo5W5nBwqk@)f&|L?H61(6Qe$Xn(lJ@fk+0(TnU1D{-+=z+A#%^g-OP2j| zG3Rf#W<^CPnfu*XBDcNG!0GonWoH8m4*KBvF?u0}ve$_~kG!qx@qxAzp0k4<E-YE7 z$bea~XxV+esJE`EIjX#`z8wEK<%N)Grp(ux=J)V#1cm7!Nf9erbo}6UnpFX*c6ze9 zi<?pMF~*u^I<uOk;xb%mwC9q6@^-=rqdMo8i)2eqFRmKBPD>L_Ntcos8NS>=a<v}t z9zXW&WjL-RdTvQE01w-!_~nYsvQY8n?IT)r@90&tUTvD)+3kGbB-fdb{7H$)=O$sZ zpB{qLd3t)r><A_SrBkov;#ZFDv-A6a6t96>ZROaM_7KM+y{y@6-e*jxox=AbneZa2 zQEnnPoEbB>LSX}s(BUU>D57Uz)zP)Pq{W*N{`<m(2YS%DtBi8g4A?&5Q0m;Uo2d6& z#si*Qe$!EU4N5eg6Qu}{7~GBIh=&J>Sn{~v8Y3rRCk)Y3O_e(^c|V-CQ0{;dF$l4b zZ3%L<1)suE?!iR<_;lA=sQIcepvCJ<xLM4gyR<Gk`Ah-eUc*fi#61-^H~gH`kf_6a z#A`!W9pA~#tXavGzii!v*l1^a>3#U3`Oj+7&Up4RSq6|hYrdft-@3&K{nS(-Y^!&! ztI9n-+Dlj1%bg+llI1xb0S<b{-n5C62EKcdcxw<|eX8B4czi5=SkDz+1ybIoRFY0i z{Bbw07N5+`vKlL4<!V5U19eqVIdXFeTxNp8h$zMmw!s(`NJEubP|rGSmmO-Mdfq(| zP8G@U&@VDsdzd?Q?ZuC|(r!o0a2MFSFOu-|^zwkk*!1x`ABfLzV(&<1Tu906V%xhq z#=g2B$gZz#Ed(wtT4@b1yw2@JPfCkT_pIP|d%Zs_a~gu6t1nTTq>Aa=n3OZ;TPJsB zUnYuE0#;~@CqxMos?8)_B#?V%%~IHwmYTuqb+xnCtY;cqGqS}3PG87Gld|f@r?tB@ zsBB#x9w$2=%pkP-qbsrN@4D30XyQ-h2J5xXP-|(!JSZkD$IFfijh}9pR0&o#5@y(# zA5zb0Y}rBhrM{6<^uS*6_qtck`U1zxZmUI<f`?B43>nI-I7J%rePKGeQafXN9g6t< z--Pp3r;0?T31T9kv5OHG>Z8X6^)j(F2KC+DT?ZEM-%C#Chc2!J?L6sZbRlO%(L8Q^ zPkchCJ3NSdlmkI_R7gXLF3)*-W#hr%_A|`n?su<bMKyevnSXsJRlf22_dG_`l+Me- zUu!NyytpIJMC1trNddHt;6~hOtI7*hBZHp+?~bm9E;yVaU_S0>+~L=lnw)#kYu`>* zbmN6JI-(%XgkF}dgJrpig|?4NF^ks;N@(3T6IE62prN36B!TtfIL&@~KIZZ8*SSyD z@h4ggVCE7Pn7fv7*4XE2zOOt+e~JG?5J+LehbQCr`uJR`w@Yck*Xc8IbXiy{Y{JW| z(CxfB`$?1iQBiPF-LoN6*4a@2^vBD*t<MQ~^IOeX1)IKHs3vz^MdDH&<L;MP(XIW> zg@w`fWyL*<6yrisXJ2z-vGq3*bmpeO?mBUOgKeXhCB&nJg(uYoQt5PQ>q@+Ddcus& zC;gin@B)D-d=lBMpK!E-Vb276NBWNu@BfKl@V`<K{uhG5|0V0-f9U@YHrxN7e1`vz zmj7=G^8eOyYB8walTM<dAP{DfSb%b)yVftmLz(bDIz<xc>D|x8;@m{&K*Y$wf1F-H z+RG+{K0(epX8(~bO2w5WODQ5~%BH!UKi@sjA^xj=kHpS7agyC%@ZZ)5BMfWR7g*rF zNp{~nh*-r4L`xPd8U>Af-kor0z@%vc=_#??0y%>SUqND9)tWiW_bo_>;(-ADD62*+ zt2{gv7_?|njr=-cA1Y)t!u?<HQVU`kC30fbi7ya#0YUPBsFnRwvF~+iM8m>eBvWbt z%wa)5X{bLa07M#T?LCL7B9T|4y|%udeMwCXittAG_Bk9Skf5f98#%;4yWO)<c>?lx zUcs>3^M@~bLg<1@J0=4LhEey9Jyqn8kYFN?-m}no6~Ldk%hzOIj*%1<2*H-|O1XmK zIdb$?rXdUk0FThBeX!7fdqW_suXlPZi1qcL>8h)BxtS|mS<ygG5StMv6b8QBtl8ni z|I5mEBN5(wx!I~UQbV9Iw!Tl^l36M?dT=ALDr|n2t?;O?cZE<d_~J)x-qh;MZIP*{ z_J_fX|9S{|W&1+-#FF(r|AZNk{qV!{EbMwWea-UQdnM+o{^)A!++OQaJ;}JeRDS~Y z_Gdx~Llpvdj`9VM99QgcC9+Qyzsl{RKJS|8tnDiBc|7myrwcqsN_gdPKhEZtU7Or` z8e<1rQ<QKq^U9qL8XFsTc6PW7p@Hhk-O6?EF~)X3K)45#2FfR?E$^TKj6w1$7v00c zg##j~aN!^T_b^ER+4F9aIVgUd-ecv(Lft6O;&671d$Tgf+bLm)-0bKUuF#6GBmJ0Y zBc9++#gvqhLu8!{w!YE#9rgvj_d`_QtL-UD7pLHt$b-gle+B?Sl%>@?Fu~OHCjhYz z07MjQhKFsiyV??}xV5fSCU^bqzRBFpL{#QXRoJrFXOH+%{k1*F$I1MV=CVLVuewx~ zykwWVF+-S}ZN%of*W_kK-7QVobD1X)G=rPxOGiUX_j;;D|9AgE`m%4LOk<)6I!)WO zm`CM7pITYNx4F)Hsg8#q=xP+~DyD%58uZln-0_60>D_!5U-!B@S@mVzb%t*@<hMmQ z;&jor?jjbs_3ybRTc^NZryd$uhV7Kv-}rC_B&<)~m=;}#xw!L$T{~P@ytaT5JiPI< z9F%JZ>&B4vwi-!0R@H-X{xEHE{b<rbB-heTtFo0{R_(e{v}IRwWB0a3T?XuJpo*kM zBk`VeDo&YGYLyGN&fs8;e?IzMlwu)F39HGB*lFif_3Q^ch|vx=P}Yqve@)NCcdK=9 z8YQCt)o-bD{CW576AL1;O)2q`4(Tot#UBpILE#gd{+1M&KKxZTDaE^6kyM86?rDAh zVCH3n{Szx_(4(`peO~___od>KVtGPFY^YnM{iSoxG7=i3dJ&mmm=a3pKAkH`|BA3V z?Wty(TKkUQ#j+mLfDqFz>2zeZCthi`s`tnkMF@Cs+iHjKBaoNl+$DwSWpVINOyj8D z=f~94)bDmmT^soKJzqY#PSeL%E=}(Wl_`6DFnycd^1+jG&}PCi+(b`L81f;#oz|n; zc)^8eG~W1fd@OHkuA4^viz4Gg=x{aRi)j9r3**P(;ODcd?XB1@Gt|NBouySdoz`*9 zGzTi|KSe5P^b!H;#5wG)zT&|R+gBE7>>H}{7~sHeoRf1;JTRDT_v}dTz+sd!RCisX zzY>IzgJEVHykmxrl8`pE3jF#s=#lEV)KwN<F;l^^4Qy3^mg*pw2$7mSd6*t$R`B&j zE}<^JUETNYuYs?WFIqi1R!H(n<z;mQ74NyJq6_JdDcsm3Vjb=lyoZt_LQ)b)MahPF zj5Emg(=*KCrryz$nI45@1`vY+ZCGbq(k5(axz-2n!hB@O@6lYP)-{f_O^v&Y7~Ytj zu@m-62a0X!&2$tmsATC8N6=neIwnMcF{@+Dfq`yZ{vHvVwpw$B3E|8cLMRgcLui6& zeH97W9!mFNl3B-5u3vXb@%_P#Z;pz~SnDXzO_?LV5kB@8y-$5ERGW{MRtUr{CU;Z$ zi%i9RnJ?T+sB+FU8>}RdV4$>=-@E5P33@86a>;2`-MvZkz4q+ak1Z&FP%ghb)GbwP zD_Y8v7GWyCzbwlL!Z|@hzH8%tikqwUa9K|x;C`zZSE_+Jk}XPzfbsu|J6#u6IDS)m zJ+oZ7e(%K9aoIAUozaBN!Q5O@p<VcZoU;X0RmtflGBC0gmoJ2A#1BN27espCK2<BA zlz0FU2?&@UxXlM6$4(Pb-ND2DKTlL(aErA%XmmV+2$U`JoH#$=VG)!avm91cKz2E* zH3KR%<DbYsZhB4g2p|+A5OA&?X7(Ez)+WYxSm<9NNI}JsNfhRYJV}XzIVUwYQ*e+; zX4zy&83`qYp-DtUyiRw^DIyFo>u9u+9|m<Sp-HIq^dz&@FszzRbl)r+^E7?wrxb2t zAR|77nVacEhuy2Kv68XyuSMEHU@U({*AR*4p9LaImV#6+noE>zyJw<b^>u*SMjGbe zgz;Tud8w$t^*_%ELjcs|PsiCicU^6V^SL@fp?;D5Q%NY-9O6G#&6h;7G>!_njD5Jt zCxPH9O?!G4FR}WYw1N1}*xV?{F^M13N=F~c`76e22rJM_LOH@i?0m<Hy~m=-u$YJL z(mqf0{I6#EVS1$JcChLFubsaix#>x0q0jlhhfA!eXLTihj0@%q^8CHdrx_6t2q&N+ zlr40PSL-7HH>SO%d3aJ$VU<xr6<KTQc7Gp8;UkC5BzwStf2t%`ZdJ80pVjW5)^xm| zndu#d{-k5Y+yUq7RhVH$wNR`9GurjYKSzkrj8f|ZB9g{z%Y{XJrAaRo?;*qKN%DQx zF+N^-FVkVtXQiD!824IC=%nrGc5(^aTY}wiJJ@u>10}K*?)if(fABk=p#iQlkpb$W zKLF>Q38_5APykihHM&P#S}=cLsSv|UMa<_}iMPnJnu{|Mu=()}Re>Kh;A!;FaZcTr z1UW~;m-ue_q~lM-tERFDzEPw}i{#aMg^X5Ez%Kyc-(or4cL)#QuU7}95O`}rMFhZS zgOOELhVt2Fwv<dASI!IeG<x!8-B%9-z@A^$kQ+Nr+PL)@sJQ_0i`W+m&8DS6H3V<Q zx~ccl-+XQWxsyH^cTNIV93IYYl91tnk<E*j=PPwvx7d{2-3q?OcH*n=*)~Vfz#{F2 zXqZ*fIN%?R9SA@j;-3vjZs*Qhfxz$84tfJEy3k`MFZ*fNFdjd2Rt$>*^l|K#Y!$0k zWruO(7`&)%1)E<*2Fq?4a6Qn&QaCIikvP*HMSCZ}d$jM*M)F4vXLwc$QGt1NhMBy~ zvuBin^QrCJ<5>bZjA+?q@pS0BUO&URtv({lUZ%`GFN~fMy2-rhgWQP2JvdVFR=&!C zfS#(vkDuxC&%h6isuggkZEyfTye*y2MWxc^*B}4ccI3vl$P}_#f~&zXIvodVn7S*N zmDp7$SS|hl&6XtcE-fb+#%l2Sf~UFxd%s(b*wXE^u+*gMNZqIEE7c`b04QGrETOYj zzGyoiIp5kYjX+MB;`bj45_~Q`j}JU9(FSBGy;`z-MDW#_eMNVs6bQi8g*&ySP0dm^ z+{Cs@kEA%DUvZ&wRM7vNVshPm1UN0?yvYgBgAFH?f1wm&K7GN@%`Mmx=>>`$2|UUm zUY5R-JSW*@Y<=NVS8Cm13i7UhS$%bOy<948t7#-=uYCKhz!A$Sovb}w12uRr_v(-? zAMR@_HpVL;*^l!*LCkO(;U{WJ*bm+3YH3IN2*iW<<0Hdwo<O2LR-gsI{_QL5RK(&K z+rRaZqm_mYVJ=xwvj)xQ5bW-s->}um$6KW;9s5@{2%&z0ea?=eB&D|Y>~{UIOWIp3 zxjaND+R}sfU&5psGJ}iDHw}9{D2He2=D{S78D$&it`&YD1&Cw0+9^eC<|}P3O_N+G zq+JKnOpX(-jo$JHMte|kxY)?uORrz8IM;b1vLF;;;-5#T@~0a3?9xSHs615QP1n7U zg5)uewn~KJF4F&2+gnD()kNE(Bp-n!B)CH$xVw8okTe?HA$ZWnt&s$GLSw-Ljavul zZX^xCEkJN>+@a~<4wvt|cgK16-1mN+`~K`7YwxkDYE;$UYp*%itRsKC8*s!vG?LHU zm#%3Ia1N7y%8=yRn-u7iv4J-~<MSKSn&OhC`IaL$7bz{~33K#A182(Yrgm{q#!HSC z?vNljNe?9xHdYrek4yScfV*wwkJ{kl&LlqcdZkmn5M2_vJvkx+I+1HKEzv=Vpcrl4 zk8#lFH8*Fhagk^NIZ|SHmnO2qA3NSZU;fsN2A>VCq9{uD2D6tXo8*g;YBNC>DdObn zGFwNb6i|(&q8563n(EEFty5ZSr_xwLL6f1|YCAp^KMbDD*DY$fz%9<C_w}}Zo5QdT z+QNoWXG{Dk@@XP@_^5|WfJqhbe(A1R>c_gzAD?Nv>!tbC7(y)JY@P<hn7{+`eRme7 z61Q;I*Zb<0Mkr&m#$qVdBsxGHH4_qb{kD^mNli@O*EJ67vr7YQ(m@GH6giL^b=yAg zc}UblE3(uS5Y`zjsRaLUxxMS<aC{Yj`sZ_XljiY3FgH+UbS#_hN%(jD#VjMveZEWm z7w7uzclr3ONQ>8ytn60z`WlmKlfqF)IMg6gz%?x{a!oztsMgZ|$9-`rt{iob9ZQQ@ zU2Z__!ViKP0<Z6*Gf3REJ$j^tSWad=M&#wZs7a#oysA*;EE<fSh)pZ0zt=c3Pyr2v zwtCyLfSlSXhs-V3`5$A&Yh4dnCeE81y<0foVp8y|6cY2TLY~)ysw>a*RDG8wgSoJm zC8we&YUBb{fP8#&Plq)4JU~38tumHp^4NKv_STK{fet!A3%2JB*l11dehS*hxRAl! z1#7pZe}1MJi&PCH>@RR8dY<wiKJb$eJDZPkSPVkl-!P8;-PhMkFNU`I(U!sLvclK} zids9Faw|=wc5MEl3EK8zkLC?1Ea<m3YEY9oCarn3;$)DDl@GC2fiELg^RzB^aAyhO z%9<f8eN-Xm2eW~TcUMkf**vBkR9W?_j3Fb-eRKNBOf>{sYWE5j+U9vp0s-6G5qKH= zvihI?+)O?0VW-76{l<qKcrhddm37F}n>T-YnnciZJGp;zDIx^m6wcz^IPG8j^}C~| zzx-~{KtI8wahPi(^iCD}s@iUv9FM1$3>#$hfGfu1>x*tq@$|d>)Eo(7=L(i(x2DZ+ z{hLP`?^3l)GYx#s=$uNE?%H}d0MO*K$T3U8NmFZO)K<pBiH&5jYE6gI%1w!6oc{76 zc-g%PwV;s^z6?9xvX<2Z!!pb%+ZrbV(C;xY)h+&>m9L`6(HBqIL!AiGb>vQB`UB8> z39B^KJ%1sdRL_b(&$9Dgb7o=oBVdr*yMz+I&0?M1HOaUlyK#dg&A{_g15jWjXXVch zXj*yf_WFmdj^C4cOub9~TLYEK*Sr>HKIj4C;&R3cgKTBZ_~B|j>G_v4gK*m9u-oYo zi`dh%ND=qDU5Noa$3G!w9am1!d=14g%pKYSpB@y$wAtjD5!v$Y@_Abu(^IT(YoZyz z#VXL6S?g?5cP9izKTMW*)?LRc>}WRtjgzHU<apzEmV)q1+gu)9qYo55KdNmFoW%ZB zS1WmUHC^-5)1hevKjO#Uhl$biRlj?_AC_J(&Dg~IChwOp`Dg-<3TD3oLyr0Avc&B; z!`ZZ&WF{vXJrN(K9BLD!#QkbNgll|D?JZ7HTQivE`C%wC#xU)ztMU$Yn*fsGGmmBA zap+)o*1VX7-zis2v_79bg<T2kj>HpBs{C-SL%SCA)6Ej5;8M!<My(yXg(va;#cJ*w z-=+IgNJN<mP5?N<Q4gS&OTAa-%u_wF&^Td?G^%#y%@Y@H7WQP34BS1680=p>FnoXc z7u}}HB9cRCXw;W32A5%~cVIMlf06ssf-!*W7|{CYX^xdBnZZS3!Q|wwQ)zG3WXI}F z6`0zhDOi8KXp|`m5tpE^8gfzQ3N+{OKbj?w(>Uot0L?R`dZ+AUHzoXcH-umb8(B=( zL#L+2vtm9TmbN_6xrZ5xPdyXlu3O^Xz0ErZJktz0zdCBPs-A$<WIkfxCKbbfMSrmZ z%UR-cN@H=^9g0~LZ-JkXOmiuMp;D-n`B{0=rwj#tRzIW;G*3=^BgF+C)G%y4hDP5- z*<=ENM+NV>=~}!QA9+{(-7X)L17XrSk=5x)1m^jk(`0{nKUN*+DoR2nZr0HPn2|lA z|FYxqF)ho}FXh?gtp`fAIEiE@0PUZ9+oJ_T8*1Yoibfma4jxtw>9efq8_|vyniiZ? z$^3qK{4>*f+!Il3tc66g-ZGeHG<xqS=M(pucpp*HQlF}2Nczn1+2K8@G=0)GH7)l^ zY_|_4pM{N8Z0h3WHBly}XkioRhozM@GNBw55GH8BMNS)Q^8%}^5#}Pn{4M(2=lq$^ z5ZpyC`O$a1zMf_r5V0l4#AL<^dfk{Q3LhkEDZK%FynBE-_ji>=D4IcSDTA1p{z2__ zz1gy8^A7g-8TGgkUv6gFjC*1Xi3GI$tZUqvODy3S9nRxbADBK-VXaiOeusQDStu(l zsLe+{h77Y-*60S5>jEVX)|#h?AFs}ZzMhC<q4*JBP>B%Zd^U>~kuO;M#5xuf)cGz5 z`Hv;pOLe-{$E!9#n^Ik27n5{b^Ov*|K?_H21{GX|F;7<lW@+iD%E{u)g2Ku_VST2P zIPK`zm$&44=QoNWIHH6_(VpL<>1c~1<XgX;XYo)U9HgD>%&PAiXK9Lhmr9}fVFVHW z_$!YY)Y1C~1lG`cd&7=59ISMY@O#I1YHL0<`gYBki#YdQcfVY6$h~F5vC7~x2l#lu zEbYkP1%9^1)k}Q(rN6e_Mvy0pF)RobhLZ85SbWCXj8%X>o$FfHwYC>ZS4lcm@Qyn> z^I}T@KvK`yaK<gmjbWwc(vyxerJC{3D%VHf9ql^bnyUMP`)d*tbwf0%clE~W$n;R= zd<hAfXXmUSP;<&Fz?(9A8=FQ0mz}(or@6JSvG$z}*w}i;`e%M^D+n@>iB8M>@*Y=b z9y|Oh|LhgrcB84beaH<mnM8S&f&THgz!lwk-8BUZ$xLpSEf7v*yASTw>NIET4t)@C z`_EIXiDN19zr`LRe<nk03O#MhXU4}#p2>vby=EWHOTYuRc?1MH*o|Vh8rC?N-72$< zHL1bu{L@s5bLj+Oj;t#|)XLAWx+HbhkhN&F2yLv#soHcTgFYn5Zp@jF-!SQ<yiLgV zyW|?Ij~gbL-joSDxOP<Ta)vw4%}Q<RdeCVHfW|YOYq?JE5x(}CKBoS`Ga+n<?D?S< zAPi_29q}=RmbWwSATKX{9X?TKV}dW&M|2j>wqBd}YK86o$yppNzVeJ^gfLuK|F@qo z)6i69bN}XJUaaU>5p&Zf-sdd9gRP4KEJEx@#5NSAk0#DZp5p9IRjVFlv`H^XH{}fM zd*8;hykv54Eh%)2EFVa8A$i8SM`e;hHYBRYu-;Hz9xLSO5nTB3x^D9nmng$ohmUlq zIyY#D<08z5HJ^qCx{tuQEN`m)nO;}7;gKhh?AC4t-2A;G9?dlwn>psp<&x1OL_M<Z zNyX+;d>n(BOUo*dqNeef6g){?`(!4Tl|`qchf*om7N=&8O}nDWqLmqD6fE~@MIfg> zo#zC~7H5*I`HyH0z_L;mifh5H28Ao;wjP22g(iKN7Z3WI)amW6;iRCp!@Q+}#?-=s z>o>TJm>9sLLQob>uy9G@DgQn~MQ;<S>u#D-X2@B@BeY=yN(gvU!SY15eycRD*}+N8 zLoKfMll>A;k{)-&@1w>{LG?i&ZYGoL`6XjHPmjE4n@nGnTb<p~;-{^+OC5VnB_h65 zr^xgHsjH96ny<1sGb*K8u663u^y>|>^E5a(Oqj&%sD$(|0sg&LWR+Lqm9JRLfo&qv zpj`#t{4`QzswR(%cU)Q_q%y!ky1LkTe%OAjy^Mu)(5J4MxmaCFCwt5<hi}tmye@}! z%~3X2q0Zq`tb@~#eu%T9v7Yv913=*?=Vz|}$pz?i?RBdosrM97C2xi}I2tD=EHp~} zeV+I>{-q>p^+Z>tYgR=uc_MtK!?Tx}xY$Er%P{v##_+oHyESGnGj-Cz+NxcJ>iH^@ zOlR0b0>_cu^K3w$DVHY|4_@@Cg!Wv1R<yxF71DF}(HaER?q4!?5^w6Lgy!RiHcARO z^to3GH3%kJ&er`F>^?eDrg)$r#;Pz{{P5WuI-D)f<}!h&$oV_gzz`|@w&;QIb+Hs( zJCCZ5l16Esip21g{-SF3r<2b8qYY|3zsc+5qsJzMRac#5#YD^&=bcK%n%<Ts_uGn$ zYZRZvyHM`r6xUmF8+iJ#0$p7(-J#rEDWbyafSm{xV^uwm-;mT|r)KoTK=<y+q46TC zl7?*Md}b;$1-I>X@7l4aIW(Dz^nr&2)2`8=hmvtK#zMYQIrQ>-P|XXVor^_3p*gb5 zIc?<HwAwzwAmP2`nIw2?)?{K&b4(drzBR?84b!W(8DrzDVO7?<&78KqJ%X{W8!E*) zUAJ*!`YvoCn<t0u`~%wjf5F<tS=vP(nA7BkfAAQIsHrEfzONq(oJd3GoT)8LUUb#? zbPear-TzWeTsyhGWjm154X5BUw~r0Dx)d51_f$2J%?HAaGu29__hc>yPyKUqTaC+R z%5lx<8{l&VB4&d@9ts;GqEWkE9M?{b4crO^A3h=GEh@A~d_$(iSf6Vy&!sqnHg<oh zK2PaYO}tw+g4p=^LwtRFOr-@9IJ=RRCJ-GVm@<-q+M8l;G4pZ`ney;MXuh}|9CS}H zRK0QA3M6N><IH5UZ=n-*EFG_P0r6APT7lm8ZyzabeF+Fa-fp1buJ+_5jw659G2gX_ zij{|_UlqsK;vQJvfJe?{F0PsLZ!E&ECJRaPYOGsvsjusU?k=Hn@3fw4DyOajdf1lT zB9)PgUqQDA+p4BGaSN_XYpNMb&kp9Jwd}8_?6wZ&m_JqVU;@EP(r!Q=%*VK2OP}8& zuKT$B)S82C!!BAkRP>=gmq^C!7g<m@+mAV)X+FMTytZg#ce_8?GPs+1=B=ES({SNB zoe!nvYWasLx4bBA2#tz}Xeyo`d}LIwXgp6p*L1ixzJc1<+Y{dN@}+>9b5EA|=)1CY z^>Eqt7R6=A)~Kr+95+?ZXM`tP*3Hfs$33Y`Obd7<RH#8X*sQbd8<pbU4GvSyfNC1l z(_G)isI*U<4kb)7Cm#FTyTcreIk?=5J5F>Z;%F!m8<{DqoDnWMR40*L-_jl`-G2QL zMCD282>BS-WD0^hN6W3PX-;b@c7$h+tcry_>%L7*LoL9uDS<P5wkI@$Cf((io2N<7 z+00{`Y5w7(&8J;LVT@y`mF^b$$0J#rkhi%B^O3nrhQ`Eo6_Lmu*kJc+qdFva%1sbj zd3iY1!}u@71-Ye|l{>pQlbMyvv-Lxq@S}bJvwxV9z+@Z0VCa==YFCR`MnI>ld$22H zbj6+0*JKEl@V2mNXln9YR%6TKHrItwkf&0gmy_f8A~TaqE(8e4pp-tDdl0rjz3R7) z;1-y2LX)ylz(a17_mDG1Zs;ki5=oi{UwiTa6W1~?S0dE_$frLpk?splBH{p~Pn!`i z!*lAWS_El$2%*yq)i2fblSKE;n-~omIQf&mDE^sz;%aI}W%14QRijb}WYH<j&K`dI zmUq|G48=a(BRaL~DxM{!KU;Gi6WzFU&{(YjvUOszu2ZVCUmt}1M7F|R$~}U-C)pE{ zR&UFz7XAh?g7uK10xcJq`=LZtmG$#E$eMi;s<DZx*WKFItlw~2Heg<?M+tOVNxzUI zA&T%nUA=o>P9`{`_L*I#P?86OFb}a^=(8_Qz?;rc7jh(E?)mn+=(L-wfKf5FDezRq z(qr`kk8L3sDlMm}u;YBNdCHaiv8yjLhclZ|H`j5<QlTQyzWzwuur+uz;Pl!y<#Bgr z7B8*zu!aJzW&!=ln_&U?xg-wWZZ$*7w~Cl~u54=(e<fxCfaaE{D|E5dqu|v?^MIm_ z-hntVpi5ISqOD;zv4UmIl?i2b@>zhjR;9YJvGJ3g3&TP6#2Y0^1iVpDN1e|{yUDqx z6`lv*;6hBRl91(djUVgz{H5}Reu-f>Z1wiumy%;IBDS*|(2Jr30Q`<OtyJ)2^uf}t z{Cdp9LU<8e6nwUJ<fMwt7n>udi2^T!U%JhYPD@`&_n>Iw0rG#P@M;&D(8^DFzja{? zC@~kdcMm?~8@EiBu3XgZa@gbviBfC<PurWmQof3RYZ@Ka=D`~cFbKZHB!=wK?@CJ= z)+s(^YzKg`DTtZe&&inp;6_4XYhMa^YhsAP!sSMCJYfH$Q9YY=rqqJZ$)2MwBbYf8 zTkezSTZJ5<o&#Ypq3_+WM2ZcAI1$O}a<)9!hOzeOQ0nNSX{WF|nwY^R#$DrFgocC} z|A5H~+!c+zr3Q`;{~nfPt3aH5vEIo7c*>wkta;IX^x-DPNR$BaDkv!7D*k2{D86r& zxJ2{qV1%>1`|VA#GxA~#?;&00chvtJm$B)(8!1K?IGo$|{O(39<Td#H!fln5c*wFc zzU)?OF-ceZ^DtjoCFU6=H-s-ZEU!_H{{iD`38C;!x1~5=1pN)GA8F$aZ_MxkFh*~; z+FjeA&p?$ci)LD9<`heNO755z+?RnsvBz&xJ0OuipdM8`KTIj5jg%8Uz4sGcY5rHj zwUG4TqV<qG{mlLZ3+qkl{|~m;|JF(Ump1;}Hp1cupa0qC|M2&}*;Yv61xO$LDZ?6J z-Y9@dCWejC#<Is!TE8XyUKI67oVHMFv`kYG@|=Ovx@>nvbT`HCMZn$7C9XNK{Kv3Y z2bQubSKhyKKIjQ^QlIwepK^Rl)32O-{q#pWenib)OG`_WDSojyH|~P~t1CjgJlrxm z^t)F6x)S;{V8eqdA)qng3cF<IUE##>&)~Ks7a#VcOKBqaVGxq8M*h{*Q$2Rl=)Uuy zf1URObw`eI!X7>Mh)%fj`mNGtwe+5Njn?GqD?iTxF-n4uloQ{T@E<?8uRo)P8tWIW zlX5R{t%~Nmj_iy%Xx_}=8ulmy|E;(E#bArYq1^#}PhCVEmUK4c$F%M>1<#ZNfxqEJ z2{^M+>>Wb~RVWilvGGiHn^!-teS>e!OAGN8jnofQ797gR)01WOw{_6`_fNRgmYYuv zl3}Zd{m%uCEtg2+5zs{s0ga%YTp9P{MYx|K3fuanr#?TG-c?;d0!+KEM=h-5V0o_X zPj8#`bly0#W#hETEQbHLPLh0T#mdLLd;Z&eHJp$+hc*~Zj+x)zh6pdWfzTMKm+kL> zMO30H_x!&pt8H(5JHu0)PjWKGW%7<{#!E3+He>CdSh|>o%X-aC#_)(q6cpl<38iVl zRw`hxR7t4@Fv~z-*tfgo^Fs2M8Q4(4o!0js<FScId^IZLn4kYcTw5V^((Q|=o58RL zoV6we-~i`HyU3|SN|c@QgVR*)?*!^O*AZzjE~!k4gUT|scx+AC(_p%UW|v8R8%1(3 z!(gMw;rAbR>5v6p$*I?|a`O)HE9uK@qtJ<7M`3C5d!qm!@cH8D_<i7g{!b!J13B2V zpGgb-eIFWj#(V!w`3oU4F`^#X7mbUoW=`~9XK@c7a{G}|w4hgiuaBPTA3HH6eks%v z!cG8Xb3fX7{j!A%Q+0D=ftYe-*7{{FhcC^T7j8})5vuG?*k~e`^rX9WFok*M_WSg% zVy7M0jm}>>(Vw=f{r%HCY^FTs5oeJ}(pk3hL-KC*)lSVj?Cgma`C%iU`!5mEQcm=& zVX%W>u4l>s(%2aS8H7b!z~9@RYJ@*ATW~ME4|Y<D8#9<a@$srVaey=c=k&a3xfbIw zj2iM)4oi+!Hiz;m5MLh%37!e`ti2BYps?{wzgpWi7JPkfTMoNW&V^avn}7h@hwB;z z3uuDIDqN(JxFMZC5dm&+2))#Or_yGW+O2=%)Z!vbp(f_yQ4BM_k~F}N_!*sN9&JP6 zvKDQ8IAQJd^98zrE9PMp*pIfaH^nk?BiWdja#s-a96fegChnG|8VRF@k-ok7d!@nK z0wzh|^R=e-tNB!!*``DCwV|7S`o7p$o&tP>--{!qnzTB8%QIP&P!}jrpoiF+AsHj3 z%F(dDAc5d>=s)_N4SUr&ADo}lzjzg(;_$q>%)q==s*+m7^@dyLcQ4}$<-ORaSMPYc zuLBzj^o9e5f|o(oBOw{vR5DC#;{6;0c_lqksdDeMW24!(zqSCnr{9O?2Llm7$1a!q zT#LUNs`?LhO`0-+en{Syj0TA1s)%tm7o6@?sWm-20mX{fJT+rOxB)qUR|pYHKf}$P zB+zl}s%k`@l<3LMHu=kbBuQK2lcn+PRuU*>_jjvnJ`t_Q>)7kL8E3;H?Jbv`o)7l@ z;b2pd8NIP)X||G_m4*Z2nl0yyX@q$!4v=5hZm!o;V$+pYV{(NL;Ui1)hb&IU0#)py zR7;xn^?BdMH-dfFVpFU79V6qP0hco!^OJ%G`GrXjpJk;v{=0Gi<YjLTok!B&wwX-I zQKlyaofVOfbFFQ)PBxyY8cjCb99P};rut{De(kmV<HYGx?zcK$-HoWFO1+C6y&64H zFp4py_U=dTa$Ckn%<Y$*xLA#K+Sgt_^S!nI(vlJWPDG|eDpBYh_3=8F{U`!4J%7c& zjecKIup3z=#kf6aXO#Z_tF!*rdro~j`{sE>K1v{p<ovyc)`2iO=*`=(NSX<g!W#)j zjgGc^BmjtTTcttj7y1n%(Rh~UB_F&1R*W$*L_{fMW|IkSe_qOuouq1gV-`shj1T|j zNJdE@v9*Ar-nV$U&{}1bW!df8Nq?eEvIHodyY<<dWp^ZG$!pnb@*ctXyP}RI^IE3c zZc0&zJ0lDv<Uzm#i%@F>?Ng_-McTqDq>UCl{4gctIPg`6oG6AlaY29isv>y3*S9@J z{E$ypv6nfsf57dw^h--Vwy#ehc;c7l{wn2`X;-kIA-yQ@!qq}Q)sU0QM{?h{(@<a6 zv_BYZSM0IR#|)hFB>8!{xV*{-ue=}m5xBq7`y(u&XG{-t<9{S}buCqQ7rL7|S;n!Y zaXD}BP!2Xc@C4#@)CYW`gxX6iaCn>ln6dEnrWhQwAWdb^2ErtNYXO<kHouc`Nh$fO zr7GG>GM?&RNX5aL;D72AlQWW<czye*+xTt<_*@24(+14wwW(*O&LF8SvHksNx!ibW zu}n&cPp)2ZBL_@Glw72>LW<5~n=BgOVkTBm>Ox-c(RWv*gLo^?70SX}ff|8>7*HJ} zmkq(Zj5>)OLrWVxuX;Uf<_{0gp_v{GphZ?V+=HuRr<N9)+)JzpNXk$3h6P=_*sqEp zP%5(t8e$xYGE8E)*w57OGVUp!t<;!_m1<s{dLt##HKs6%;qFfJ>oBKt5yv7!ysXT) zp9K|MHW~r*7|t`{TJf{1*i42dLby-PZcH+bO#_om*Ot0OZh!;dtst4w?k-=-S(NYA zH9_JCpy*19-dW6Z=Xaw`R$XKL8jX_sgz+8*xT{j31I*k2Pk$96>9tvmo!fhd$l{<P z+8{Okc6WtyIKoT2Ek3*@cbP|3#Y=1Q{lKD`{)W#a?cT*u;;t;4d-d1GVJ_EJ1#6_4 zm~9Dt9}Yk(bwcR6NcsQ%Yv07n3*1UJyi2K=su6c2Je*h0pD+Ei>njUFD*R<Wii|qV zXLI5(n#_j_nHGLvZ<t4q04Km3!^6dxy>24FbAYeCT+H>I_gX>1)y8x7Cze)y`*;Vn zx?Vcq$<kJ>OdInHdp%Ho_-oe7JSdH%CRhog$jHE|_@E=M@zVqIjqhloSEf*t3Vc+h zu0}u&8{e6M-(IQ;|L%)hh!brX_ie64WUkDYWV&(*^_S*{f^;D&!qo7r089PC_0|GC zRV9<fUqULqlms#FMfO|7cw|vbyW_QUqZB8&TCv@Wn?rZiX|9(cuhNr3hKFKR1_~$G zEJ{=xX^)<QRqF3QqNnIz{#5FX>zByRx>|&2U_R;NJOSk-$Agzs)<jv8ms1yHpxM|8 zJrL?sRe?lp^{A`gr+Xpq)tDH2Y#4}@)Fj2<SY{Pc%&;X?eAjAQ{hpKQ<uJf<7{RoA zOOjKi2b#G~D)vx@YUanXzrv5AZ@XOF0|t6}o#hL*$GDlCG33&J(7uWZY4E%xu<_(Z z{tfE5J!s1+fI7R#dgyog#S;fbKuC6)+Dh}U+P7Y{{>tcmvPQ574^@%f({ePKYQo%G zCkaT4-*^`}Y)0Hi3Osu^1|42&7W<<W1+{G^h;ob@Avvg&any<}u4!9*D77SgwESsE zrMBa29HR>C2xGr>{1SjErR=^fh}sRQ5ZqTKKaE?Iqkh?4%7tlSaxYQ|pi~YH?PcPl zOjJtpXTO}SlT&4}RoK^YQjj?VJVrc_q~pASkPC>W&!hG=CCF`rlQNyNg70>)S*4mF zYrmlN`XaiPkMs%Twf{v8ZG0qAuk)5e^jO*;g>vYk|M6ocy6^(R)GjSbCHcSnPl<W4 zH9Pp%<u6>@q#DO*wJ2Euek;g0t(>QC8F!Gr{s{_W&cY<a5Pmf<Q(&_=wOM1U@SM?4 zm`rR3e=JG6KWW6XEdXtVme+@0>>AjbSqXN(pAdOZ)u84)QkWA9*%KlBv4Fo}h(l(4 z$okn48E;p+(rlxDlgv}8A^7Xq!tG(Ur~<;(kJd6EMYF4mQ00?hK3PWhQmr**k=?)M zkXZ59Lh%^LSG?H5hxX`jkY7NTXRB|yTd#*%hW*8<y{>q-0HhH)Y+9svc?w#oZncdk zfZ1uF>A{N*<|CS+GnBSmH;aoaZ;jZ)YPfe@N)o4dris0U8)xu5FI+2?*_|>nRDo7; z1*M4b11ktvv>w4}dgP<|U#x~7GskrBuQ0}}@yBD2ejoR`{kwc?`T@)gpjCF~_UnjQ z4X1Co$|Z;|43A?zp{Y(Jlz!-IVkbXoD82Kzcx(rI^EC?(ubD(yAaqie(rq;yv(UVm z(y_)YIpd4(Q^dY5{S0FGln#es%W7vXt$+e{ZW78KD?i+w8?^Pcq8aITS&djSn{_rf z`bn-xgmTFXv+{WBP8zADChwJ%z`vp}QO-AMHk=|JYxR(@WCwuxpFXs~ZQ&fjeG-|w z_;nfhCqp)OhOSDu#?Sz2Dt<S{0rV~BsY@8DR2*c_2~<2c9;D&vTw>J|@)+N%ZV%t> z8A0lQ#kpS!X}k#o=FZPMkxjcEEqM7}%CPb*_+6I{doKB5pdk%BCvE3QvEPtp>QefX zrNHah8^_{|4-#p&+Z_qxy>&Esqck|coE*c}Gk0678y^&U+C-;`8FUnJzI1t!0Bq%_ z#+P*V3c9v0pR1g#f(M+g?L@>NfG1-|Zw~eo+Ro_dX?@Q@)y0!C$|r>l2v5&$-OhkA zm`PA)iwi~XErZ2D{rxt=d~DJl{T`08a5aP1n6`M`Z0IZwYiA!_(-_32n@gT%i8|J} z!o7iUx|6?0s>GtK2lyp!jU_hj4mEkFUI@tMIepmidwYK|b_&cfnOP#hNT)F?l#Wuv z_b{l1+{xR)FmWMs^tsHG>xis@>!G}_HD5*scG5L!^C+NGqZ!cC611__U%OjOV=!0V z0Yv&4>*P&oQ?PCV?@svOK9R%g6Uvq9Tr_lp#@=wZx(f5Ai(vmi$>MBewMnZ;@a^VM zRvs;A?OKuL>hEfIOl|+`lU*8v$U^B{y~X?Gp4w;LpU8c)0p<-iZ~b;pPSPs_s$tU> zArjkFyiF3AO%rpU=Bjw<yo#W;OD+uG#w5CS2l$ZU9@^VN9vz~coE(I{u~XEDO(RUI zR9=}&WjfXrm6nR7pBsny7*Xi(1)I=KAhNy$BG#SaD$_U3XI7-C(+ag}<TH4KQ+>4o zDi*W&tf%dLoC!GpG|7oyS1+ANg7!|o2s-a50uOiV$}e2{YcOXgA0=`*943W4i{JUh z0_#OCHur#Emz@SFT+L<kE&Mphyj-FC*(<RUqVwq3Jc@IK$(9C1@xXqR-2FBt5JSeu zNQVqraePZro3&<Kkuz#Ly!0^mLn^(C+kA^A3HykH{Xr55)36|U`(kce^%K|IBdH~6 z-<2U>v24`YFIa3^dB2sXr>{ehCqhV9kDUFoFvYPUAne-?wYB~oFqfvKX|_*%cw+zN z3OB@6SA*4k40A4(5CpngKW`OqcX3BfqiKg+mPO~5LaeP^Qbo=w_)v{V1f1%tu&fY^ zfWzrj+U=EVVPB^PXmh>)En?bX-y|ab_1H_940Wyw2?296q<e8~3k@^CC6GHq9eE)Y za=zO_j}scI5#-<!gpd(-F8!)%veO_&o5rO_7ilahCL+dBSI?K8(p_zbxUYKENj>a! zzB#{iyV(>6L?UK)y>Z@E>gHx~3yb>bi;DV6)fCo!;2|F~hD^TlD5+E<^yEwnB~P<s z#dY1<O)$CM%VxA?Cys-xF9+7T8ak)~;myeR;w8eeA{;NgrAq^t$y8Wap1tG!w?je4 z=CdtBN-bh#IsWe8vkYJ3-1hBqo(j{-A~O5nz^dKTD}VxkRzRt%?_3e4J&W{rubiZR z5tZra;<!Ndg!v&W22IDSvwKjZIQ2#FnYX~|;Uvkzwfq?uTBLqWhX9V}#?|mt?dU%C z;cL~9v~>z?CHV68KYSXY%!wpJzb6J1mAc+@rVj{Hdr4LMgnWZH7<=#UI{_7(GN9bv zJ-v<)joxzI(jFm`N)x9C6mKzlNoL1Z3ZIB3JLmmQY;M2(i+5l32W%r<KU7Z&!i}=C zY|<sQ{?H7eC#zA&8mAcz28^KtXy)8$(sA2A04^>fwF!!<5B4U0VwrP-O3vid&>+n= zX;H1*J01R@VWiV*$FT{~0Nq{c+_}v-h>mqPynY+M$`96SNrj1tWk*=CKol|_K4?bJ z-mb#e&M+zDhi@JeL9y9rhk3DJ%y}^8ONMs2E}`@;1&AfIYL<j;5LQ=Jt|V#UlOxaT zlI_5R?s{Y)E?Qk`gJ`2KDb25Rtk9_@A0vITH-EjBBJ@DkG;D^!j~BSwGB?96g|-56 z?|!dexFQ7vL_~Id$1{HmiAp?ZV;@VKO^3bqn@Fqw8aFnxZ`d=CN~^A&m@muf<j>|Z zR{^eV*q?CM84r8CFh3t~E46e0zZUX5&SK2eu=BNs7*@~uD3NOgZ#LE#!)+zt8{YH! z<&q`?QI4$m7l$O{lPd1E-Yuf$HEQu_*Q!KK_4#xMqeR+Eb+L!H6wM2i^HsSKd#AAa z$gwO!%er~GtXz{?#6?1BE+(+m&3WKGz}1(}$4*msLMlO}h{KpSMF1UNKn3rx*Pu(8 zh<9;dc^3<FRw?+&gvRgcch5FTD>oLfohhlX8&7<HbBa1!=x`o_%d>d?;G3w3NQ33- zlqNML3+4ePar-9>%P}}c^M2GcY0=+`cxkiejLl@+H+7XX&Oll)Q&HV?xXzwbf_#(n zdgYVxzAeF7FG<@XZ#}{FPb~uM>8kKt^&Nec!g{{E52ruZX3{IZQKMa5^hSO<_jGF8 zc8Gd2!rLY#?sh9R#?XLS3JrB250pH1LxsUQOO$C>1R*K~At}wzt|61DQBQi{JhR-i za-B?@OTg+H+>aKFOf+qsdp+s^3OXq;<Eg{`2|ZS>SciGXf%kh^DH?kv4h{`s>%De8 zx+1pOSM507&b`0a12aa36O#<;2KPXdwPP12Gn>1+`!_kZ)ag5ADg$a97Bgk77^f`q z$Q8(<4#y@rMTV|WO8rnn+LR01ztbh8A!$8pq(1rnZ!Rp2qV3iNfy&Fy)-12HECStr z-~6Hf?J9vHQ4Bs!JUJGf3)=Ck;U`n@3j9r~<iMTnh~E+KA`N2NCGn%^Ffc-IAItq{ zsvq0Mh3!1)^?RS+Z5~odGct9gyndI_YxZ!vdoiI~4>dfjk+8Cj5ipRtT2(@sJG>07 z&5URWe(I~9)O=lF)F%tWTYjYh3BF8ds`Z#xO>Md~I$a!6OKzzX%gHX2-nDNAnW#8) zq~|3n1?5a8%0kus{nmQGHbqH8>H^ZvSKQS;ClR+gwAnne0ly4h*!R3q4xFvFk@nps z9dPSQkd!r%?uzk%JJYQ=s;I4ok`Sd7Dc@3~qFB2p77lSObgG+TMx@??tJP==MAI5l zN(s(_;<Gf*cs~<k{aRC^Z#iC=LRv7%?F-*T%U)gNh5@<FTH0q&TMaX%f7-)@<B4j; z6AwR2O6wfIO2xvWQx<nNw*Ycfu=)a9Orf+Ohq_NtvrGP}R#IWaQpovGOeTqIU(L^B z9nY(U8@~diw-YK2@|B$PD!~LXk}Cz;8Jm1ikeBQCQ4;KL%Fxh+RD3q#z@lZirfC_k zuSZRNb}HYp2(Fo>{7SfEWo!4KC)G2Olj#uEyx-DYTf1qlLm1cjU0mW7<{;s*98axA zDY_S2)2C`67S~;;UchX9^GM;r9m_^}Z7#anipA+0zICiinL;Wb`IMOGi$P1UoN5IE z3yZ+&-!lU2N^FE&oH&@yWZI(z=H};wOV}cZSTk{Sy!FO=dpt|cCDvYED>ZqnY{@;t zj(qJ$zKqR>B~3oWn<HUPDo?0R5@S8Cps;gv5=X`w{<_d8rOYE<;7rNI*zGOzBr9w0 zi-;LvlF-7tBXmM8>gt9DN<sCEp=7X)>92{vzo>w6Y-4>-k>5-lL9kJljOSKdSV+aN zZ}7DVv-p<pBI93GyMLehOWAb&ERUHTPdde|;9rp9f5j~R+jzqNo4@}JPk6vF{@b?b zha>d<FP!B+F^m6V%X>axZ=tQHH|?Fe>9$+RF8>q&eyFI7FL>Q1IV?d<mJq8XGw^^d zz}clj?r!WMq%`}4idxKrb<8W+zX|~0aL+^~MM$Amk{v|$Rs9(Mi&_}|@u!G~HLMl& z4!WDtq%4De7XoH3>(rvWT5(DmtF0ASI@ij2XPLFRxoKDM;SC4AnDRVYbQcRt)AirN zOU%RFPU;gXYXJBpK*lswl2raFZ5Gxqk|)!O55vI+>0dqZd~D?p6cL(ZKKvy@Ru0sF z|CUgCY<o+#fgDQCIw!+>0BrnlAQSjB$8+G59t_EN47Q?dxg-%25vkmjT*oik5>EC# zC_5UX2D^K}P|hFEDu`fV<+)j0VMED5g-4PclKsp-?T#?_$&^z7R&DLV8)MEh*<+IU zXoZQFG8oJJsKF@am?B|A?sFjO8uFxtk&br$ZYw}K&~S*-niz#V8VK`Q#tp}-eHhkY zRVv<U&LAT*qn*?k;@&>JKjmpmbX<7I=6a1q$h7q_Rpt27`Pig{ddg38)sb|_>tv&4 zG4d#_T0w+cYS^0u<k4aqsanf@cXTv(>SU_T^wmA|-RYeWQhTqb4g8zJONuG`No@0i zlY4c8_hAwj-yMbHbIl)*u%r*`wRzcz7-BvfN?(lM*WRz)JNyOS<5~&Cd_HFP=U0iK z$Z~emBP`z$@ZIv*+sxlHYC&8;4h|yQ?%y(w1;7Kk*mOhL<5SoZ<*uV}Py1o_W(f<L znkr=ARNWfU#><fNmR5N!h1iPeuaJk4s-`|4W-9zjJaTasvIR1`&AtyOPGVQ{>+3G9 zO9hz(BS;!i{ISsjtWFB?M9+*?R@gn})xiFN6Zw{83R<L5T1S860DmTwLHV)TJlVP8 z47Kn1^}29NeW=!WhYufP-53X^k^BVg>#PzJB`s(X+FBWG@Dd$%wYBW7=L&?(%#4pI z0*Y`zL!bQ2YI{UH9j_tz#xTz+_kMNl60(G;;B=lldoVXWik*y9L7+D3)s!2M|M<Fd zUm7K&v~tK!8$Y#lMZv+vCdK#1tu~*O7~b!-J3XB<ARIuAwG2oa3)cZ(q{c@JAapP< zeyWw$YzZ+dfG=tr@BfJqI;F`+LfOUcC5c8SV#4^2g+@}u$3{ln0CYQB2W|hvJ@F<- zCr95jEuB9vJ%A<^ZKrwOFSq6guN+t;22ef1%FAL;_(lrXe^1K<z5?wPFI}PDdUDB$ zsmq6>VbL1W{A(RLB^I>Bv7=JAE$3~FJZ&u1_gseya_TDf+x27$HjlBSC$%{D2L>j6 zJh$#i9j_MSrteTVaZzCf?Zd&iBDb8fxrvsvs=arhav$>YXIOt<C~@>xcpbD+%kJY- zC_R36zv7%m(x(2n`$4B(ACekPm>E)^qWiF!z(G4vmiWQQm@dPXQR4jTzfVZqkto}w zJHm_Srx*JsVV3ru2=^^eytgsv#_c{03(KucYhcO$+Ke0|7kuqe->NKaWMS@nh8wo{ z8b36=>*F$Uve>>WW`cw+*z5EvxTQB*?Ce}Ac)d9&FZ@>HS~=u$T#G%rY}$1nEk;7; z3UqmS%l~`<g=(f?MPKy{D4EeFtSq`LwKhw<E)@TJc6LVcHun~FtDiwhRBH*H+<y@| z`r4{+-t)fG;=Tyw858Z-U;w?gyxFw4pBT1_p6TfpllwV2W8C@!*+Svz=nSm}Vn~>j z0z-UDCmnGG5*Ey@p^NB-`&G?5t8KP<C)JjrgHM0TG3b|3x5FR9%^qVdKgdy+f6PvB zJ-&!(a-DbKHakwZi6C&TsxoakIkTwZGdG|0jbXPntZVV~cCZi{FKjxQmXjTMxfP}= zHZ>)SA2y{VHC%)jIS}2Ia4PcPsOl6?;=1D!FJtKn@MqT0#57>b$3&RI*SMW1D@|}` zAPQqQwtvJI?BQK{zrwf3*3(tyZrLO>)97_~JNQrfPfvFd+YQe|fP%qDoBgH`5D8M( zoIWa1VxCCV`fa;vNa=CEc8oDypiS^`h2y#le#*0`GCBI&Gk2Dje|vJfx3{A<2ltq0 zHY3p9i$eg-0(D}grhNnAwnEwkOrBs}WI<9lw+1k#GnJbz0PuV8D*v|}j`Z>J*Y_O} zzBRnR^<!#jFn56n%yoM-psvKRHUCq^fJBn~O3ORm{v0a+BjbZ|Q~Ji;W`dKd(~#xY zVWWgUd0Bmj;+y61kjs{8rbE>}Dr<0;f_z0)-)x|-^~O5zXI~>>j%qBcfE97V)grqJ zGtqMZYoR!+x(;z3KOmiwiP0z>+g(v??9%xG*Hf%ZgQ**Na4t#c{rpK5#U(eU5p><c zHxlHxgF`~3lPdngGcBjESdc1?Bi1%WZolD*&gTWzXFh?*e7TUjFB!DGJLmMTKE_K9 zxz>C|H#A>{*4M)GIHuIntQ3=^M`~ZbT|YHJMi*mWw$cEuba@a>wP_qv>wbnn0+o%! zPd^5KYcGz5Tn=lNKG09;xm>C+8!G;Y+BsLT)rB1+Hfj$~?n;=9*6%q@V9@bpVCCe1 zjUdt-qm{w7_Q%X@p1eXv2Y?ZlOtHR<%gFGVHn<xOxypA^^V-ekH6nQu<R8RlOA(ts zgNe{tBO~(PGdVrFXqZNmbNMqw`~7Ip<|D0EV@1&u(~CUrr{l6!++Q+BRjCj22K(K0 zIYAGg)tgQ_Ruj>arqa$8K3W?!8#A|Wz+tVf+jP@{>33b}x=*#(N$1d_XXaRbj*ycN z51=wv#1WDYlz>h^E_U>9z1X0V7`hPGx>{yk8LiGnOgMYHR{4DsJBqwb@DbMIkw&v9 zrau0aqI7wBw}%<gVjOq~C)0b9E?9}c0XGv=g`MVXDxM`3pZu^scd`{=KYY;tBOrN* zA^#uzkpI)R|KM(5{jY8Ow{8Dt_$$kV9Qi^0!s<PgDxU0KW)$*$bvZ+JS}(Ca+Y|pA zas9*hjNwB@C%3=@Yh+qW8|yQhuYRoibBG)kmb9!X*Z<_v{C~!G{}Ds}mzeLr*l0zc zv?)Iv@%5i!sh<iY)iaUv!So+~gJs-s`LM8lK}ET`VcMUgR@*<6;S*e`DOjpSrdShz zOtuqr6}!O20~QCzPm+F4!Oe5hzC}l!vX92A<wY0XX)w+<qY1TETk2eiw1}V7Wib*1 z_6K7btb8Y2DL0xLTL$7|v%qVw^|h6V@ok4#8E(#+ZS+VvPEfCHE871EJ-3#oRN=V3 zyT?25E&S%7A1M&Yga3CDLdxd%h|aOmlcBB$#I@JmFMvSMud~IgxlhdLld6jj#uFzu zD#3rAuH-*d(!BH5AbC|I&WRD?d8Jsy`F7b|5&s{)TGcd5>v>+y>s&LyNNpoaCP}15 zVB>m)#Gw0X_~rGq_OKYBt8<gny4CJZl<0VF-p>0=G=VR4FVmDX+C~>qVh;I}0q*%& z$+u1mToTk)PfDCk7yESTQQ!8qE7LMbln+elSh5kTQ->hB@;P4%(FxpWvz0!i76Tg+ zme+AAo3qhw=<I0Epe$n<_7n?0g9{wV7Ov{j%N07|%&J<1rED5Zz()@=mXuIC8qJnq z!9KgS_MN21akN%+>E06-IH$&juDsXZ_HS_$v~3Jfa)nFFH1XT`48*W7Ma$FS218-s zfsrH}n%Oxur_#I=17^CD$T|l_wUzEdmgrP3hNm*a>MX_l$X_Yp*lepgdpVv~YERoG z*c{#SXeOt}J)xI(S(s-sX=i3j+^IJ+!~m|eY<gIu%?QVBk`<KdqNr=n<I=g|m?%XT zp!bkq<Iu103iTZJBaV6m_#$s7?PXn)tx+CwO5lG5OHI2t6|?62bk;!Wow^Y7ac{(G zP0_!RHoT%c|6S_iht)<WrvezHH{k3g%k2K*RH|U#W)!>vYX4DP+<WZFp(jRMJrLof zdG8`c7xVp<CwM4S-j!H|Q_FFaJ2}1XMYmdMhkj0W`WTDyUZsAFLSMwP<ve}3BZtUB zGf!pScdu>Hl=tbnChs?M**BhT<@7PkX?YfFIWZ;b>1@PIuY*(g&HVO^Thj@3UOYtX zN-+~^DjS_c3TctXt&|GjT?|-1zT<-^SEwgLxHEY)OS~|kR+pja`hg#@l!PjAo@Cyz z9qen&l~v8S-P9}oTcLuJWIOp=iO9gl3+GoSPCWhH->9<3zwB9ytLnX_@NeH;aJL_) z)T45FhBz)!R}T_zM>Yck(!(LR&)zCXpD+)-W~6HZJKnxDU~>1pZMC1={6mRFu%vUp r3%z@;_pm`P2HZj^u&|a5j_&{2aDP<9B3tYGV8#L{YADpme+>N}Zfr!2 literal 0 HcmV?d00001 diff --git a/src/mibew/styles/pages/dark/templates_compiled/client_side/.keep b/src/mibew/styles/pages/dark/templates_compiled/client_side/.keep new file mode 100644 index 00000000..e69de29b diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/default_control.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/default_control.handlebars new file mode 100644 index 00000000..fcdc3061 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/default_control.handlebars @@ -0,0 +1 @@ +<strong>{{title}}</strong> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/message.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/message.handlebars new file mode 100644 index 00000000..0dbde6f6 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/message.handlebars @@ -0,0 +1,3 @@ +<span>{{formatTime created}}</span> +{{#if name}}<span class='name-{{kindName}}'>{{name}}</span>: {{/if}} +<span class='message-{{kindName}}'>{{#replace "\n" "<br/>"}}{{urlReplace message}}{{/replace}}</span><br/> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/agent.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/agent.handlebars new file mode 100644 index 00000000..7c7b7339 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/agent.handlebars @@ -0,0 +1 @@ +<span class="agent-status-{{#if away}}away{{else}}online{{/if}} inline-block" title="{{#if away}}{{l10n "Away"}}{{else}}{{l10n "Up to date"}}{{/if}}"></span>{{name}}{{#unless isLast}},{{/unless}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/no_threads.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/no_threads.handlebars new file mode 100644 index 00000000..3ee83694 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/no_threads.handlebars @@ -0,0 +1 @@ +<td class="no-threads" colspan="8">{{l10n "The list of visitors waiting is empty"}}</td> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/no_visitors.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/no_visitors.handlebars new file mode 100644 index 00000000..c0a092b4 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/no_visitors.handlebars @@ -0,0 +1 @@ +<td class="no-visitors" colspan="9">{{l10n "There are no visitors ready to chat on your site at present time"}}</td> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/queued_thread.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/queued_thread.handlebars new file mode 100644 index 00000000..34286f7a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/queued_thread.handlebars @@ -0,0 +1,27 @@ +<td class="visitor"> + <div><a href="javascript:void(0);" class="user-name open-dialog" title="{{#if canOpen}}{{l10n "Click to chat with the visitor"}}{{else}}{{l10n "Watch the chat"}}{{/if}}">{{#if ban}}{{l10n "[spam]"}} {{/if}}{{userName}}</a></div> + {{#if firstMessage}}<div class="first-message"><a href="javascript:void(0);" title="{{firstMessage}}">{{firstMessagePreview}}</a></div>{{/if}} +</td> +<td class="visitor"> + <div class="default-thread-controls inline-block"> + {{#if canOpen}} + <div class="control open-dialog open-control inline-block" title="{{l10n "Click to chat with the visitor"}}"></div> + {{/if}} + {{#if canView}} + <div class="control view-control inline-block" title="{{l10n "Watch the chat"}}"></div> + {{/if}} + {{#if tracked}} + <div class="control track-control inline-block" title="{{l10n "Tracked visitor's path"}}"></div> + {{/if}} + {{#if canBan}} + <div class="control ban-control inline-block" title="{{l10n "Ban this visitor"}}"></div> + {{/if}} + </div> + <div class="thread-controls inline-block"></div> +</td> +<td class="visitor">{{#if userIp}}<a href="javascript:void(0);" class="geo-link" title="GeoLocation">{{remote}}</a>{{else}}{{remote}}{{/if}}</td> +<td class="visitor">{{stateDesc}}</td> +<td class="visitor">{{agentName}}</td> +<td class="visitor"><span class="timesince" data-timestamp="{{totalTime}}"></span></td> +<td class="visitor">{{#unless chatting}}<span class="timesince" data-timestamp="{{waitingTime}}"></span>{{else}}-{{/unless}}</td> +<td class="visitor">{{#if ban}}{{ban.reason}}{{else}}{{userAgent}}{{/if}}</td> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/status_panel.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/status_panel.handlebars new file mode 100644 index 00000000..d385e89e --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/status_panel.handlebars @@ -0,0 +1 @@ +<div id="connection-status">{{message}}{{#if agent.away}}{{l10n "Away"}}{{else}}{{l10n "Up to date"}}{{/if}}</div><div id="connection-controls"><a href="javascript:void(0);" id="change-status">{{#if agent.away}}{{l10n "Set status as \"Available\""}}{{else}}{{l10n "Set status as \"Away\""}}{{/if}}</a></div> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/threads_collection.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/threads_collection.handlebars new file mode 100644 index 00000000..c35f16fe --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/threads_collection.handlebars @@ -0,0 +1,17 @@ +<table class="awaiting" border="0"> +<thead> +<tr> + <th class="first">{{l10n "Name"}}</th> + <th>{{l10n "Actions"}}</th> + <th>{{l10n "Visitor's address"}}</th> + <th>{{l10n "State"}}</th> + <th>{{l10n "Operator"}}</th> + <th>{{l10n "Total time"}}</th> + <th>{{l10n "Waiting time"}}</th> + <th>{{l10n "Misc"}}</th> +</tr> +</thead> +<tbody id="threads-container"> + +</tbody> +</table> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/visitor.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/visitor.handlebars new file mode 100644 index 00000000..1662c8cd --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/visitor.handlebars @@ -0,0 +1,16 @@ +<td class="visitor"> + {{#unless invitationInfo}}<a href="javascript:void(0);" class="invite-link" title="{{l10n "Invite to chat"}}">{{userName}}</a>{{else}}{{userName}}{{/unless}} +</td> +<td class="visitor"> + <div class="default-visitor-controls inline-block"> + <div class="control track-control inline-block" title="{{l10n "Tracked visitor's path"}}"></div> + </div> + <div class="visitor-controls inline-block"></div> +</td> +<td class="visitor">{{#if userIp}}<a href="javascript:void(0);" class="geo-link" title="GeoLocation">{{remote}}</a>{{else}}{{remote}}{{/if}}</td> +<td class="visitor"><span class="timesince" data-timestamp="{{firstTime}}"></span></td> +<td class="visitor"><span class="timesince" data-timestamp="{{lastTime}}"></span></td> +<td class="visitor">{{#if invitationInfo}}{{invitationInfo.agentName}}{{else}}-{{/if}}</td> +<td class="visitor">{{#if invitationInfo}}<span class="timesince" data-timestamp="{{invitationInfo.time}}"></span>{{else}}-{{/if}}</td> +<td class="visitor">{{invitations}} / {{chats}}</td> +<td class="visitor">{{userAgent}}</td> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/client_side/users/visitors_collection.handlebars b/src/mibew/styles/pages/dark/templates_src/client_side/users/visitors_collection.handlebars new file mode 100644 index 00000000..22d9f6d7 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/client_side/users/visitors_collection.handlebars @@ -0,0 +1,17 @@ +<table id="visitors-list" class="awaiting" border="0"> +<thead> +<tr> + <th class="first">{{l10n "Name"}}</th> + <th>{{l10n "Actions"}}</th> + <th>{{l10n "Visitor's address"}}</th> + <th>{{l10n "First seen"}}</th> + <th>{{l10n "Last seen"}}</th> + <th>{{l10n "Invited by"}}</th> + <th>{{l10n "Invitation time"}}</th> + <th>{{l10n "Invitations / Chats"}}</th> + <th>{{l10n "Misc"}}</th> +</tr> +</thead> +<tbody id="visitors-container"> +</tbody> +</table> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/_errors.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/_errors.handlebars new file mode 100644 index 00000000..8a2bcf55 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/_errors.handlebars @@ -0,0 +1,12 @@ +{{#if errors}} + <div class="error-info"> + <img src="{{asset "@CurrentStyle/images/icon_err.gif"}}" width="40" height="40" border="0" alt="" class="left"/> + <b>{{l10n "Correct the mistakes:"}}</b><br/> + <ul> + {{#each errors}} + <li class="error">{{{this}}}</li> + {{/each}} + </ul> + </div> + <br clear="all"/> +{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/_layout.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/_layout.handlebars new file mode 100644 index 00000000..ad8d3d52 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/_layout.handlebars @@ -0,0 +1,86 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"{{#if rtl}} dir="rtl"{{/if}}> + +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <link rel="shortcut icon" href="{{asset "@CurrentStyle/images/favicon.ico"}}" type="image/x-icon"/> + <title> + {{title}} - {{l10n "Mibew Messenger"}} + </title> + <link href="{{asset "@CurrentStyle/css/default.css"}}" rel="stylesheet" type="text/css" /> + <!--[if lte IE 7]><link href="{{asset "@CurrentStyle/css/default_ie.css"}}" rel="stylesheet" type="text/css" /><![endif] --> + <!--[if lte IE 6]><script language="JavaScript" type="text/javascript" src="{{asset "@CurrentStyle/js/ie.js"}}"></script><![endif]--> + + <!-- Extra CSS files --> + {{cssAssets}} + + <!-- Extra JavaScript files --> + {{jsAssets}} + + <link href="{{asset "@CurrentStyle/css/vex.css"}}" rel="stylesheet" type="text/css" /> + + {{#block "head"}}{{/block}} +</head> + +<body{{#unlessOverridden "menu"}} style="min-width: 400px;"{{/unlessOverridden}}> + <div id="{{#if fixedwrap}}fixed-wrap{{else}}{{#ifOverridden "menu"}}wrap700{{else}}wrap400{{/ifOverridden}}{{/if}}" class="{{#if rtl}}rtl{{else}}ltr{{/if}}"> + <div id="header"> + <div id="title"> + <h1> + <a href="{{route "home_operator"}}"><img src="{{asset "@CurrentStyle/images/logo.png"}}" alt="" class="left logo" /></a> + {{#if headertitle}}{{headertitle}}{{else}}{{title}}{{/if}} + </h1> + </div> + + {{#if operator}} + <div id="path"> + <p> + {{#if currentopid}} + {{{l10n "You are <a href=\"{0}\">{1}</a>" (route "operator_edit" operator_id=currentopid) operator}}} + {{else}} + {{{l10n "You are <a href=\"{0}\">{1}</a>" "#" operator}}} + {{/if}} + </p> + </div> + {{else}} + {{#if show_small_login}} + <div id="login-small-pane"> + <form name="smallLogin" method="post" action="{{route "login"}}"> + {{csrfTokenInput}} + + {{l10n "Login:"}} + <input type="text" name="login" size="8" class="field-input"/> + <input type="password" name="password" size="8" class="field-input" autocomplete="off"/> + <input type="hidden" name="isRemember" value=""/> + <input type="submit" value=">>" class="butt"/> + </form> + </div> + {{/if}} + {{/if}} + </div> + + <br clear="all"/> + + <div class="content-div"> + + {{#ifOverridden "menu"}} + <div id="content" class="{{#if hideMenu}}content-no-menu{{else}}content-inner{{/if}}"> + {{else}} + <div id="content" class="content-no-menu"> + {{/ifOverridden}} + {{#block "content"}}{{/block}} + </div> + </div> + + {{#block "menu"}}{{/block}} + + <div style="clear: both;"> </div> + + <div class="empty-inner" style=""> </div> + </div> + + <div id="footer"> + <p id="legal"><a href="https://mibew.org/" target="_blank" class="footer-link">Mibew Messenger</a> {{mibewVersion}} | (c) 2011-2021 mibew.org</p> + </div> +</body> +</html> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/_locales.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/_locales.handlebars new file mode 100644 index 00000000..01dd9d58 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/_locales.handlebars @@ -0,0 +1,14 @@ +<div id="sidebar"> + <ul> + <li> + <h2><b>{{l10n "Choose your language"}}</b></h2> + <ul class="locales"> + {{#each localeLinks}} + <li {{#ifEqual @key ../currentLocale}} class="active"{{/ifEqual}}> + <a href="?locale={{@key}}">{{this}}</a> + </li> + {{/each}} + </ul> + </li> + </ul> +</div> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/_menu.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/_menu.handlebars new file mode 100644 index 00000000..89e64942 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/_menu.handlebars @@ -0,0 +1,49 @@ +<div id="sidebar"{{#if hideMenu}} class="sidebar-hidden"{{/if}}> + <ul> + {{#if warnOffline}} + {{#unless isOnline}} + <li id="offline-warning"> + <img src="{{asset "@CurrentStyle/images/dash/warning.png"}}" alt="" width="24" height="24"/> + <p>{{{l10n "You are Offline.<br/><a href=\"{0}\">Connect...</a>" (route "users" nomenu="1")}}}</p> + </li> + {{/unless}} + {{/if}} + <li> + <h2>{{l10n "Main"}}</h2> + <ul class="submenu"> + <li{{#ifEqual menuid "main"}} class="active"{{/ifEqual}}><a href="{{route "home_operator"}}">{{l10n "Home"}}</a></li> + <li{{#ifEqual menuid "users"}} class="active"{{/ifEqual}}><a href="{{route "users"}}">{{l10n "Visitors"}}</a> <span class="small">(<a class="inner" href="{{route "users" nomenu="1"}}">{{l10n "without menu"}}</a>)</span></li> + <li{{#ifEqual menuid "history"}} class="active"{{/ifEqual}}><a href="{{route "history"}}">{{l10n "Chat history"}}</a></li> + {{#if showstat}} + <li{{#ifEqual menuid "statistics"}} class="active"{{/ifEqual}}><a href="{{route "statistics"}}">{{l10n "Statistics"}}</a></li> + {{/if}} + {{#if showban}} + <li{{#ifEqual menuid "bans"}} class="active"{{/ifEqual}}><a href="{{route "bans"}}">{{l10n "Blocked visitors"}}</a></li> + {{/if}} + </ul> + </li> + {{#if showadmin}} + <li> + <h2>{{l10n "Administration"}}</h2> + <ul class="submenu"> + <li{{#ifEqual menuid "canned"}} class="active"{{/ifEqual}}><a href="{{route "canned_messages"}}">{{l10n "Canned Messages"}}</a></li> + <li{{#ifEqual menuid "getcode"}} class="active"{{/ifEqual}}><a href="{{route "button_code"}}">{{l10n "Button code"}}</a></li> + <li{{#ifEqual menuid "operators"}} class="active"{{/ifEqual}}><a href="{{route "operators"}}">{{l10n "Operators"}}</a></li> + <li{{#ifEqual menuid "groups"}} class="active"{{/ifEqual}}><a href="{{route "groups"}}">{{l10n "Groups"}}</a></li> + <li{{#ifEqual menuid "settings"}} class="active"{{/ifEqual}}><a href="{{route "settings_common"}}">{{l10n "Settings"}}</a></li> + <li{{#ifEqual menuid "plugins"}} class="active"{{/ifEqual}}><a href="{{route "plugins"}}">{{l10n "Plugins"}}</a></li> + <li{{#ifEqual menuid "styles"}} class="active"{{/ifEqual}}><a href="{{route "style_preview" type="page"}}">{{l10n "Styles"}}</a></li> + <li{{#ifEqual menuid "translation"}} class="active"{{/ifEqual}}><a href="{{route "translations"}}">{{l10n "Localize"}}</a></li> + <li{{#ifEqual menuid "mail_templates"}} class="active"{{/ifEqual}}><a href="{{route "mail_templates"}}">{{l10n "Mail templates"}}</a></li> + </ul> + </li> + {{/if}} + <li> + <h2>{{l10n "Other"}}</h2> + <ul class="submenu"> + <li{{#ifEqual menuid "about"}} class="active"{{/ifEqual}}><a href="{{route "about"}}">{{l10n "About"}}</a></li> + <li><a href="{{route "logout"}}">{{l10n "Exit"}}</a></li> + </ul> + </li> + </ul> +</div> \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/_tabs.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/_tabs.handlebars new file mode 100644 index 00000000..bbdf2546 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/_tabs.handlebars @@ -0,0 +1,11 @@ +{{#if tabs}} + <ul class="tabs"> + {{#each tabs}} + {{#if this}} + <li><a href="{{this}}">{{@key}}</a></li> + {{else}} + <li class="active"><a href="#">{{@key}}</a></li> + {{/if}} + {{/each}} + </ul> +{{/if}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/about.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/about.handlebars new file mode 100644 index 00000000..3cd6608d --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/about.handlebars @@ -0,0 +1,64 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + <div class="about-page"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <h2>{{l10n "About Mibew Messenger"}}</h2> + <p>{{l10n "Mibew Messenger is an open-source live support application licensed under the terms of the Apache License 2.0."}}<p> + <p>{{{l10n "Copyright © {0} Contributors of the Mibew Messenger project." "2005-2021"}}}</p> + <p>{{{l10n "For more information visit the official site of the project: <a href=\"https://mibew.org/\">https://mibew.org/</a>"}}}</p> + + {{#if showSystemInfo}} + <br/><br/> + + <h2>{{l10n "System information"}}</h2> + <h3>{{l10n "You are using:"}}</h3> + <div id="current-version">{{version}}</div> + + <br/> + + <h3>{{l10n "Installed localizations:"}}</h3> + {{#each localizations}} + {{this}} + {{/each}} + + <br/><br/> + + <h3>{{l10n "Environment:"}}</h3> + PHP {{phpVersion}} {{#each extensions}}{{@key}}{{#if loaded}}{{#if version}}/{{version}}{{/if}}{{else}}/absent{{/if}} {{/each}} + + <br/><br/> + + <h2>{{l10n "Available updates"}}</h2> + {{#if availableUpdates}} + {{#each availableUpdates}} + <h3>{{title}} ({{version}})</h3> + {{#if description}} + <div>{{description}}</div> + {{/if}} + <div> + <a href="{{url}}">{{l10n "Download"}}</a> + </div> + + <br/> + {{/each}} + {{else}} + {{l10n "There are no available updates."}}<br/><br/> + {{/if}} + <a href="{{route "update_check"}}">{{l10n "Check for available updates"}}</a> + {{/if}} + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/ban.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/ban.handlebars new file mode 100644 index 00000000..70ef2dc4 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/ban.handlebars @@ -0,0 +1,79 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{#if saved}} + {{l10n "Address {0} is blocked for a specified number of days." address}} + + <script type="text/javascript" src="{{asset "@CurrentStyle/js/autoclose.js"}}"></script> + {{else}} + {{l10n "Here you can block malicious visitors that affect your work with spam messages."}} + + <br/> + <br/> + + {{> _errors}} + + {{#if thread}} + {{l10n "You opened this window for \"{0}\" thread. <i>Address</i> field is already filled. Select a number of days and click <i>Send</i>." thread}}<br/> + <br/> + {{/if}} + + <form name="banForm" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + + {{#if threadid}} + <input type="hidden" name="threadid" value="{{threadid}}"/> + {{/if}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="address" class="field-label">{{l10n "Visitor's Address"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="address" type="text" name="address" size="40" value="{{formaddress}}" class="field-input"/> + </div> + <label for="address" class="field-description"> — {{l10n "Ex: 127.0.0.1 or example.com"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="days" class="field-label">{{l10n "Days"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="days" type="text" name="days" size="4" value="{{formdays}}" class="field-input"/> + </div> + <label for="days" class="field-description"> — {{l10n "Numbers of days this address is blocked"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="comment" class="field-label">{{l10n "Comment"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="comment" type="text" name="comment" size="40" value="{{formcomment}}" class="field-input"/> + </div> + <label for="comment" class="field-description"> — {{l10n "Reason for block"}}</label> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/bans.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/bans.handlebars new file mode 100644 index 00000000..c5186b55 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/bans.handlebars @@ -0,0 +1,65 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Here you can block malicious visitors that affect your work with spam messages."}} + + <br /> + <br /> + + {{> _errors}} + + <div class="table-toolbar"> + <img src="{{asset "@CurrentStyle/images/buttons/plus.png"}}" border="0" alt=""/> + <a href="{{route "ban_add"}}" title="{{l10n "Add address"}}" + onclick="this.newWindow = window.open('{{route "ban_add"}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=640,height=480,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{l10n "Add address"}}</a> + </div> + <br clear="all"/> + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Visitor's Address"}}</th> + <th>{{l10n "Till"}}</th> + <th>{{l10n "Comment"}}</th> + <th>{{l10n "Edit"}}</th> + </tr> + </thead> + + <tbody> + {{#each [pagination.items]}} + <tr> + <td class="not-last"> + <a href="{{route "history" q=address type="visitor"}}" class="man"> + {{address}} + </a> + </td> + + <td class="not-last">{{formatDate till}}</td> + + <td>{{cutString comment "30"}}</td> + + <td> + <a class="remove-link" data-ban-address="{{address}}" href="{{csrfProtectedRoute "ban_delete" ban_id=banid}}"> + {{l10n "remove"}} + </a>, + <a href="{{route "ban_edit" ban_id=banid}}" + onclick="this.newWindow = window.open('{{route "ban_edit" ban_id=banid}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=640,height=480,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{l10n "edit"}}</a> + </td> + </tr> + {{else}} + <tr> + <td colspan="4"> + {{l10n "No elements"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + + {{#if pagination}} + <br /> + {{generatePagination pagination}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/button_code.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/button_code.handlebars new file mode 100644 index 00000000..48eb2516 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/button_code.handlebars @@ -0,0 +1,151 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "You can generate HTML code to place at your site here."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="buttonCodeForm" method="get" action="{{route "button_code"}}"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field-in-row"> + <label for="lang" class="field-label">{{l10n "Code for language"}}</label> + <div class="field-value-no-description"> + <select id="lang" name="lang" onchange="this.form.submit();"> + {{#each availableLocales}} + <option value="{{this}}"{{#ifEqual this ../formlang}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + + <div class="field-in-row"> + <label for="style" class="field-label">{{l10n "Chat window style"}}</label> + <div class="field-value-no-description"> + <select id="style" name="style" onchange="this.form.submit();"> + {{#each availableChatStyles}} + "<option value="{{@key}}"{{#ifEqual @key ../formstyle}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + <br clear="all"/> + + <div class="field-in-row"> + <label for="code-type" class="field-label">{{l10n "Generating code type"}}</label> + <div class="field-value-no-description"> + <select id="code-type" name="codetype" onchange="this.form.submit();"> + {{#each availableCodeTypes}} + <option value="{{@key}}"{{#ifEqual @key ../formcodetype}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + + <div class="field-in-row"> + <label for="force-windows" class="field-label">{{l10n "Use windows (even for modern browsers)"}}</label> + <div class="field-value-no-description"> + <input id="force-windows" type="checkbox" name="forcewindows" value="on"{{#if formforcewindows}} checked="checked"{{/if}} onchange="this.form.submit();"/> + </div> + </div> + <br clear="all"/> + + {{#if generateButton}} + <div class="field-in-row"> + <label for="i" class="field-label">{{l10n "Choose image"}}</label> + <div class="field-value-no-description"> + <select id="i" name="i" onchange="this.form.submit();"> + {{#each availableImages}} + <option value="{{this}}"{{#ifEqual this ../formimage}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + + {{#if enabletracking}} + <div class="field-in-row"> + <label for="invitation-style" class="field-label">{{l10n "Invitation style"}}</label> + <div class="field-value-no-description"> + <select id="invitation-style" name="invitationstyle" onchange="this.form.submit();"> + {{#each availableInvitationStyles}} + <option value="{{@key}}"{{#ifEqual @key ../forminvitationstyle}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + {{/if}} + + <br clear="all"/> + {{/if}} + + <div class="field-in-row"> + <label for="group" class="field-label">{{l10n "Code for group"}}</label> + <div class="field-value-no-description"> + <select id="group" name="group" onchange="this.form.submit();"> + {{#each groups}} + <option value="{{groupid}}"{{#ifEqual groupid ../formgroup}} selected="selected"{{/ifEqual}}>{{#repeat level}} {{/repeat}}{{vclocalname}}</option> + {{/each}} + </select> + </div> + </div> + <br clear="all"/> + + <div class="field-in-row"> + <label for="hostname" class="field-label">{{l10n "Include host name into the code"}}</label> + <div class="field-value-no-description"> + <input id="hostname" type="checkbox" name="hostname" value="on"{{#if formhostname}} checked="checked"{{/if}} onchange="this.form.submit();"/> + </div> + </div> + + {{#if formhostname}} + <div class="field-in-row"> + <label for="secure" class="field-label">{{l10n "Use secure links (https)"}}</label> + <div class="field-value-no-description"> + <input id="secure" type="checkbox" name="secure" value="on"{{#if formsecure}} checked="checked"{{/if}} onchange="this.form.submit();"/> + </div> + </div> + {{/if}} + + <br clear="all"/> + + <div class="field"> + <label for="mod-security" class="field-label">{{l10n "Compatibility with mod_security (modsecurity.org), turn on only if you have problems with it"}}</label> + <div class="field-value-no-description"> + <input id="mod-security" type="checkbox" name="modsecurity" value="on"{{#if formmodsecurity}} checked="checked"{{/if}} onchange="this.form.submit();"/> + </div> + </div> + + <div class="field"> + <label for="button-code" class="field-label">{{l10n "HTML code"}}</label> + <div class="field-textarea-value" dir="ltr"> + <textarea id="button-code" cols="44" rows="15">{{buttonCode}}</textarea> + </div> + <label for="button-code" class="field-description">{{l10n "<strong>Caution!</strong> Please don't change<br/> the code manually because<br/> we don't guarantee that<br/> it will work!"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <div class="field-label">{{l10n "Example"}}</div> + <div class="field-value-no-description"> + {{{buttonCode}}} + </div> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/canned_message_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/canned_message_edit.handlebars new file mode 100644 index 00000000..5e248cec --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/canned_message_edit.handlebars @@ -0,0 +1,61 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{#if saved}} + {{l10n "Saved"}} + <script type="text/javascript" src="{{asset "@CurrentStyle/js/autoclose.js"}}"></script> + {{else}} + {{#if key}} + {{l10n "Edit an existing message."}} + {{else}} + {{l10n "Add new message."}} + {{/if}} + + <br/> + <br/> + + {{> _errors}} + + <form name="cannedForm" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + + {{#unless key}} + <input type="hidden" name="lang" value="{{locale}}"/> + <input type="hidden" name="group" value="{{groupid}}"/> + {{/unless}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="title-field" class="field-label">{{l10n "Title"}}</label> + <div class="field-value-no-description"> + <input id="title-field" type="text" name="title" class="wide" maxlength="100" value="{{formtitle}}"/> + </div> + </div> + + <div class="field"> + <label for="message" class="field-label">{{l10n "Message"}}</label> + <div class="field-value-no-description"> + <textarea id="message" name="message" cols="20" rows="5" class="wide">{{formmessage}}</textarea> + </div> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/canned_messages.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/canned_messages.handlebars new file mode 100644 index 00000000..45aaebf1 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/canned_messages.handlebars @@ -0,0 +1,93 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Edit messages that you frequently type into the chat."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="cannedForm" method="get" action="{{route "canned_messages"}}"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="packed-form-fields"> + {{l10n "For language:"}}<br/> + <select name="lang" onchange="this.form.submit();"> + {{#each locales}} + <option value="{{id}}"{{#ifEqual id ../formlang}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="packed-form-fields"> + {{l10n "For group:"}}<br/> + <select name="group" onchange="this.form.submit();"> + {{#each groups}} + <option value="{{groupid}}"{{#ifEqual groupid ../formgroup}} selected="selected"{{/ifEqual}}>{{#repeat level}} {{/repeat}}{{vclocalname}}</option> + {{/each}} + </select> + </div> + + <br clear="all"/> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + <br/> + + <div class="table-toolbar"> + <img src="{{asset "@CurrentStyle/images/buttons/plus.png"}}" border="0" alt=""/> + <a href="{{route "canned_message_add" lang=formlang group=formgroup}}" target="_blank" + onclick="this.newWindow = window.open('{{route "canned_message_add" lang=formlang group=formgroup}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=640,height=480,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;"> + {{l10n "Add message..."}} + </a> + </div> + <br clear="all"/> + + <table class="translate"> + <thead> + <tr class="header"> + <th>{{l10n "Title"}}</th> + <th>{{l10n "Message"}}</th> + <th>{{l10n "Modify"}}</th> + </tr> + </thead> + + <tbody> + {{#each [pagination.items]}} + <tr> + <td> + {{#replace "\n" ""}}{{vctitle}}{{/replace}} + </td> + <td> + {{#replace "\n" "<br/>"}}{{vcvalue}}{{/replace}} + </td> + <td> + <a href="{{route "canned_message_edit" message_id=id}}" target="_blank" + onclick="this.newWindow = window.open('{{route "canned_message_edit" message_id=id}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=640,height=480,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{l10n "edit"}}</a>, + <a href="{{csrfProtectedRoute "canned_message_delete" message_id=id lang=../formlang group=../formgroup}}">{{l10n "remove"}}</a> + </td> + </tr> + {{else}} + <tr> + <td colspan="3">{{l10n "No elements"}}</td> + </tr> + {{/each}} + </tbody> + </table> + + {{#if pagination}} + <br /> + {{generatePagination pagination}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/group_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/group_edit.handlebars new file mode 100644 index 00000000..3a016b1b --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/group_edit.handlebars @@ -0,0 +1,158 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{#if grid}} + {{l10n "On this page you can edit group details."}} + {{else}} + {{l10n "Create new group here."}} + {{/if}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form name="groupForm" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="name" class="field-label">{{l10n "Name"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="name" type="text" name="name" size="40" value="{{formname}}" class="field-input"/> + </div> + <label for="name" class="field-description"> — {{l10n "Name to identify the group."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="description" class="field-label">{{l10n "Description"}}</label> + <div class="field-value"> + <input id="description" type="text" name="description" size="40" value="{{formdescription}}" class="field-input"/> + </div> + <label for="description" class="field-description"> — {{l10n "Description of the group."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="common-name" class="field-label">{{l10n "International name"}}</label> + <div class="field-value"> + <input id="common-name" type="text" name="commonname" size="40" value="{{formcommonname}}" class="field-input"/> + </div> + <label for="common-name" class="field-description"> — {{l10n "Name in English."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="common-description" class="field-label">{{l10n "International description"}}</label> + <div class="field-value"> + <input id="common-description" type="text" name="commondescription" size="40" value="{{formcommondescription}}" class="field-input"/> + </div> + <label for="common-description" class="field-description"> — {{l10n "Description in English."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="email" class="field-label">{{l10n "E-mail"}}</label> + <div class="field-value"> + <input id="email" type="text" name="email" size="40" value="{{formemail}}" class="field-input"/> + </div> + <label for="email" class="field-description"> — {{l10n "Group email for notifications. Leave empty to use the default address."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="weight" class="field-label">{{l10n "Weight"}}</label> + <div class="field-value"> + <input id="weight" type="text" name="weight" size="40" value="{{formweight}}" class="field-input"/> + </div> + <label for="weight" class="field-description"> — {{l10n "Groups with lower weight display higher in groups list. Group weight is a positive integer value."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="parent-group" class="field-label">{{l10n "Parent group"}}</label> + <div class="field-value"> + <select name="parentgroup" id="parent-group"> + {{#each availableParentGroups}} + <option value="{{groupid}}"{{#ifEqual groupid ../formparentgroup}} selected="selected"{{/ifEqual}}>{{#repeat level}} {{/repeat}}{{vclocalname}}</option> + {{/each}} + </select> + </div> + <label for="parent-group" class="field-description"> — {{l10n "Groups can be organized in a hierarchical structure"}}</label> + <br clear="all"/> + </div> + + <div id="extra-fields"> + <div class="fields-header">{{l10n "The fields that located below are extra fields. These fields are only available for the top level groups and override corresponding system settings if specified."}}</div> + + <div class="field"> + <label for="title-field" class="field-label">{{l10n "Company title"}}</label> + <div class="field-value"> + <input id="title-field" type="text" name="title" size="40" value="{{formtitle}}" class="field-input"/> + </div> + <label for="title-field" class="field-description"> — {{l10n "Enter your company title"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="chat-title" class="field-label">{{l10n "Title in the chat window"}}</label> + <div class="field-value"> + <input id="chat-title" type="text" name="chattitle" size="40" value="{{formchattitle}}" class="field-input"/> + </div> + <label for="chat-title" class="field-description"> — {{l10n "Title in the chat window"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="logo-field" class="field-label">{{l10n "Your company logo"}}</label> + <div class="field-value"> + <input id="logo-field" type="text" name="logo" size="40" value="{{formlogo}}" class="field-input"/> + </div> + <label for="logo-field" class="field-description"> — {{l10n "Enter http address of your company logo"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="host-url" class="field-label">{{l10n "URL of your website"}}</label> + <div class="field-value"> + <input id="host-url" type="text" name="hosturl" size="40" value="{{formhosturl}}" class="field-input"/> + </div> + <label for="host-url" class="field-description"> — {{l10n "Destination for your company name or logo link"}}</label> + <br clear="all"/> + </div> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/group_members.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/group_members.handlebars new file mode 100644 index 00000000..cd096d64 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/group_members.handlebars @@ -0,0 +1,51 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "View and edit the member list."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form name="membersForm" method="post" action="{{route "group_members_save" group_id=groupid}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <p><b>{{currentgroup}}</b></p> + + {{#each operators}} + <div class="field"> + <div class="field-value-no-description"> + <input id="op{{operatorid}}" type="checkbox" name="op{{operatorid}}" value="on"{{#if checked}} checked="checked"{{/if}}/> + <label for="op{{operatorid}}">{{vclocalename}} (<a href="{{route "operator_edit" operator_id=operatorid}}">{{vclogin}}</a>)</label> + </div> + </div> + {{/each}} + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/groups.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/groups.handlebars new file mode 100644 index 00000000..efdb8798 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/groups.handlebars @@ -0,0 +1,126 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "This page displays a list of groups. Each group can have separate button and canned responses."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="groupsForm" method="get" action="{{route "groups"}}"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="packed-form-fields"> + {{l10n "Sort by:"}}<br/> + <select name="sortby" onchange="this.form.submit();"> + {{#each availableOrders}} + <option value="{{id}}"{{#ifEqual id ../formsortby}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="packed-form-fields"> + {{l10n "Sort direction:"}}<br/> + <select name="sortdirection" onchange="this.form.submit();"> + {{#each availableDirections}} + <option value="{{id}}"{{#ifEqual id ../formsortdirection}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <br clear="all"/> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + <br /> + + {{#if canmodify}} + <div class="table-toolbar"> + <img src="{{asset "@CurrentStyle/images/buttons/plus.png"}}" border="0" alt="" /> + <a href="{{route "group_add"}}" title="{{l10n "Create new group"}}"> + {{l10n "Create new group"}} + </a> + </div> + <br clear="all"/> + {{/if}} + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Description"}}</th> + <th>{{l10n "Last active"}}</th> + <th>{{l10n "Operators"}}</th> + <th>{{l10n "Weight"}}</th> + {{#if canmodify}} + <th></th> + {{/if}} + </tr> + </thead> + + <tbody> + {{#each groups}} + <tr> + <td class="not-last level{{level}}"> + <a href="{{route "group_edit" group_id=groupid}}" class="man"> + {{vclocalname}} + </a> + </td> + + <td class="not-last"> + {{#if vclocaldescription}} + {{vclocaldescription}} + {{else}} + <none> + {{/if}} + </td> + + <td class="not-last"> + {{#ifAny isOnline isAway}} + {{#if isOnline}} + {{l10n "Online"}} + {{else}} + {{l10n "Away"}} + {{/if}} + {{else}} + {{formatDate lastTimeOnline}} + {{/ifAny}} + </td> + + <td> + <a href="{{route "group_members" group_id=groupid}}"> + {{inumofagents}} + </a> + </td> + + <td> + {{iweight}} + </td> + + {{#if ../canmodify}} + <td> + <a href="{{csrfProtectedRoute "group_delete" group_id=groupid}}" class="remove-link" data-group-name="{{vclocalname}}"> + {{l10n "remove"}} + </a> + </td> + {{/if}} + </tr> + {{else}} + <tr> + <td colspan="5">{{l10n "No elements"}}</td> + </tr> + {{/each}} + </tbody> + </table> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/history.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/history.handlebars new file mode 100644 index 00000000..065f4b7e --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/history.handlebars @@ -0,0 +1,104 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Search the chat history for a specified user, an operator or a specified phrase in messages."}} + + <br /> + <br /> + + <form name="searchForm" method="get" action="{{route "history"}}"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="q" class="field-label">{{l10n "User name, operator name or message text search:"}}</label> + <div class="field-value-no-description"> + <div id="search-text"> + <input id="q" type="text" name="q" size="60" value="{{formq}}" class="field-input"/> + </div> + <div class="search-controls"> + <label for="type">{{l10n "Search:"}}</label> + <select id="type" name="type" onchange="if (this.value == 'all' || this.value == 'message') {document.getElementById('in-system-messages').style.display='inline'} else {document.getElementById('in-system-messages').style.display='none'}; "> + <option value="all" {{#ifEqual formtype "all"}}selected="selected"{{/ifEqual}}>{{l10n "everywhere"}}</option> + <option value="message" {{#ifEqual formtype "message"}}selected="selected"{{/ifEqual}}>{{l10n "in messages"}}</option> + <option value="operator" {{#ifEqual formtype "operator"}}selected="selected"{{/ifEqual}}>{{l10n "by operator"}}</option> + <option value="visitor" {{#ifEqual formtype "visitor"}}selected="selected"{{/ifEqual}}>{{l10n "by visitor"}}</option> + </select> + </div> + <div id="search-button"> + <input type="submit" name="search" class="submit-button-background login-button" value="{{l10n "Search"}}" /> + </div><br clear="all"/> + <div class="search-controls" id="in-system-messages"{{#if canSearchInSystemMessages}} style="display: none;"{{/if}}> + <input id="in-system-messages-field" type="checkbox" name="insystemmessages" {{#if forminsystemmessages}}checked="checked"{{/if}}/> <label for="in-system-messages-field">{{l10n "Search in system messages"}}</label> + </div> + </div> + <br clear="all"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + <br/> + + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Visitor's address"}}</th> + <th>{{l10n "Operator"}}</th> + <th>{{l10n "Visitor's messages"}}</th> + <th>{{l10n "Time in chat"}}</th> + </tr> + </thead> + + <tbody> + {{#each [pagination.items]}} + <tr> + <td> + <a class="man" href="{{route "history_thread" thread_id=threadId}}" target="_blank" onclick="this.newWindow = window.open('{{route "history_thread" thread_id=threadId}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=720,height=520,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{userName}}</a> + </td> + <td> + {{{userAddress}}} + </td> + <td> + {{#if agentName}} + {{agentName}} + {{else}} + {{#if groupName}} + - {{groupName}} - + {{/if}} + {{/if}} + </td> + <td> + {{messageCount}} + </td> + <td> + {{formatDateDiff chatTime}}, {{formatDate chatCreated}} + </td> + </tr> + {{else}} + <tr> + <td colspan="5"> + {{l10n "Found 0 elements"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + + {{#if pagination}} + <br/> + {{generatePagination pagination}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/history_thread.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/history_thread.handlebars new file mode 100644 index 00000000..78c9e023 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/history_thread.handlebars @@ -0,0 +1,67 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{l10n "This page displays chat details and content."}} + + <br/><br/> + + <div class="log-pane"> + <div class="header"> + + <div class="param-label"> + {{l10n "Name"}}: + </div> + <div class="param-value"> + {{threadInfo.userName}} + </div> + <br clear="all"/> + + <div class="param-label"> + {{l10n "Visitor's address"}}: + </div> + <div class="param-value"> + {{{threadInfo.userAddress}}} + </div> + <br clear="all"/> + + <div class="param-label"> + {{l10n "Browser"}}: + </div> + <div class="param-value"> + {{threadInfo.userAgentVersion}} + </div> + <br clear="all"/> + + {{#if threadInfo.groupName}} + <div class="param-label"> + {{l10n "Group"}}: + </div> + <div class="param-value"> + {{threadInfo.groupName}} + </div> + <br clear="all"/> + {{/if}} + + {{#if threadInfo.agentName}} + <div class="param-label"> + {{l10n "Operator"}}: + </div> + <div class="param-value"> + {{threadInfo.agentName}} + </div> + <br clear="all"/> + {{/if}} + + <div class="param-label"> + {{l10n "Time in chat"}}: + </div> + <div class="param-value"> + {{formatDateDiff threadInfo.chatTime}} + ({{formatDate threadInfo.chatStarted}}) + </div> + <br clear="all"/> + </div> + + <div class="message" id="messages-region"></div> + </div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/history_user.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/history_user.handlebars new file mode 100644 index 00000000..b83d7a3b --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/history_user.handlebars @@ -0,0 +1,43 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{l10n "You can find the chat history of your visitors here."}} + + <br /> + <br /> + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Visitor's address"}}</th> + <th>{{l10n "Operator"}}</th> + <th>{{l10n "Time in chat"}}</th> + </tr> + </thead> + + <tbody> + {{#each [pagination.items]}} + <tr> + <td> + <a href="{{route "history_thread" thread_id=threadId}}" target="_blank" onclick="this.newWindow = window.open('{{route "history_thread" thread_id=threadId}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=720,height=520,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{userName}}</a> + </td> + <td>{{{userAddress}}}</td> + <td>{{agentName}}</td> + <td>{{formatDateDiff chatTime}}, {{formatDate chatCreated}}</td> + </tr> + {{else}} + <tr> + <td colspan="5"> + {{l10n "Found 0 elements"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + + {{#if pagination}} + <br /> + {{generatePagination pagination}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/index.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/index.handlebars new file mode 100644 index 00000000..24665d99 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/index.handlebars @@ -0,0 +1,219 @@ +{{#extends "_layout"}} + {{#override "head"}} + {{#if localeLinks}} + <script type="text/javascript" language="javascript" src="{{asset "@CurrentStyle/js/locale.js"}}"></script> + {{/if}} + <script type="text/javascript" language="javascript" src="{{asset "@CurrentStyle/js/dashboard.js"}}"></script> + {{/override}} + + {{#override "content"}} + <br/> + {{#if needUpdate}} + <div id="form-message"><img src="{{asset "@CurrentStyle/images/dash/warning.png"}}" alt="" class="warning" /> {{l10n "Please run the <a href=\"{0}\">Update wizard</a> to adjust your database." (route "update")}}</div> + <br/> + {{/if}} + + {{#if warnOffline}} + {{#unless isOnline}} + <div id="offline-dashboard-warning"><img src="{{asset "@CurrentStyle/images/dash/warning.png"}}" alt="" class="warning"/> {{{l10n "You are Offline. <a href=\"{0}\">Connect...</a>" (route "users" nomenu="1")}}}</div> + <br/> + {{/unless}} + {{/if}} + + <div id="dashboard"> + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/visitors.png"}}" alt=""/> + <a href="{{route "users"}}"> + {{l10n "Visitors"}} + </a> + {{l10n "You can find awaiting visitors."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/history.png"}}" alt=""/> + <a href="{{route "history"}}"> + {{l10n "Chat history"}} + </a> + {{l10n "Search the dialogs history."}} + </div> + </div> + + {{#if showstat}} + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/statistics.png"}}" alt=""/> + <a href="{{route "statistics"}}"> + {{l10n "Statistics"}} + </a> + {{l10n "From this page you can generate a variety of usage reports."}} + </div> + </div> + {{/if}} + + {{#if showban}} + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/blocked.png"}}" alt=""/> + <a href="{{route "bans"}}"> + {{l10n "Blocked visitors"}} + </a> + {{l10n "Here you can block malicious visitors."}} + </div> + </div> + {{/if}} + + {{#if showadmin}} + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/canned.png"}}" alt=""/> + <a href="{{route "canned_messages"}}"> + {{l10n "Canned Messages"}} + </a> + {{l10n "Edit messages that you frequently type into the chat."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/wizard.png"}}" alt=""/> + <a href="{{route "button_code"}}"> + {{l10n "Button code"}} + </a> + {{l10n "Button HTML code generation."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/operator.png"}}" alt=""/> + <a href="{{route "operators"}}"> + {{l10n "Operators"}} + </a> + {{l10n "Create or delete company operators. Manage their permissions."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/group.png"}}" alt=""/> + <a href="{{route "groups"}}"> + {{l10n "Groups"}} + </a> + {{l10n "Department or skill based groups."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/settings.png"}}" alt=""/> + <a href="{{route "settings_common"}}"> + {{l10n "Settings"}} + </a> + {{l10n "Specify options affecting chat window and common system behavior."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/plugins.png"}}" alt=""/> + <a href="{{route "plugins"}}"> + {{l10n "Plugins"}} + </a> + {{l10n "Manage plugins."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/styles.png"}}" alt=""/> + <a href="{{route "style_preview" type="page"}}"> + {{l10n "Styles"}} + </a> + {{l10n "Manage styles."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/translations.png"}}" alt=""/> + <a href="{{route "translations"}}"> + {{l10n "Translations"}} + </a> + {{l10n "Manage translations."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/mail_templates.png"}}" alt=""/> + <a href="{{route "mail_templates"}}"> + {{l10n "Mail templates"}} + </a> + {{l10n "Manage mail templates."}} + </div> + </div> + {{/if}} + + {{#if currentopid}} + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/profile.png"}}" alt=""/> + <a href="{{route "operator_edit" operator_id=currentopid}}"> + {{l10n "Profile"}} + </a> + {{l10n "You can change your personal information on this page."}} + </div> + </div> + {{/if}} + + {{#if localeLinks}} + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/locale.png"}}" alt=""/> + <a href="#" id="change-language"> + {{l10n "Language"}} + </a> + {{l10n "Change locale."}} + </div> + </div> + {{/if}} + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/information.png"}}" alt=""/> + <a href="{{route "about"}}"> + {{l10n "About"}} + </a> + {{l10n "View about page."}} + </div> + </div> + + <div class="dashboard-item"> + <div class="dashboard-item-content"> + <img src="{{asset "@CurrentStyle/images/dash/exit.png"}}" alt=""/> + <a href="{{route "logout"}}"> + {{l10n "Exit"}} + </a> + {{l10n "Log out of the system."}} + </div> + </div> + + </div> + + {{#if localeLinks}} + <div id="dashboard-locales-popup"> + <a href="#" id="dashboard-locales-popup-close"><img src="{{asset "@CurrentStyle/images/dash/close.gif"}}" alt="X"/></a> + <h2><img src="{{asset "@CurrentStyle/images/dash/locale.png"}}" alt=""/><b>{{l10n "Choose your language"}}</b></h2> + <ul class="locales"> + {{#each localeLinks}} + <li{{#ifEqual currentLocale @key}} class="active"{{/ifEqual}}><a href="?locale={{@key}}">{{this}}</a></li> + {{/each}} + </ul> + </div> + <div id="background-popup"></div> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/install_done.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/install_done.handlebars new file mode 100644 index 00000000..a64ecfae --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/install_done.handlebars @@ -0,0 +1,18 @@ +{{#extends "install_step"}} + {{#override "nextStep"}} + <br /> + <b>{{l10n "Application installed successfully."}}</b> {{{loginLink}}} + <br /> + <br /> + + + {{l10n "Click to check the sound"}}: + <ul> + <li><a id="check-new-visitor" href="javascript:void(0)">{{l10n "New Visitor"}}</a></li> + <li><a id="check-new-message" href="javascript:void(0)">{{l10n "New Message"}}</a></li> + </ul> + <br /> + <span class="warning">{{l10n "For security reasons you should remove install.php file from your server."}}</span> + + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/install_err.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/install_err.handlebars new file mode 100644 index 00000000..8b8305e1 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/install_err.handlebars @@ -0,0 +1,7 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{> _errors}} + + {{l10n "Resolve the problem and try again. Press <a>back</a> to return to the wizard."}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/install_password.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/install_password.handlebars new file mode 100644 index 00000000..0fa0df38 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/install_password.handlebars @@ -0,0 +1,35 @@ +{{#extends "install_step"}} + {{#override "nextStep"}} + <br /> + <br /> + + {{l10n "Type a password for the first administrator"}}: + + <form name="passwordForm" method="post" class="password-form"> + + <div class="form-fields"> + <div class="field"> + <div class="field-label-left">{{l10n "Password"}}:</div> + <div class="field-value"> + <input type="password" name="password" size="25" value="" class="field-input" autocomplete="off"/> + </div> + <br clear="all"/> + </div> + + <div class="field"> + <div class="field-label-left">{{l10n "Confirmation"}}:</div> + <div class="field-value"> + <input type="password" name="password_confirm" size="25" value="" class="field-input" autocomplete="off"/> + </div> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="submit" class="submit-button-background save-button" value="{{l10n "Save"}}" /> + </div> + + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/install_step.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/install_step.handlebars new file mode 100644 index 00000000..fe936826 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/install_step.handlebars @@ -0,0 +1,62 @@ +{{#extends "_layout"}} + {{#if localeLinks}} + {{#override "menu"}}{{> _locales}}{{/override}} + {{/if}} + + {{#override "content"}} + {{l10n "Follow the wizard to setup your database."}} + + <br/> + <br/> + + {{> _errors}} + + {{#if done}} + <div id="install"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + {{l10n "Completed:"}} + + <ul> + {{#each done}} + <li>{{l10n this}}</li> + {{/each}} + </ul> + + {{#block "nextStep"}} + {{#unless errors}} + {{#if nextstep}} + <br/> + <br/> + + {{l10n "Next step:"}} + + <ul> + <li> + {{#if nextnotice}} + {{{nextnotice}}}<br/><br/> + {{/if}} + + <a href="{{nextstepurl}}">{{nextstep}}</a> + </li> + </ul> + {{/if}} + {{/unless}} + {{/block}} + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + {{/if}} + + <br/> + <a href="{{asset "LICENSE.txt"}}">{{l10n "Software license agreement"}}</a> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/locale_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/locale_edit.handlebars new file mode 100644 index 00000000..c7c422c1 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/locale_edit.handlebars @@ -0,0 +1,84 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Edit locale settings."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form name="localeForm" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + + <div class="form-fields"> + <div class="field"> + <label for="time-locale" class="field-label">{{l10n "Time locale"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="time-locale" type="text" name="timelocale" size="40" value="{{formtimelocale}}" class="field-input" /> + </div> + <label for="time-locale" class="field-description"> — {{l10n "This value will be passed to PHP's setlocale function to localize words in date/time string."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="date-format-full" class="field-label">{{l10n "Date format (full)"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="date-format-full" type="text" name="dateformatfull" size="40" value="{{formdateformatfull}}" class="field-input" /> + </div> + <label for="date-format-full" class="field-description"> — {{l10n "This value will be used with PHP's strftime to format date with time."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="date-format-date" class="field-label">{{l10n "Date format (date)"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="date-format-date" type="text" name="dateformatdate" size="40" value="{{formdateformatdate}}" class="field-input" /> + </div> + <label for="date-format-date" class="field-description"> — {{l10n "This value will be used with PHP's strftime to format date only."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="date-format-time" class="field-label">{{l10n "Date format (time)"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="date-format-time" type="text" name="dateformattime" size="40" value="{{formdateformattime}}" class="field-input" /> + </div> + <label for="date-format-time" class="field-description"> — {{l10n "This value will be used with PHP's strftime to format time only."}}</label> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/locales.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/locales.handlebars new file mode 100644 index 00000000..4e77d857 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/locales.handlebars @@ -0,0 +1,68 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "On this page you can configure locales which are used in the system"}} + + <br /> + <br /> + + {{> _errors}} + + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + {{! It is just an empty plate under the tabs bar.}} + + <br clear="all"/> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + + <br /> + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Code"}}</th> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Modify"}}</th> + </tr> + </thead> + + <tbody> + {{#each localesList}} + <tr> + <td class="not-last"> + {{code}} + </td> + + <td class="not-last"> + {{name}} + </td> + + <td> + {{#if isDisabled}} + <a href="{{csrfProtectedRoute "locale_enable" locale=code}}">{{l10n "enable"}}</a> + {{else}} + <a href="{{csrfProtectedRoute "locale_disable" locale=code}}">{{l10n "disable"}}</a> + {{/if}} + + {{#unless isDisabled}} + <a href="{{route "locale_edit" locale=code}}">{{l10n "edit"}}</a> + {{/unless}} + </td> + </tr> + {{/each}} + </tbody> + </table> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/login.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/login.handlebars new file mode 100644 index 00000000..ad70203a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/login.handlebars @@ -0,0 +1,68 @@ +{{#extends "_layout"}} + {{#if localeLinks}} + {{#override "menu"}}{{> _locales}}{{/override}} + {{/if}} + + {{#override "content"}} + <div id="login-intro"> + <p>{{l10n "Mibew Messenger is an open-source live support application."}}</p> + </div> + + <form name="loginForm" method="post" action="{{route "login_submit"}}"> + {{csrfTokenInput}} + + <div id="login-pane"> + + <div class="header"> + <h2>{{l10n "Login"}}</h2> + </div> + + <div class="form-fields"> + {{l10n "Please enter your username and password to access administrative tools. See your visitors and browse the history."}} + + <br/> + <br/> + + {{> _errors}} + + <div class="field"> + <div class="field-label-left">{{l10n "Login:"}}</div> + <div class="field-value"> + <input type="text" name="login" size="25" value="{{formlogin}}" class="field-input"/> + </div> + <br clear="all"/> + </div> + + <div class="field"> + <div class="field-label-left">{{l10n "Password:"}}</div> + <div class="field-value"> + <input type="password" name="password" size="25" value="" class="field-input" autocomplete="off"/> + </div> + <br clear="all"/> + </div> + + <div class="field"> + <div class="field-label-left"> </div> + <div class="field-value"> + <label> + <input type="checkbox" name="isRemember" value="on"{{#if formisRemember}} checked="checked"{{/if}} /> + {{l10n "Remember"}} + </label> + </div> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="submit" class="submit-button-background login-button" value="{{l10n "Enter"}}" /> + + <div class="links"> + <a href="{{route "password_recovery"}}">{{l10n "Forgot your password?"}}</a><br/> + </div> + </div> + + </div> + + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/mail_template_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/mail_template_edit.handlebars new file mode 100644 index 00000000..ed549cb5 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/mail_template_edit.handlebars @@ -0,0 +1,60 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "On this page you can edit mail templates which are used in the system."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="mail_template" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + <input type="hidden" name="lang" value="{{formlang}}" /> + + <div> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="subject" class="field-label">{{l10n "Mail subject"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="subject" type="text" name="subject" size="40" value="{{formsubject}}" class="field-input" /> + </div> + <br clear="all"/> + </div> + + <div class="field"> + <label for="body" class="field-label">{{l10n "Mail body"}}<span class="required">*</span></label> + <div class="field-valuenodesc"> + <textarea id="body" name="body" cols="20" rows="5" class="wide">{{formbody}}</textarea> + </div> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/mail_templates.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/mail_templates.handlebars new file mode 100644 index 00000000..190e1913 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/mail_templates.handlebars @@ -0,0 +1,78 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "On this page you can edit mail templates which are used in the system."}} + + <br /> + <br /> + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + {{> _errors}} + + <form name="mail_templates" method="get" action="{{formaction}}"> + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + + <div class="packed-form-fields"> + {{l10n "For language:"}}<br/> + <select name="lang" onchange="this.form.submit();"> + {{#each locales}} + <option value="{{id}}"{{#ifEqual id ../formlang}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <br clear="all"/> + + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + + </div> + </div> + </form> + + <table class="translate"> + <thead> + <tr class="header"> + <th>{{l10n "Machine name"}}</th> + <th>{{l10n "Mail subject"}}</th> + <th>{{l10n "Mail body"}}</th> + <th>{{l10n "Modify"}}</th> + </tr> + </thead> + + <tbody> + {{#each mailTemplates}} + <tr> + <td> + {{name}} + </td> + <td> + {{subject}} + </td> + <td> + {{body}} + </td> + <td> + <a href="{{route "mail_template_edit" name=name lang=../formlang}}">{{l10n "edit"}}</a> + </td> + </tr> + {{/each}} + </tbody> + </table> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/operator_avatar.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/operator_avatar.handlebars new file mode 100644 index 00000000..e0b80e59 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/operator_avatar.handlebars @@ -0,0 +1,83 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "You can upload your photo only as JPG, GIF, PNG or TIF image files."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="avatarForm" method="post" action="{{route "operator_avatar_save" operator_id=opid}}" enctype="multipart/form-data"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <p><b>{{currentop}}‎</b></p> + + <div class="form-fields"> + + {{#if avatar}} + <div class="field"> + <div class="field-label">{{l10n "Current avatar image"}}</div> + <div class="field-value"> + <img src="{{avatar}}" alt="{{l10n "cannot load avatar"}}"/><br/> + {{#if canmodify}} + <a class="field-input" href="{{csrfProtectedRoute "operator_avatar_delete" operator_id=opid}}"> + {{l10n "Remove avatar"}} + </a> + {{/if}} + </div> + <div class="field-description"> — {{l10n "Your avatar image."}}</div> + <br clear="all"/> + </div> + {{else}} + {{#unless canmodify}} + <div class="field"> + <div class="field-value-no-description"> + No avatar + </div> + </div> + {{/unless}} + {{/if}} + + {{#if canmodify}} + <div class="field"> + <label for="avatar-file" class="field-label"> + {{l10n "Upload avatar"}}<span class="required">*</span> + </label> + <div class="field-value"> + <input id="avatar-file" type="file" name="avatarFile" size="40" value="{{formavatarFile}}" class="field-input"/> + </div> + <label for="avatar-file" class="field-description"> — {{l10n "Choose the avatar file to upload.<br/>The picture size should not exceed 100x100 px."}}</label> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + {{/if}} + </div> + + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + </form> + {{/override}} +{{/extends}} diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/operator_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/operator_edit.handlebars new file mode 100644 index 00000000..41fff645 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/operator_edit.handlebars @@ -0,0 +1,123 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{#if opid}} + {{l10n "Edit general operator settings."}} + {{else}} + {{l10n "You can create a new operator here."}} + {{/if}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + {{#ifAny opid canmodify}} + <form name="agentForm" method="post" action="{{formaction}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + + <div class="form-fields"> + <div class="field"> + <label for="login" class="field-label">{{l10n "Login"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="login" type="text" name="login" size="40" value="{{formlogin}}" class="field-input"{{#unless canchangelogin}} disabled="disabled"{{/unless}}/> + </div> + <label for="login" class="field-description"> — {{l10n "Login can consist of small Latin letters and underscore."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="email" class="field-label">{{l10n "E-mail"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="email" type="text" name="email" size="40" value="{{formemail}}" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="email" class="field-description"> — {{l10n "For notifications and password retrieval."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="password" class="field-label"> + {{l10n "Password"}}{{#if requirePassword}}<span class="required">*</span>{{/if}} + </label> + <div class="field-value"> + <input id="password" type="password" name="password" size="40" value="" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}} autocomplete="off"/> + </div> + <label for="password" class="field-description"> — {{l10n "Enter a new password or leave the field empty to keep the previous one."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="password-confirm" class="field-label"> + {{l10n "Confirmation"}}{{#if requirePassword}}<span class="required">*</span>{{/if}} + </label> + <div class="field-value"> + <input id="password-confirm" type="password" name="passwordConfirm" size="40" value="" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}} autocomplete="off"/> + </div> + <label for="password-confirm" class="field-description"> — {{l10n "Confirm new password."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="name" class="field-label">{{l10n "Name"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="name" type="text" name="name" size="40" value="{{formname}}" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="name" class="field-description"> — {{l10n "This name will be seen by your visitors."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="common-name" class="field-label">{{l10n "International name (Latin)"}}<span class="required">*</span></label> + <div class="field-value"> + <input id="common-name" type="text" name="commonname" size="40" value="{{formcommonname}}" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="common-name" class="field-description"> — {{l10n "This name will be seen by your visitors."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="code" class="field-label">{{l10n "Code"}}</label> + <div class="field-value"> + <input id="code" type="text" name="code" size="40" value="{{formcode}}" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="code" class="field-description"> — {{l10n "Use to start chat with determined operator"}}</label> + <br clear="all"/> + </div> + + {{#if canmodify}} + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + {{/if}} + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/ifAny}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/operator_groups.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/operator_groups.handlebars new file mode 100644 index 00000000..8cdf615c --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/operator_groups.handlebars @@ -0,0 +1,57 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Choose groups according to operator skills."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form name="opgroupsForm" method="post" action="{{route "operator_groups_save" operator_id=opid}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <p><b>{{currentop}}‎</b></p> + + {{#each groups}} + <div class="field level{{level}}"> + <label for="group{{groupid}}" class="field-label">{{vclocalname}}</label> + <div class="field-value"> + <input id="group{{groupid}}" type="checkbox" name="group{{groupid}}" value="on"{{#if checked}} checked="checked"{{/if}}{{#unless ../canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="group{{groupid}}" class="field-description"> + — {{#if vclocaldescription}}{{vclocaldescription}}{{else}}{{l10n "<no description>"}}{{/if}} + </label> + <br clear="all"/> + </div> + {{/each}} + + {{#if canmodify}} + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + {{/if}} + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/operator_permissions.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/operator_permissions.handlebars new file mode 100644 index 00000000..7d33096a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/operator_permissions.handlebars @@ -0,0 +1,52 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Change restrictions and available features for this operator."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form id="permissionsForm" name="permissionsForm" method="post" action="{{route "operator_permissions_save" operator_id=opid}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <p><b>{{currentop}}‎</b></p> + + {{#each permissionsList}} + <label> + <input type="checkbox" id="permissions{{id}}" name="permissions{{id}}" value="on"{{#if checked}} checked="checked"{{/if}}{{#unless ../canmodify}} disabled="disabled"{{/unless}}/> + {{descr}} + </label> + <br/> + {{/each}} + + {{#if canmodify}} + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + {{/if}} + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/operators.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/operators.handlebars new file mode 100644 index 00000000..ee59f8d9 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/operators.handlebars @@ -0,0 +1,115 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "This page displays a list of company operators."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="agentsForm" method="get" action="{{route "operators"}}"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="packed-form-fields"> + {{l10n "Sort by:"}}<br/> + <select name="sortby" onchange="this.form.submit();"> + {{#each availableOrders}} + <option value="{{id}}"{{#ifEqual id ../formsortby}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="packed-form-fields"> + {{l10n "Sort direction:"}}<br/> + <select name="sortdirection" onchange="this.form.submit();"> + {{#each availableDirections}} + <option value="{{id}}"{{#ifEqual id ../formsortdirection}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <br clear="all"/> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + <br /> + + {{#if canmodify}} + <div class="table-toolbar"> + <img src="{{asset "@CurrentStyle/images/buttons/plus.png"}}" border="0" alt="" /> + <a href="{{route "operator_add"}}" title="{{l10n "Add operator..."}}"> + {{l10n "Add operator..."}} + </a> + </div> + <br clear="all"/> + {{/if}} + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Login"}}</th> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Last active"}}</th> + {{#if canmodify}} + <th></th> + <th></th> + {{/if}} + </tr> + </thead> + + <tbody> + {{#each allowedAgents}} + <tr> + <td class="not-last"> + <a href="{{route "operator_edit" operator_id=operatorid}}" class="man"> + {{vclogin}} + </a> + </td> + + <td class="not-last"> + {{vclocalename}} / {{vccommonname}} + </td> + + <td class="not-last"> + {{#ifAny isAvailable isAway}} + {{#if isAvailable}} + {{l10n "Online"}} + {{else}} + {{l10n "Away"}} + {{/if}} + {{else}} + {{formatDate lastTimeOnline}} + {{/ifAny}} + </td> + + {{#if ../canmodify}} + <td> + {{#if isDisabled}} + <a href="{{csrfProtectedRoute "operator_enable" operator_id=operatorid}}">{{l10n "enable"}}</a> + {{else}} + <a href="{{csrfProtectedRoute "operator_disable" operator_id=operatorid}}">{{l10n "disable"}}</a> + {{/if}} + </td> + + <td> + <a class="remove-link" href="{{csrfProtectedRoute "operator_delete" operator_id=operatorid}}" data-operator-login="{{vclogin}}"> + {{l10n "remove"}} + </a> + </td> + {{/if}} + </tr> + {{/each}} + </tbody> + </table> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery.handlebars new file mode 100644 index 00000000..d0ceb08f --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery.handlebars @@ -0,0 +1,75 @@ +{{#extends "_layout"}} + {{#if localeLinks}} + {{#override "menu"}}{{> _locales}}{{/override}} + {{/if}} + + {{#override "content"}} + {{#if isdone}} + <div id="login-pane"> + <div class="header"> + <h2>{{l10n "Password retrieval"}}</h2> + </div> + + <div class="form-fields"> + {{l10n "We've sent the instructions to your email. Please check it."}} + <br/> + <br/> + <a href="{{route "login"}}">{{l10n "Back to login"}}</a> + </div> + </div> + {{else}} + <form name="restoreForm" method="post" action="{{route "password_recovery"}}"> + {{csrfTokenInput}} + + <div id="login-pane"> + + <div class="header"> + <h2>{{l10n "Trouble Accessing Your Account?"}}</h2> + </div> + + <div class="form-fields"> + {{l10n "You cannot retrieve your password, but you can set a new one by following a link sent to you by email."}}<br/><br/> + + {{> _errors}} + + <div class="field"> + <div class="field-label-left">{{l10n "Login or E-mail:"}}</div> + <div class="field-value"> + <input type="text" name="loginoremail" size="25" value="{{formloginoremail}}" class="field-input"/> + </div> + <br clear="all"/> + </div> + + <div class="form-button"> + <table class="submit-button"> + <tr> + <td> + <a href="javascript:document.restoreForm.submit();"> + <img src="{{asset "@CurrentStyle/images/submit.gif"}}" width="40" height="35" border="0" alt="" /> + </a> + </td> + <td class="submit"> + <a href="javascript:document.restoreForm.submit();"> + {{l10n "Reset password"}} + </a> + </td> + <td> + <a href="javascript:document.restoreForm.submit();"> + <img src="{{asset "@CurrentStyle/images/submitrest.gif"}}" width="10" height="35" border="0" alt="" /> + </a> + </td> + </tr> + </table> + + <div class="links"> + <a href="{{route "login"}}">{{l10n "Back to login"}}</a> + </div> + </div> + + </div> + + </div> + </form> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery_reset.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery_reset.handlebars new file mode 100644 index 00000000..07d54d22 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/password_recovery_reset.handlebars @@ -0,0 +1,92 @@ +{{#extends "_layout"}} + {{#if localeLinks}} + {{#override "menu"}}{{> _locales}}{{/override}} + {{/if}} + + {{#override "content"}} + {{#if isdone}} + <div id="login-pane"> + <div class="header"> + <h2>{{l10n "Your password has been changed."}}</h2> + </div> + + <div class="form-fields"> + {{l10n "Login using your new password."}} + <br/> + <br/> + <a href="{{route "login" login=loginname}}">{{l10n "Proceed to login"}}</a> + </div> + </div> + {{else}} + <form name="resetForm" method="post" action="{{route "password_recovery_reset"}}"> + {{csrfTokenInput}} + + <input type="hidden" name="id" value="{{id}}"/> + <input type="hidden" name="token" value="{{token}}"/> + + <div id="login-pane"> + + <div class="header"> + <h2>{{l10n "Change your password"}}</h2> + </div> + + <div class="form-fields"> + {{l10n "Please choose a password to use with your account."}} + + <br/> + <br/> + + {{> _errors}} + + {{#if showform}} + <div class="field"> + <div class="field-label-left">{{l10n "Password"}}</div> + <div class="field-value"> + <input type="password" name="password" size="25" value="" class="field-input" autocomplete="off"/> + </div> + <br clear="all"/> + </div> + + <div class="field"> + <div class="field-label-left">{{l10n "Confirmation"}}</div> + <div class="field-value"> + <input type="password" name="passwordConfirm" size="25" value="" class="field-input" autocomplete="off"/> + </div> + <br clear="all"/> + </div> + + <div class="form-button"> + <table class="submit-button"> + <tr> + <td> + <a href="javascript:document.resetForm.submit();"> + <img src="{{asset "@CurrentStyle/images/submit.gif"}}" width="40" height="35" border="0" alt="" /> + </a> + </td> + <td class="submit"> + <a href="javascript:document.resetForm.submit();"> + {{l10n "Change"}} + </a> + </td> + <td> + <a href="javascript:document.resetForm.submit();"> + <img src="{{asset "@CurrentStyle/images/submitrest.gif"}}" width="10" height="35" border="0" alt="" /> + </a> + </td> + </tr> + </table> + + <div class="links"> + <a href="{{route "login"}}">{{l10n "Back to login"}}</a> + </div> + </div> + {{else}} + <a href="{{route "login"}}">{{l10n "Back to login"}}</a> + {{/if}} + </div> + + </div> + </form> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/plugins.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/plugins.handlebars new file mode 100644 index 00000000..7e8c873a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/plugins.handlebars @@ -0,0 +1,74 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Here you can manage plugins. Notice that plugins are configured via the main config file."}} + + <br /> + <br /> + + {{> _errors}} + + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Name"}}</th> + <th>{{l10n "Version"}}</th> + <th>{{l10n "Dependencies"}}</th> + <th>{{l10n "State"}}</th> + <th>{{l10n "Edit"}}</th> + </tr> + </thead> + + <tbody> + {{#each plugins}} + <tr> + <td class="not-last">{{name}}</td> + <td class="not-last">{{version}}</td> + <td class="not-last"> + {{#each dependencies}}{{#unless @first}}, {{/unless}}{{@key}}({{this}}){{/each}} + </td> + <td class="notlast"> + {{state}} + </td> + <td> + {{#if enabled}} + {{#if canBeDisabled}} + <a href="{{csrfProtectedRoute "plugin_disable" plugin_name=name}}">{{l10n "disable"}}</a> + {{else}} + <span class="disabled-link" title="{{l10n "Disable all the dependencies first"}}">{{l10n "disable"}}</span> + {{/if}} + {{else}} + {{#if canBeEnabled}} + <a href="{{csrfProtectedRoute "plugin_enable" plugin_name=name}}">{{l10n "enable"}}</a> + {{else}} + <span class="disabled-link" title="{{l10n "Enable all the dependencies first"}}">{{l10n "enable"}}</span> + {{/if}} + {{#if installed}} + {{#if canBeUninstalled}} + <a href="{{csrfProtectedRoute "plugin_uninstall" plugin_name=name}}" class="uninstall-link" data-plugin-name="{{name}}">{{l10n "uninstall"}}</a> + {{else}} + <span class="disabled-link" title="{{l10n "Uninstall all the dependencies first"}}">{{l10n "uninstall"}}</span> + {{/if}} + {{/if}} + {{/if}} + {{#if needsUpdate}} + {{#if canBeUpdated}} + <a href="{{csrfProtectedRoute "plugin_update" plugin_name=name}}">{{l10n "update"}}</a> + {{else}} + <span class="disabled-link" title="{{l10n "Update all the dependencies first"}}">{{l10n "update"}}</span> + {{/if}} + {{/if}} + </td> + </tr> + {{else}} + <tr> + <td colspan="5"> + {{l10n "No elements"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/settings_common.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/settings_common.handlebars new file mode 100644 index 00000000..e32bfae9 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/settings_common.handlebars @@ -0,0 +1,175 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Specify options affecting chat window and common system behavior."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + <form name="settings" method="post" action="{{route "settings_common_save"}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + + <div class="form-fields"> + <div class="field"> + <label for="email" class="field-label">{{l10n "Email"}}</label> + <div class="field-value"> + <input id="email" type="text" name="email" size="40" value="{{formemail}}" class="field-input"/> + </div> + <label for="email" class="field-description"> — {{l10n "Enter an email to receive system messages"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="left-messages-locale" class="field-label">{{l10n "Language of the messages left by visitors"}}</label> + <div class="field-value"> + <select id="left-messages-locale" name="leftmessageslocale"> + {{#each availableLocales}} + <option value="{{this}}"{{#ifEqual this ../formleftmessageslocale}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <label for="left-messages-locale" class="field-description"> — {{l10n "Language of the messages that could be left by visitors when operators aren't available"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="title-field" class="field-label">{{l10n "Company title"}}</label> + <div class="field-value"> + <input id="title-field" type="text" name="title" size="40" value="{{formtitle}}" class="field-input"/> + </div> + <label for="title-field" class="field-description"> — {{l10n "Enter your company title"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="chat-title" class="field-label">{{l10n "Title in the chat window"}}</label> + <div class="field-value"> + <input id="chat-title" type="text" name="chattitle" size="40" value="{{formchattitle}}" class="field-input"/> + </div> + <label for="chat-title" class="field-description"> — {{l10n "Name of your company for example."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="logo-field" class="field-label">{{l10n "Your company logo"}}</label> + <div class="field-value"> + <input id="logo-field" type="text" name="logo" size="40" value="{{formlogo}}" class="field-input"/> + </div> + <label for="logo-field" class="field-description"> — {{l10n "Enter http address of your company logo"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="host-url" class="field-label">{{l10n "URL of your website"}}</label> + <div class="field-value"> + <input id="host-url" type="text" name="hosturl" size="40" value="{{formhosturl}}" class="field-input"/> + </div> + <label for="host-url" class="field-description"> — {{l10n "Destination for your company name or logo link"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="username-pattern" class="field-label">{{l10n "Visitor's identifier"}}</label> + <div class="field-value"> + <input id="username-pattern" type="text" name="usernamepattern" size="40" value="{{formusernamepattern}}" class="field-input"/> + </div> + <label for="username-pattern" class="field-description"> — {{l10n "How to build visitor's identifying string from {name}, {id} or {addr}. Default: {name}"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="cron-key" class="field-label">{{l10n "Cron security key"}}</label> + <div class="field-value"> + <input id="cron-key" type="text" name="cronkey" size="40" value="{{formcronkey}}" class="field-input"/> + </div> + <label for="cron-key" class="field-description"> — {{l10n "To run cron use link <a href=\"{0}\">{0}</a>." cron_path}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="page-style" class="field-label">{{l10n "Select a style for your operator pages"}}</label> + <div class="field-value"> + <select id="page-style" name="page_style"> + {{#each availablePageStyles}} + <option value="{{this}}"{{#ifEqual this ../formpagestyle}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <label for="page-style" class="field-description"> — {{l10n "A preview for each style is available <a href=\"{0}\">here</a>" pageStylePreviewPath}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="chat-style" class="field-label">{{l10n "Select a style for your chat windows"}}</label> + <div class="field-value"> + <select id="chat-style" name="chat_style" > + {{#each availableChatStyles}} + <option value="{{this}}"{{#ifEqual this ../formchatstyle}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <label for="chat-style" class="field-description"> — {{l10n "A preview all pages for each style is available <a href=\"{0}\">here</a>" chatStylePreviewPath}}</label> + <br clear="all"/> + </div> + + {{#if enabletracking}} + <div class="field"> + <label for="invitation-style" class="field-label">{{l10n "Select a style for your invitation"}}</label> + <div class="field-value"> + <select id="invitation-style" name="invitation_style" > + {{#each availableInvitationStyles}} + <option value="{{this}}"{{#ifEqual this ../forminvitationstyle}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <label for="invitation-style" class="field-description"> — {{l10n "A preview for invitation style is available <a href=\"{0}\">here</a>" invitationStylePreviewPath}}</label> + <br clear="all"/> + </div> + {{/if}} + + <div class="field"> + <div class="field-label">{{l10n "Send messages with:"}}</div> + <div class="field-value-no-description"> + <input id="send-message-key-enter" type="radio" name="sendmessagekey" value="enter" {{#ifEqual formsendmessagekey "enter"}} checked="checked"{{/ifEqual}}/><label for="send-message-key-enter">Enter</label> + <input id="send-message-key-ctrl-enter" type="radio" name="sendmessagekey" value="center" {{#ifEqual formsendmessagekey "center"}} checked="checked"{{/ifEqual}}/><label for="send-message-key-ctrl-enter">Ctrl-Enter</label> + </div> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + + </div> + + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/settings_features.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/settings_features.handlebars new file mode 100644 index 00000000..7289d118 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/settings_features.handlebars @@ -0,0 +1,224 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Specify options affecting chat window and common system behavior."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Features activated"}}</div> + {{/if}} + + {{#if regeneratebutton}} + <br/> + <div id="form-message"><img src="{{asset "@CurrentStyle/images/dash/warning.png"}}" alt="" class="warning" /> {{l10n "<a href=\"{0}\">Regenerate the chat button</a> for options to take effect" (route "button_code")}}</div> + {{/if}} + + <form name="features" method="post" action="{{route "settings_features_save"}}"> + {{csrfTokenInput}} + <input type="hidden" name="sent" value="true"/> + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + + <div class="form-fields"> + <div class="field"> + <label for="user-can-change-name" class="field-label">{{l10n "Allows users to change their names"}}</label> + <div class="field-value"> + <input id="user-can-change-name" type="checkbox" name="usercanchangename" value="on"{{#if formusercanchangename}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="user-can-change-name" class="field-description"> — {{l10n "Turn off to hide edit box from chat window"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="enable-ssl" class="field-label">{{l10n "Allow secure connections (SSL)"}}</label> + <div class="field-value"> + <input id="enable-ssl" type="checkbox" name="enablessl" value="on"{{#if formenablessl}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-ssl" class="field-description"> — {{l10n "Please note that your web server should be configured to support https requests."}}</label> + <br clear="all"/> + + <div class="subfield under-ssl"> + <label for="force-ssl" class="field-label">{{l10n "Force all chats to be secure"}}</label> + <div class="field-value"> + <input id="force-ssl" type="checkbox" name="forcessl" value="on"{{#if formforcessl}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="force-ssl" class="field-description"> — {{l10n "Show chats only through https connection"}}</label> + <br clear="all"/> + </div> + </div> + + <div class="field"> + <label for="enable-groups" class="field-label">{{l10n "Enable \"Groups\""}}</label> + <div class="field-value"> + <input id="enable-groups" type="checkbox" name="enablegroups" value="on"{{#if formenablegroups}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-groups" class="field-description"> — {{l10n "Use it to have separate queues for different questions."}}</label> + <br clear="all"/> + + <div class="subfield under-groups"> + <label for="enable-groups-isolation" class="field-label">{{l10n "Enable \"Groups Isolation\""}}</label> + <div class="field-value"> + <input id="enable-groups-isolation" type="checkbox" name="enablegroupsisolation" value="on"{{#if formenablegroupsisolation}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-groups-isolation" class="field-description"> — {{l10n "Use it to completely isolate groups from each other."}}</label> + <br clear="all"/> + </div> + </div> + + <div class="field"> + <label for="enable-statistics" class="field-label">{{l10n "Enable \"Statistics\""}}</label> + <div class="field-value"> + <input id="enable-statistics" type="checkbox" name="enablestatistics" value="on"{{#if formenablestatistics}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-statistics" class="field-description"> — {{l10n "Adds a page with messenger usage reports."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="enable-tracking" class="field-label">{{l10n "Enable \"Tracking and inviting\""}}</label> + <div class="field-value"> + <input id="enable-tracking" type="checkbox" name="enabletracking" value="on"{{#if formenabletracking}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-tracking" class="field-description"> — {{l10n "Enable tracking of visitors' activity on your site and ability to invite visitors to chat."}}</label> + <br clear="all"/> + + <div class="subfield under-tracking"> + <label for="track-operators" class="field-label">{{l10n "Track operators"}}</label> + <div class="field-value"> + <input id="track-operators" type="checkbox" name="trackoperators" value="on"{{#if formtrackoperators}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="track-operators" class="field-description"> — {{l10n "Allow tracking system to treat operators as normal visitors and add show in the visitors on site list."}}</label> + <br clear="all"/> + </div> + </div> + + <div class="field"> + <label for="enable-bans" class="field-label">{{l10n "Enable feature \"Malicious Visitors\""}}</label> + <div class="field-value"> + <input id="enable-bans" type="checkbox" name="enableban" value="on"{{#if formenableban}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-bans" class="field-description"> — {{l10n "Using it you can block attacks from specific IPs"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="enable-presurvey" class="field-label">{{l10n "Enable \"Pre-chat survey\""}}</label> + <div class="field-value"> + <input id="enable-presurvey" type="checkbox" name="enablepresurvey" value="on"{{#if formenablepresurvey}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-presurvey" class="field-description"> — {{l10n "Forces the user to fill out a special form to start a chat."}}</label> + <br clear="all"/> + + <div class="subfield under-survey"> + <label for="survey-ask-mail" class="field-label">{{l10n "Ask for visitor's email"}}</label> + <div class="field-value"> + <input id="survey-ask-mail" type="checkbox" name="surveyaskmail" value="on"{{#if formsurveyaskmail}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="survey-ask-mail" class="field-description"> — {{l10n "Show/hide email field in the survey"}}</label> + <br clear="all"/> + </div> + + <div class="subfield under-survey"> + <label for="survey-ask-group" class="field-label">{{l10n "Allows a visitor to choose department/group"}}</label> + <div class="field-value"> + <input id="survey-ask-group" type="checkbox" name="surveyaskgroup" value="on"{{#if formsurveyaskgroup}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="survey-ask-group" class="field-description"> — {{l10n "Show/hide department selection field in the survey"}}</label> + <br clear="all"/> + </div> + + <div class="subfield under-survey"> + <label for="survey-ask-message" class="field-label">{{l10n "Show initial question field"}}</label> + <div class="field-value"> + <input id="survey-ask-message" type="checkbox" name="surveyaskmessage" value="on"{{#if formsurveyaskmessage}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="survey-ask-message" class="field-description"> — {{l10n "Show/hide initial question field in the survey"}}</label> + <br clear="all"/> + </div> + + <div class="subfield under-survey"> + <label for="enable-privacy-policy" class="field-label">{{l10n "Enable \"Privacy policy\""}}</label> + <div class="field-value"> + <input id="enable-privacy-policy" type="checkbox" name="enableprivacypolicy" value="on"{{#if formenableprivacypolicy}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-privacy-policy" class="field-description"> — {{l10n "Display a notice with the link to privacy policy on the survey page"}}</label> + <br clear="all"/> + + <div class="subfield under-privacy-policy"> + <label for="privacy-policy" class="field-label">{{l10n "Privacy policy"}}</label> + <div class="field-value"> + <input id="privacy-policy" type="text" name="privacypolicy" size="40" value="{{formprivacypolicy}}" class="field-input"{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="privacy-policy" class="field-description"> — {{l10n "Enter a URL of your privacy policy"}}</label> + <br clear="all"/> + </div> + </div> + </div> + + <div class="field"> + <label for="enable-popup-notification" class="field-label">{{l10n "Enable \"Popup dialog notification of the new visitor\"."}}</label> + <div class="field-value"> + <input id="enable-popup-notification" type="checkbox" name="enablepopupnotification" value="on"{{#if formenablepopupnotification}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-popup-notification" class="field-description"> — {{l10n "Small dialog appears to attract your attention."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="show-online-operators" class="field-label">{{l10n "Show online operators on \"List of awaiting visitors\" page"}}</label> + <div class="field-value"> + <input id="show-online-operators" type="checkbox" name="showonlineoperators" value="on"{{#if formshowonlineoperators}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="show-online-operators" class="field-description"> — {{l10n "Can slow down the update rate of the list"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="enable-captcha" class="field-label">{{l10n "Force visitor to enter a verification code when leaving message"}}</label> + <div class="field-value"> + <input id="enable-captcha" type="checkbox" name="enablecaptcha" value="on"{{#if formenablecaptcha}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="enable-captcha" class="field-description"> — {{l10n "Protection against automated spam (captcha)"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="autocheck-updates" class="field-label">{{l10n "Check updates automatically"}}</label> + <div class="field-value"> + <input id="autocheck-updates" type="checkbox" name="autocheckupdates" value="on"{{#if formautocheckupdates}} checked="checked"{{/if}}{{#unless canmodify}} disabled="disabled"{{/unless}}/> + </div> + <label for="autocheck-updates" class="field-description"> — {{l10n "System will check updates for the core and plugins automatically using cron"}}</label> + <br clear="all"/> + </div> + + {{#if canmodify}} + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + {{/if}} + </div> + + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/settings_performance.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/settings_performance.handlebars new file mode 100644 index 00000000..5883e116 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/settings_performance.handlebars @@ -0,0 +1,154 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "Specify options affecting chat window and common system behavior."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Changes saved"}}</div> + {{/if}} + + {{#if regeneratebutton}} + <br/> + <div id="form-message"><img src="{{asset "@CurrentStyle/images/dash/warning.png"}}" alt="" class="warning" /> {{l10n "<a href=\"{0}\">Regenerate the chat button</a> for options to take effect" (route "button_code")}}</div> + {{/if}} + + <form name="performance" method="post" action="{{route "settings_performance_save"}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="online-timeout" class="field-label">{{l10n "Operator online time threshold"}}</label> + <div class="field-value"> + <input id="online-timeout" type="text" name="onlinetimeout" size="40" value="{{formonlinetimeout}}" class="field-input"/> + </div> + <label for="online-timeout" class="field-description"> — {{l10n "Set the number of seconds to show an operator as online. Default is 30 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="connection-timeout" class="field-label">{{l10n "Connection timeout for messaging window"}}</label> + <div class="field-value"> + <input id="connection-timeout" type="text" name="connectiontimeout" size="40" value="{{formconnectiontimeout}}" class="field-input"/> + </div> + <label for="connection-timeout" class="field-description"> — {{l10n "Set the number of seconds after the last ping to consider the chat window still connected. Default is 30 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="operator-frequency" class="field-label">{{l10n "Operator's console refresh time"}}</label> + <div class="field-value"> + <input id="operator-frequency" type="text" name="frequencyoperator" size="40" value="{{formfrequencyoperator}}" class="field-input"/> + </div> + <label for="operator-frequency" class="field-description"> — {{l10n "Specify the poll interval in seconds. Default is 2 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="chat-frequency" class="field-label">{{l10n "Chat refresh time"}}</label> + <div class="field-value"> + <input id="chat-frequency" type="text" name="frequencychat" size="40" value="{{formfrequencychat}}" class="field-input"/> + </div> + <label for="chat-frequency" class="field-description"> — {{l10n "Specify the poll interval in seconds. Default is 2 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="connections-per-host" class="field-label">{{l10n "Max number of threads from one address"}}</label> + <div class="field-value"> + <input id="connections-per-host" type="text" name="onehostconnections" size="40" value="{{formonehostconnections}}" class="field-input"/> + </div> + <label for="connections-per-host" class="field-description"> — {{l10n "0 allows any number of connections"}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="thread-lifetime" class="field-label">{{l10n "Thread lifetime"}}</label> + <div class="field-value"> + <input id="thread-lifetime" type="text" name="threadlifetime" size="40" value="{{formthreadlifetime}}" class="field-input"/> + </div> + <label for="thread-lifetime" class="field-description"> — {{l10n "Specify the lifetime of the thread after closing the dialog box in seconds. Default is 600 seconds. Set 0 for unlimited thread lifetime."}}</label> + <br clear="all"/> + </div> + + {{#if enabletracking}} + <div class="field"> + <label for="tracking-frequency" class="field-label">{{l10n "Tracking refresh time"}}</label> + <div class="field-value"> + <input id="tracking-frequency" type="text" name="frequencytracking" size="40" value="{{formfrequencytracking}}" class="field-input"/> + </div> + <label for="tracking-frequency" class="field-description"> — {{l10n "Specify the poll interval in seconds. Default is 10 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="tracked-visitors-limit" class="field-label">{{l10n "Limit for tracked visitors list"}}</label> + <div class="field-value"> + <input id="tracked-visitors-limit" type="text" name="visitorslimit" size="40" value="{{formvisitorslimit}}" class="field-input"/> + </div> + <label for="tracked-visitors-limit" class="field-description"> — {{l10n "Specify the number of items to display in tracked visitors list. Default is 20. Set 0 for all visitors (not recommended)."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="invitation-lifetime" class="field-label">{{l10n "Invitation lifetime"}}</label> + <div class="field-value"> + <input id="invitation-lifetime" type="text" name="invitationlifetime" size="40" value="{{forminvitationlifetime}}" class="field-input"/> + </div> + <label for="invitation-lifetime" class="field-description"> — {{l10n "Specify the lifetime of invitation in seconds. Default is 60 seconds."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="tracking-lifetime" class="field-label">{{l10n "Track lifetime"}}</label> + <div class="field-value"> + <input id="tracking-lifetime" type="text" name="trackinglifetime" size="40" value="{{formtrackinglifetime}}" class="field-input"/> + </div> + <label for="tracking-lifetime" class="field-description"> — {{l10n "Specify the lifetime of old visitor's tracks in seconds. Default is 600 seconds."}}</label> + <br clear="all"/> + </div> + {{/if}} + + <div class="field"> + <label for="max-uploaded-file-size" class="field-label">{{l10n "Maximum size of uploaded files"}}</label> + <div class="field-value"> + <input id="max-uploaded-file-size" type="text" name="maxuploadedfilesize" size="40" value="{{formmaxuploadedfilesize}}" class="field-input"/> + </div> + <label for="max-uploaded-file-size" class="field-description"> — {{l10n "The upper limit of uploaded files (avatars) in bytes. Default is 100000 bytes."}}</label> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + <div class="asterisk"> + <span class="required">*</span> - {{l10n "mandatory fields"}} + </div> + + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/statistics.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/statistics.handlebars new file mode 100644 index 00000000..9cb8594c --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/statistics.handlebars @@ -0,0 +1,233 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{{pageDescription}}}<br/> + {{l10n "Beware that statistics is aggregated up to yesterday."}} + + <br /> + <br /> + + {{> _errors}} + + <form name="statisticsForm" method="get" action="{{route "statistics" type=type}}"> + + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <div class="field-label">{{l10n "Select dates"}}</div> + <div class="field-value-no-description"> + <div class="search-controls"> + <label for="start-day">{{l10n "From:"}}</label> + <select id="start-day" name="startday"> + {{#each availableDays}} + <option value="{{this}}"{{#ifEqual this ../formstartday}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + + <select name="startmonth"> + {{#each availableMonth}} + <option value="{{@key}}"{{#ifEqual @key ../formstartmonth}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <div class="search-controls"> + <label for="end-day">{{l10n "Till:"}}</label> + <select id="end-day" name="endday"> + {{#each availableDays}} + <option value="{{this}}"{{#ifEqual this ../formendday}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + + <select name="endmonth"> + {{#each availableMonth}} + <option value="{{@key}}"{{#ifEqual @key ../formendmonth}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + <div id="search-button"> + <input type="submit" name="search" class="submit-button-background login-button" value="{{l10n "Search"}}" /> + </div> + </div> + <br clear="all"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + + {{#if showresults}} + {{#if showbydate}} + <br/> + <br/> + + <div class="table-title"> + {{l10n "Usage statistics for each date"}} + </div> + + <table class="statistics"> + <thead> + <tr> + <th>{{l10n "Date"}}</th> + <th>{{l10n "Chat threads"}}</th> + <th>{{l10n "Missed threads"}}</th> + <th>{{l10n "Messages from operators"}}</th> + <th>{{l10n "Messages from visitors"}}</th> + <th>{{l10n "Average waiting time (in seconds)"}}</th> + <th>{{l10n "Average chat time (in seconds)"}}</th> + {{#if show_invitations_info}} + <th>{{l10n "Invitations sent"}}</th> + <th>{{l10n "Invitations accepted"}}</th> + <th>{{l10n "Invitations rejected"}}</th> + <th>{{l10n "Invitations ignored"}}</th> + {{/if}} + </tr> + </thead> + <tbody> + {{#if reportByDate}} + {{#each reportByDate}} + <tr> + <td>{{date}}</td> + <td>{{threads}}</td> + <td>{{missedthreads}}</td> + <td>{{agents}}</td> + <td>{{users}}</td> + <td>{{avgwaitingtime}}</td> + <td>{{avgchattime}}</td> + {{#if ../show_invitations_info}} + <td>{{sentinvitations}}</td> + <td>{{acceptedinvitations}}</td> + <td>{{rejectedinvitations}}</td> + <td>{{ignoredinvitations}}</td> + {{/if}} + </tr> + {{/each}} + <tr> + <td><b>{{l10n "Total:"}}</b></td> + <td>{{reportByDateTotal.threads}}</td> + <td>{{reportByDateTotal.missedthreads}}</td> + <td>{{reportByDateTotal.agents}}</td> + <td>{{reportByDateTotal.users}}</td> + <td>{{reportByDateTotal.avgwaitingtime}}</td> + <td>{{reportByDateTotal.avgchattime}}</td> + {{#if show_invitations_info}} + <td>{{reportByDateTotal.sentinvitations}}</td> + <td>{{reportByDateTotal.acceptedinvitations}}</td> + <td>{{reportByDateTotal.rejectedinvitations}}</td> + <td>{{reportByDateTotal.ignoredinvitations}}</td> + {{/if}} + </tr> + {{else}} + <tr> + <td colspan="{{#if show_invitations_info}}11{{else}}7{{/if}}"> + {{l10n "Not enough data"}} + </td> + </tr> + {{/if}} + </tbody> + </table> + {{/if}} + + {{#if showbyagent}} + <br/> + <br/> + + <div class="table-title">{{l10n "Threads by operator"}}</div> + <table class="statistics"> + <thead> + <tr> + <th>{{l10n "Operator"}}</th> + <th>{{l10n "Chat Threads"}}</th> + <th>{{l10n "Messages"}}</th> + <th>{{l10n "Average message length (in chars)"}}</th> + {{#if show_invitations_info}} + <th>{{l10n "Invitations sent"}}</th> + <th>{{l10n "Invitations accepted"}}</th> + <th>{{l10n "Invitations rejected"}}</th> + <th>{{l10n "Invitations ignored"}}</th> + {{/if}} + </tr> + </thead> + + <tbody> + {{#each reportByAgent}} + <tr> + <td><a href="{{route "history" q=name type="operator"}}">{{name}}</a></td> + <td>{{threads}}</td> + <td>{{msgs}}</td> + <td>{{avglen}}</td> + {{#if ../show_invitations_info}} + <td>{{sentinvitations}}</td> + <td>{{acceptedinvitations}}</td> + <td>{{rejectedinvitations}}</td> + <td>{{ignoredinvitations}}</td> + {{/if}} + </tr> + {{else}} + <tr> + <td colspan="{{#if show_invitations_info}}8{{else}}4{{/if}}"> + {{l10n "Not enough data"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + {{/if}} + + {{#if showbypage}} + <br/> + <br/> + + <div class="table-title">{{l10n "Chat threads by page"}}</div> + <table class="statistics"> + <thead> + <tr> + <th>{{l10n "Page"}}</th> + <th>{{l10n "View times"}}</th> + <th>{{l10n "Chat threads"}}</th> + {{#if show_invitations_info}} + <th>{{l10n "Invitations sent"}}</th> + <th>{{l10n "Invitations accepted"}}</th> + <th>{{l10n "Invitations rejected"}}</th> + <th>{{l10n "Invitations ignored"}}</th> + {{/if}} + </tr> + </thead> + + <tbody> + {{#each reportByPage}} + <tr> + <td><a href="{{address}}">{{address}}</a></td> + <td>{{visittimes}}</td> + <td>{{chattimes}}</td> + {{#if ../show_invitations_info}} + <td>{{sentinvitations}}</td> + <td>{{acceptedinvitations}}</td> + <td>{{rejectedinvitations}}</td> + <td>{{ignoredinvitations}}</td> + {{/if}} + </tr> + {{else}} + <tr> + <td colspan="{{#if show_invitations_info}}7{{else}}3{{/if}}"> + {{l10n "Not enough data"}} + </td> + </tr> + {{/each}} + </tbody> + </table> + {{/if}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/style_preview.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/style_preview.handlebars new file mode 100644 index 00000000..f078d001 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/style_preview.handlebars @@ -0,0 +1,49 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "You can view the list of themes you currently have installed here."}} + + <br /> + <br /> + + <form name="preview" method="get" action="{{formaction}}"> + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="preview" class="field-label">{{l10n "Choose style"}}</label> + <div class="field-value-no-description"> + <select id="preview" name="preview" onchange="this.form.submit();"> + {{#each availablePreviews}} + <option value="{{this}}"{{#ifEqual this ../formpreview}} selected="selected"{{/ifEqual}}>{{this}}</option> + {{/each}} + </select> + </div> + </div> + {{#each screenshotsList}} + <div class="field"> + <div class="field-label">{{description}}</div> + <div class="field-iframe-value"> + <img class="screenshot" alt="{{name}}" src="{{file}}" /> + </div> + </div> + {{/each}} + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/tracked.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/tracked.handlebars new file mode 100644 index 00000000..85932944 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/tracked.handlebars @@ -0,0 +1,44 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{l10n "This page displays tracked history of visitor's activity on site."}} + + <br/><br/> + + <div class="log-pane"> + <div class="header"> + <div class="param-label"> + {{l10n "Visitor came from"}}: + </div> + + <div class="param-value"> + {{#if entry}} + <a href="{{entry}}">{{entry}}</a> + {{else}} + {{l10n "direct visit"}} + {{/if}} + </div> + <br clear="all"/> + </div> + + <div class="message"> + <table class="list"> + <thead> + <tr class="header"> + <th>{{l10n "Visit time"}}</th> + <th>{{l10n "Visited page"}}</th> + </tr> + </thead> + + <tbody> + {{#each history}} + <tr> + <td class="not-last">{{date}}</td> + <td><a href="{{link}}">{{link}}</a></td> + </tr> + {{/each}} + </tbody> + </table> + </div> + </div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/translation_edit.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/translation_edit.handlebars new file mode 100644 index 00000000..f7107b9a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/translation_edit.handlebars @@ -0,0 +1,52 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{#if saved}} + {{l10n "Your translation is saved."}} + + <script type="text/javascript" src="{{asset "@CurrentStyle/js/autoclose.js"}}"></script> + {{else}} + {{l10n "Enter your translation."}} + + <br/> + <br/> + + {{> _errors}} + + <form name="translateForm" method="post" action="{{route "translation_edit_save" string_id=key}}"> + {{csrfTokenInput}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + <div class="field"> + <label for="original" class="field-label">{{l10n "Source string"}}</label> + <div class="field-value-no-description"> + <textarea id="original" name="original" disabled="disabled" cols="20" rows="5" class="wide">{{formoriginal}}</textarea> + </div> + </div> + + <div class="field"> + <label for="translation" class="field-label">{{localeName}}</label> + <div class="field-value-no-description"> + <textarea id="translation" name="translation" cols="20" rows="5" class="wide">{{formtranslation}}</textarea> + </div> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Save"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/translation_export.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/translation_export.handlebars new file mode 100644 index 00000000..824ca9b5 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/translation_export.handlebars @@ -0,0 +1,47 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "On this page you can download translations."}} + + <br /> + <br /> + + {{> _errors}} + + <form method="post" action="{{route "translation_export_process"}}"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + {{l10n "For language:"}}<br/> + <select name="target"> + {{#each localesList}} + <option value="{{id}}"{{#ifEqual id ../formtarget}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="form-fields"> + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Download"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/translation_import.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/translation_import.handlebars new file mode 100644 index 00000000..a7c7aa4a --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/translation_import.handlebars @@ -0,0 +1,71 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "On this page you can upload a custom translation file."}} + + <br /> + <br /> + + {{> _errors}} + + {{#if stored}} + <div id="form-message">{{l10n "Translation imported"}}</div> + {{/if}} + + <form method="post" action="{{route "translation_import_process"}}" enctype="multipart/form-data"> + {{csrfTokenInput}} + + <div> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="form-fields"> + {{l10n "For language:"}}<br/> + <select name="target"> + {{#each localesList}} + <option value="{{id}}"{{#ifEqual id ../formtarget}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="form-fields"> + <div class="field"> + <label for="override" class="field-label">{{l10n "Override existing translations"}}</label> + <div class="field-value"> + <input id="override" type="checkbox" name="override" value="on"{{#if formoverride}} checked="checked"{{/if}}/> + </div> + <label for="override" class="field-description"> — {{l10n "Replaces translated strings in the database with values from the imported file."}}</label> + <br clear="all"/> + </div> + + <div class="field"> + <label for="translation-file" class="field-label"> + {{l10n "Upload translation"}}<span class="required">*</span> + </label> + <div class="field-value"> + <input id="translation-file" type="file" name="translation_file" size="40" value="{{formtranslationFile}}" class="field-input"/> + </div> + <label for="translation-file" class="field-description"> — {{l10n "Choose the translation file to upload."}}</label> + <br clear="all"/> + </div> + + <div class="form-button"> + <input type="submit" name="save" class="submit-button-background save-button" value="{{l10n "Upload"}}"/> + </div> + </div> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + </form> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/translations.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/translations.handlebars new file mode 100644 index 00000000..bc89d8f3 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/translations.handlebars @@ -0,0 +1,86 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "content"}} + {{l10n "If you don't agree with the translation please send us an update."}} + + <br /> + <br /> + + <form name="translateForm" method="get" action="{{route "translations"}}"> + {{> _tabs}} + + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <div class="packed-form-fields"> + {{l10n "For language:"}}<br/> + <select name="target" onchange="this.form.submit();"> + {{#each availableLocales}} + <option value="{{id}}"{{#ifEqual id ../formtarget}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <div class="packed-form-fields"> + {{l10n "Sort by:"}}<br/> + <select name="sort" onchange="this.form.submit();"> + {{#each availableOrders}} + <option value="{{id}}"{{#ifEqual id ../formsort}} selected="selected"{{/ifEqual}}>{{name}}</option> + {{/each}} + </select> + </div> + + <br clear="all"/> + + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </form> + <br/> + + + {{#if pagination}} + {{generatePagination pagination "false"}} + {{/if}} + + <table class="translate"> + <thead> + <tr class="header"><th> + {{l10n "Source string"}} + </th><th> + {{localeName}} + </th></tr> + </thead> + <tbody> + + {{#each [pagination.items]}} + <tr> + <td> + {{{source}}} + </td> + <td> + <a href="{{route "translation_edit" string_id=id}}" target="_blank" onclick="this.newWindow = window.open('{{route "translation_edit" string_id=id}}', '', 'toolbar=0,scrollbars=1,location=0,status=1,menubar=0,width=640,height=480,resizable=1');this.newWindow.focus();this.newWindow.opener=window;return false;">{{{translation}}}</a> + </td> + </tr> + {{else}} + <tr> + <td colspan="2">{{l10n "Found 0 elements"}}</td> + </tr> + {{/each}} + + </tbody> + </table> + + {{#if pagination}} + <br /> + {{generatePagination pagination}} + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/update_intro.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/update_intro.handlebars new file mode 100644 index 00000000..62b3d3ea --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/update_intro.handlebars @@ -0,0 +1,29 @@ +{{#extends "_layout"}} + {{#override "content"}} + {{l10n "Follow the wizard to update your database."}} + + <br/> + <br/> + <div id="install"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + <ol> + <li>{{l10n "Backup the database"}}</li> + <li>{{l10n "Backup the code"}}</li> + <li>{{l10n "Replace all files with ones from the new version"}}</li> + <li>{{l10n "Update configs file if needed"}}</li> + <li>{{l10n "Run the <a href=\"{0}\">update wizard</a>" (route "update_run")}}</li> + </ol> + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/update_progress.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/update_progress.handlebars new file mode 100644 index 00000000..12eea514 --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/update_progress.handlebars @@ -0,0 +1,50 @@ +{{#extends "_layout"}} + {{#if localeLinks}} + {{#override "menu"}}{{> _locales}}{{/override}} + {{/if}} + + {{#override "content"}} + {{l10n "Follow the wizard to update your database."}} + + <br/> + <br/> + + <div id="install"> + <div class="form-wrapper"> + <div class="form-header"> + <div class="form-header-inwards"></div> + </div> + + <div class="form-inwards"> + {{#ifAny done errors}} + {{l10n "Progress:"}} + <ul> + {{#each done}} + <li>{{{this}}}</li> + {{/each}} + {{#each errors}} + <li class="error">{{{this}}}</li> + {{/each}} + </ul> + <br /> + {{/ifAny}} + + {{#if errors}} + <b>{{l10n "Update failed."}}</b><br /> + {{l10n "You can try to restore database from the backup and run the update wizard again."}} + {{else}} + <b>{{l10n "Application successfully updated."}}</b> {{l10n "Go to <a href=\"{0}\">home page</a>" (route "home")}} + {{/if}} + </div> + + <div class="form-footer"> + <div class="form-footer-inwards"></div> + </div> + </div> + </div> + + {{#if errors}} + + {{/if}} + {{/override}} +{{/extends}} \ No newline at end of file diff --git a/src/mibew/styles/pages/dark/templates_src/server_side/users.handlebars b/src/mibew/styles/pages/dark/templates_src/server_side/users.handlebars new file mode 100644 index 00000000..66cfb95e --- /dev/null +++ b/src/mibew/styles/pages/dark/templates_src/server_side/users.handlebars @@ -0,0 +1,37 @@ +{{#extends "_layout"}} + {{#override "menu"}}{{> _menu}}{{/override}} + + {{#override "head"}} + <script type="text/javascript" src="{{asset "@CurrentStyle/js/toggle_menu.js"}}"></script> + {{/override}} + + {{#override "content"}} + <div> + <div id="toggle-menu"> + <a href="#">{{#if hideMenu}}{{l10n "Show menu"}}{{else}}{{l10n "Hide menu"}}{{/if}}</a> + </div> + <div> + {{l10n "This page displays a list of visitors who are waiting."}} + <br/> + {{l10n "To answer the visitor click their name in the list."}} + </div> + <div style="clear: both;"></div> + </div> + + <br/> + + <div id="threads-region"></div> + + {{#if showvisitors}} + <div class="table-title">{{l10n "Visitors on site"}}</div> + {{l10n "The table below represents a list of visitors ready to chat on your site."}} + <br/> + {{l10n "To invite the visitor to chat click on his/her name in the list."}} + <div id="visitors-region"></div> + <hr/> + {{/if}} + + <div id="status-panel-region"></div> + <div id="agents-region"></div> + {{/override}} +{{/extends}} \ No newline at end of file