{{ 'Enter your text by overriding the %s% template file.'|trans({ '%s%': 'system/LegalBundle/Resources/views/en/cancellationRightPolicy.html.twig' })|raw }}
7 | {% trans %}In order to log in you must accept this site's policies. If you have accepted the site's policies in the past, then they have been updated and we ask that you review the changes.{% endtrans %}
8 |
9 | {% trans %}If you leave this page without successfully accepting the policies, then you will not be logged in.{% endtrans %}
10 |
11 | {% endif %}
12 |
13 |
30 | {% endblock %}
31 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/.gitattributes:
--------------------------------------------------------------------------------
1 | /Tests export-ignore
2 | /phpunit.xml.dist export-ignore
3 | /.gitignore export-ignore
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/README.md:
--------------------------------------------------------------------------------
1 | # ThemeBundle
2 |
3 | This is a read-only repository.
4 |
5 | ## Resources
6 |
7 | * [Report issues](https://github.com/zikula/core/issues) and
8 | [send Pull Requests](https://github.com/zikula/core/pulls)
9 | in the [main Zikula repository](https://github.com/zikula/core)
10 | * For more information visit [ziku.la](https://ziku.la/).
11 | * Please see our [documentation](https://docs.ziku.la).
12 |
13 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "zikula/theme-bundle",
3 | "version": "dev-4.0",
4 | "description": "Theme system and admin extensions",
5 | "type": "symfony-bundle",
6 | "license": "LGPL-3.0-or-later",
7 | "authors": [
8 | {
9 | "name": "Zikula",
10 | "homepage": "https://ziku.la/"
11 | }
12 | ],
13 | "require": {
14 | "php": ">=8.2",
15 | "easycorp/easyadmin-bundle": "^4.12",
16 | "symfony/config": "^7.2",
17 | "symfony/dependency-injection": "^7.2",
18 | "symfony/event-dispatcher": "^7.2",
19 | "symfony/filesystem": "^7.2",
20 | "symfony/form": "^7.2",
21 | "symfony/http-foundation": "^7.2",
22 | "symfony/http-kernel": "^7.2",
23 | "symfony/routing": "^7.2",
24 | "symfony/string": "^7.2",
25 | "symfony/twig-bundle": "^7.2",
26 | "symfony/validator": "^7.2",
27 | "symfony/webpack-encore-bundle": "^2",
28 | "symfony/yaml": "^7.2",
29 | "twig/intl-extra": "^3",
30 | "twig/string-extra": "^3",
31 | "twig/extra-bundle": "^3",
32 |
33 | "zikula/core-bundle": "dev-4.0",
34 |
35 | "components/jquery": "^3",
36 | "vakata/jstree": "^3"
37 | },
38 | "autoload": {
39 | "psr-4": { "Zikula\\ThemeBundle\\": "src" }
40 | },
41 | "autoload-dev": {
42 | "psr-4": { "Zikula\\ThemeBundle\\Tests\\": "tests" }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/config/routing.yaml:
--------------------------------------------------------------------------------
1 | zikulathemebundle:
2 | resource: '@ZikulaThemeBundle/src/Controller' # TODO src is a workaround for https://github.com/symfony/symfony/issues/46482
3 | type: attribute
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/config/services.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | _defaults:
3 | autowire: true
4 | autoconfigure: true
5 | public: false
6 |
7 | Zikula\ThemeBundle\:
8 | resource: '../src/*'
9 |
10 | Zikula\ThemeBundle\Bundle\MetaData\ThemeBundleMetaData:
11 | public: true
12 |
13 | Zikula\ThemeBundle\Helper\:
14 | resource: '../src/Helper/*'
15 | lazy: true
16 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/phpunit.dist.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 | ./Tests/
27 |
28 |
29 |
30 |
31 |
32 | .
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/css/ZikulaThemeBundle.IconPicker.css:
--------------------------------------------------------------------------------
1 | /* temporary fix for making BS3 component work with BS4 - see https://github.com/itsjavi/fontawesome-iconpicker/issues/65 */
2 | .fade.in {
3 | opacity: 1;
4 | }
5 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/css/jstree.Common.css:
--------------------------------------------------------------------------------
1 | .jstree-contextmenu {
2 | z-index: 100;
3 | }
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/css/phpinfo.css:
--------------------------------------------------------------------------------
1 |
2 | #phpinfo table {
3 | table-layout: fixed;
4 | }
5 | #phpinfo table td {
6 | word-wrap: break-word;
7 | }
8 | #phpinfo td.e {
9 | font-weight: 700;
10 | }
11 | #phpinfo a > img {
12 | float: left;
13 | margin-right: 20px;
14 | }
15 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/dashboard/admin.css:
--------------------------------------------------------------------------------
1 | aside.sidebar > p:first-child {
2 | color: green;
3 | }
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/dashboard/admin.js:
--------------------------------------------------------------------------------
1 | // to be used for overrides
2 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/dashboard/user.css:
--------------------------------------------------------------------------------
1 | aside.sidebar > p:first-child {
2 | color: blue;
3 | }
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/dashboard/user.js:
--------------------------------------------------------------------------------
1 | // to be used for overrides
2 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/images/preview_large.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zikula/core/9100e04b4539c47695ec58544a99858f5c2362a8/src/system/ThemeBundle/public/images/preview_large.png
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/images/preview_medium.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zikula/core/9100e04b4539c47695ec58544a99858f5c2362a8/src/system/ThemeBundle/public/images/preview_medium.png
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/images/preview_small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zikula/core/9100e04b4539c47695ec58544a99858f5c2362a8/src/system/ThemeBundle/public/images/preview_small.png
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/ZikulaThemeBundle.FilePicker.js:
--------------------------------------------------------------------------------
1 | jQuery(document).ready(function () {
2 | bsCustomFileInput.init();
3 | });
4 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/ZikulaThemeBundle.IconPicker.js:
--------------------------------------------------------------------------------
1 | function initFontAwesomeIconPicker() {
2 | jQuery('.zikula-icon-picker').iconpicker({
3 | hideOnSelect: true,
4 | inputSearch: true,
5 | component: '.input-group-append .input-group-text,.iconpicker-component'
6 | });
7 | }
8 |
9 | jQuery(document).ready(initFontAwesomeIconPicker);
10 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/ZikulaThemeBundle.Phpinfo.js:
--------------------------------------------------------------------------------
1 | // Copyright Zikula, licensed MIT.
2 |
3 | window.addEventListener('load', function () {
4 | document.querySelectorAll('#phpinfo table').forEach(el => el.classList.add('table', 'table-striped', 'table-bordered'));
5 | }, false);
6 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/ZikulaThemeBundle.TestMail.js:
--------------------------------------------------------------------------------
1 | // Copyright Zikula, licensed MIT.
2 |
3 | document.addEventListener('DOMContentLoaded', function() {
4 | function toggleBodyFields() {
5 | var messageType = document.getElementById('zikulathemebundle_mailtest_messageType').value;
6 | var bodyHtmlRow = document.getElementById('zikulathemebundle_mailtest_bodyHtml_row');
7 | var bodyTextRow = document.getElementById('zikulathemebundle_mailtest_bodyText_row');
8 |
9 | var messageTypes = ['html', 'multipart'];
10 | if (-1 !== messageTypes.indexOf(messageType)) {
11 | bodyHtmlRow.classList.remove('d-none');
12 | } else {
13 | bodyHtmlRow.classList.add('d-none');
14 | }
15 |
16 | messageTypes = ['text', 'multipart'];
17 | if (-1 !== messageTypes.indexOf(messageType)) {
18 | bodyTextRow.classList.remove('d-none');
19 | } else {
20 | bodyTextRow.classList.add('d-none');
21 | }
22 | }
23 |
24 | var messageTypeInput = document.getElementById('zikulathemebundle_mailtest_messageType');
25 | messageTypeInput.addEventListener('change', toggleBodyFields);
26 | toggleBodyFields();
27 | });
28 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/bs-custom-file-input/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Johann-S
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/fontawesome-iconpicker/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2016 Javi Aguilar
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/fontawesome-iconpicker/version.txt:
--------------------------------------------------------------------------------
1 | 3.2.1
2 | from https://github.com/Sentence/fontawesome-iconpicker
3 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/public/js/jquery/version.txt:
--------------------------------------------------------------------------------
1 | jQuery 3.7.1
2 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Bundle/MetaData/ThemeBundleMetaData.php:
--------------------------------------------------------------------------------
1 | render('@ZikulaTheme/Branding/overview.html.twig', []);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Controller/TestController.php:
--------------------------------------------------------------------------------
1 | render('@ZikulaTheme/Test/page.html.twig',
28 | [
29 | 'isAdminArea' => $request->attributes->get('isAdminArea', false),
30 | ]
31 | );
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/EventSubscriber/OutputCompressionSubscriber.php:
--------------------------------------------------------------------------------
1 | ['onKernelRequest', 1023],
30 | ];
31 | }
32 |
33 | public function onKernelRequest(RequestEvent $event): void
34 | {
35 | // check if compression is desired
36 | if (!$this->useCompression) {
37 | return;
38 | }
39 |
40 | if (!$event->isMainRequest()) {
41 | return;
42 | }
43 |
44 | // check if Zlib extension is available
45 | if (!extension_loaded('zlib')) {
46 | return;
47 | }
48 |
49 | // set compression on
50 | ini_set('zlib.output_handler', '');
51 | ini_set('zlib.output_compression', 'On');
52 | ini_set('zlib.output_compression_level', 6);
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/ExtensionMenu/AbstractExtensionMenu.php:
--------------------------------------------------------------------------------
1 | getAdmin();
22 | }
23 | if (ExtensionMenuInterface::CONTEXT_USER === $context) {
24 | return $this->getUser();
25 | }
26 | if (ExtensionMenuInterface::CONTEXT_ACCOUNT === $context) {
27 | return $this->getAccount();
28 | }
29 |
30 | return [];
31 | }
32 |
33 | protected function getAdmin(): iterable
34 | {
35 | return [];
36 | }
37 |
38 | protected function getUser(): iterable
39 | {
40 | return [];
41 | }
42 |
43 | protected function getAccount(): iterable
44 | {
45 | return [];
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/ExtensionMenu/ExtensionMenuEvent.php:
--------------------------------------------------------------------------------
1 | bundleName;
30 | }
31 |
32 | public function getMenuContext(): string
33 | {
34 | return $this->context;
35 | }
36 |
37 | /**
38 | * @return MenuItemInterface[]
39 | */
40 | public function getMenu(): iterable
41 | {
42 | return $this->menu;
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/ExtensionMenu/ExtensionMenuInterface.php:
--------------------------------------------------------------------------------
1 | setAttribute('icon', $options['icon']);
32 | }
33 |
34 | public function buildView(FormView $view, FormInterface $form, array $options): void
35 | {
36 | $view->vars['icon'] = $options['icon'];
37 | }
38 |
39 | public function configureOptions(OptionsResolver $resolver): void
40 | {
41 | $resolver->setDefaults([
42 | 'icon' => null,
43 | ]);
44 | }
45 |
46 | public static function getExtendedTypes(): iterable
47 | {
48 | return [ButtonType::class]; // Extend the button field type
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Form/Extension/FormTypeHelpExtension.php:
--------------------------------------------------------------------------------
1 | setAttribute('help', $options['help'])
30 | ->setAttribute('input_group', $options['input_group'])
31 | ->setAttribute('alert', $options['alert'])
32 | ;
33 | }
34 |
35 | public function buildView(FormView $view, FormInterface $form, array $options): void
36 | {
37 | $view->vars['help'] = $options['help'];
38 | $view->vars['input_group'] = $options['input_group'];
39 | $view->vars['alert'] = $options['alert'];
40 | }
41 |
42 | public function configureOptions(OptionsResolver $resolver): void
43 | {
44 | $resolver->setDefaults([
45 | 'input_group' => null,
46 | 'alert' => null,
47 | ]);
48 |
49 | $resolver->setAllowedTypes('help', ['string', 'null', 'array', TranslatableMessage::class]);
50 | }
51 |
52 | public static function getExtendedTypes(): iterable
53 | {
54 | return [FormType::class]; // Extend all field types
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Form/Type/DeletionType.php:
--------------------------------------------------------------------------------
1 | add('delete', SubmitType::class, [
29 | 'label' => 'Delete',
30 | 'icon' => 'fa-trash-alt',
31 | 'attr' => [
32 | 'class' => 'btn-danger',
33 | ],
34 | ])
35 | ->add('cancel', SubmitType::class, [
36 | 'label' => 'Cancel',
37 | 'validate' => false,
38 | 'icon' => 'fa-times',
39 | 'attr' => [
40 | 'class' => 'btn-secondary',
41 | ],
42 | ])
43 | ;
44 | }
45 |
46 | public function getBlockPrefix(): string
47 | {
48 | return 'zikulathemebundle_deletion';
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Form/Type/IconType.php:
--------------------------------------------------------------------------------
1 | getRoute($request);
30 |
31 | return str_contains($route, self::ROUTE_PART_ADMIN);
32 | }
33 |
34 | public function getDashboardControllerFqcn(Request $request): string
35 | {
36 | $isAdminArea = $this->isAdminArea($request);
37 | $request->attributes->set('isAdminArea', $isAdminArea);
38 |
39 | return $isAdminArea ? AdminDashboardController::class : UserDashboardController::class;
40 | }
41 |
42 | private function getRoute(Request $request): string
43 | {
44 | return $request->attributes->get('_route') ?? '';
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Helper/ResourceMenuProvider.php:
--------------------------------------------------------------------------------
1 | setLinkTarget('_blank');
25 | yield MenuItem::linkToUrl(t('ModuleStudio'), 'fas fa-wand-sparkles', 'https://modulestudio.de/en/documentation/')->setLinkTarget('_blank');
26 | yield MenuItem::subMenu(t('Foundation'), 'fas fa-cubes-stacked')->setSubItems([
27 | MenuItem::linkToUrl(t('Symfony'), 'fab fa-symfony', 'https://symfony.com/')->setLinkTarget('_blank'),
28 | MenuItem::linkToUrl(t('Twig'), 'fas fa-file-lines', 'https://twig.symfony.com/')->setLinkTarget('_blank'),
29 | MenuItem::linkToUrl(t('Doctrine'), 'fas fa-database', 'https://www.doctrine-project.org/')->setLinkTarget('_blank'),
30 | MenuItem::linkToUrl(t('EasyAdmin'), 'fas fa-screwdriver-wrench', 'https://symfony.com/bundles/EasyAdminBundle/current/index.html')->setLinkTarget('_blank'),
31 | MenuItem::linkToUrl(t('Bootstrap'), 'fab fa-bootstrap', 'https://getbootstrap.com/')->setLinkTarget('_blank'),
32 | ]);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Menu/ExtensionMenu.php:
--------------------------------------------------------------------------------
1 | setPermission('ROLE_ADMIN');
26 | yield MenuItem::linktoRoute(t('Test mail settings'), 'fas fa-envelope', 'zikula_theme_tool_testmail')
27 | ->setPermission('ROLE_ADMIN');
28 | yield MenuItem::linktoRoute(t('PHP configuration'), 'fab fa-php', 'zikula_theme_tool_phpinfo')
29 | ->setPermission('ROLE_ADMIN');
30 | }
31 |
32 | public function getBundleName(): string
33 | {
34 | return 'ZikulaThemeBundle';
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Twig/Extension/BrandingExtension.php:
--------------------------------------------------------------------------------
1 | ['html']]),
29 | new TwigFunction('siteImagePath', [BrandingRuntime::class, 'getSiteImagePath'])
30 | ];
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/src/Twig/Runtime/BrandingRuntime.php:
--------------------------------------------------------------------------------
1 | site;
34 | }
35 |
36 | /**
37 | * Returns site name.
38 | */
39 | public function getSiteName(): string
40 | {
41 | return $this->site->getName();
42 | }
43 |
44 | /**
45 | * Returns site slogan.
46 | */
47 | public function getSiteSlogan(): string
48 | {
49 | return $this->site->getSlogan();
50 | }
51 |
52 | /**
53 | * Returns site branding markup.
54 | */
55 | public function getSiteBrandingMarkup(): string
56 | {
57 | return $this->twig->render('@ZikulaTheme/Branding/manifest.html.twig');
58 | }
59 |
60 | /**
61 | * Returns site image path.
62 | */
63 | public function getSiteImagePath(string $imageType = ''): string
64 | {
65 | if (!in_array($imageType, ['logo', 'mobileLogo', 'icon'], true)) {
66 | $imageType = 'logo';
67 | }
68 |
69 | $accessor = 'get' . ucfirst($imageType) . 'Path';
70 |
71 | return $this->site->{$accessor}();
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/templates/Branding/manifest.html.twig:
--------------------------------------------------------------------------------
1 | {# force fullscreen mode to look like an app #}
2 |
3 | {# adapt status line: default, black or black-translucent #}
4 |
5 | {# viewport initialisation #}
6 |
7 | {# reference icons and manifest #}
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/system/ThemeBundle/templates/Dashboard/layout_admin.html.twig:
--------------------------------------------------------------------------------
1 | {% extends '@!EasyAdmin/layout.html.twig' %}
2 |
3 | {% block head_metas %}
4 | {{ parent() }}
5 | {{ include('@ZikulaTheme/Dashboard/manifest.html.twig') }}
6 | {% endblock %}
7 |
8 | {% block page_title %}{{ siteName()|replace({'#pagetitle#': parent()}) }}{% endblock %}
9 | {% block sidebar %}
10 |
13 | {% set siteLink = '%2$s'|replace({'%1$s': url('user_home'), '%2$s': siteName()}) %}
14 | {% if not user.isApproved %}
15 | {% trans with {'%sub%': siteLink} %}A new user account has been created but not yet activated on %sub%.{% endtrans %}
16 | {% else %}
17 | {% trans with {'%sub%': siteLink} %}A new user account has been activated on %sub%.{% endtrans %}
18 | {% endif %}
19 | {% if createdByAdmin %}{% trans %}It was created by an administrator or sub-administrator.{% endtrans %}{% endif %}
20 | {% trans %}The account details are as follows:{% endtrans %}
21 |
22 |
23 |
{% trans %}User name{% endtrans %}: '{{ user.uname }}'
24 | {{ include('@ZikulaUsers/Email/footer.txt.twig')|nl2br }}
25 |
--------------------------------------------------------------------------------
/src/system/UsersBundle/templates/Email/regadminnotify.txt.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'mail' %}
2 | {{ include('@ZikulaUsers/Email/header.txt.twig') }}
3 | {% if not user.isApproved %}
4 | {% set heading = 'New registration pending approval'|trans %}
5 | {% elseif not isVerified %}
6 | {% set heading = 'New registration pending e-mail verification'|trans %}
7 | {% else %}
8 | {% set heading = 'New user activated'|trans %}
9 | {% endif %}
10 | {{ heading }}
11 |
12 | {% if not user.isApproved %}
13 | {% trans with {'%sub%': siteName()} %}A new user account has been created but not yet activated on %sub%.{% endtrans %}
14 | {% else %}
15 | {% trans with {'%sub%': siteName()} %}A new user account has been activated on %sub%.{% endtrans %}
16 | {% endif %}
17 | {% if createdByAdmin %}{% trans %}It was created by an administrator or sub-administrator.{% endtrans %}{% endif %}
18 | {% trans %}The account details are as follows:{% endtrans %}
19 |
20 | {% trans %}User name{% endtrans %}: '{{ user.uname }}'
21 | {{ include('@ZikulaUsers/Email/footer.txt.twig') }}
22 |
--------------------------------------------------------------------------------
/src/system/UsersBundle/templates/Email/regdeny.html.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'mail' %}
2 | {{ include('@ZikulaUsers/Email/header.txt.twig')|nl2br }}
3 |
{% trans with {'%sub%': siteName()} %}A message from %sub%...{% endtrans %}
4 |
5 |
{% trans with {'%email%': user.email, '%site%': siteName(), '%url%': url('user_home')} %}Recently, this e-mail address ("%email") was used to request an account on "%site%" (%url%).{% endtrans %}
6 | {% trans %}The information that was registered is as follows:{% endtrans %}
7 |
8 |
{% trans %}User name{% endtrans %}: {{ user.uname }}
9 |
10 |
{% trans %}Thank you for your application for a new account. At this time we are unable to approve your application.{% endtrans %}
11 |
12 | {% if reason is not empty %}
13 |
{{ reason }}
14 | {% endif %}
15 | {{ include('@ZikulaUsers/Email/footer.txt.twig')|nl2br }}
16 |
--------------------------------------------------------------------------------
/src/system/UsersBundle/templates/Email/regdeny.txt.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'mail' %}
2 | {{ include('@ZikulaUsers/Email/header.txt.twig') }}
3 | {% trans with {'%sub%': siteName()} %}A message from %sub%...{% endtrans %}
4 |
5 | {% trans with {'%email%': user.email, '%site%': siteName(), '%url%': url('user_home')} %}Recently, this e-mail address ("%email") was used to request an account on "%site%" (%url%).{% endtrans %}
6 | {% trans %}The information that was registered is as follows:{% endtrans %}
7 |
8 | {% trans %}User name{% endtrans %}: {{ user.uname }}
9 |
10 | {% trans %}Thank you for your application for a new account. At this time we are unable to approve your application.{% endtrans %}
11 |
12 | {% if reason is not empty %}
13 | {{ reason }}
14 | {% endif %}
15 | {{ include('@ZikulaUsers/Email/footer.txt.twig') }}
16 |
--------------------------------------------------------------------------------
/src/system/UsersBundle/templates/Email/welcome.html.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'mail' %}
2 | {{ include('@ZikulaUsers/Email/header.txt.twig')|nl2br }}
3 |
{% trans with {'%sub%': siteName()} %}Welcome to %sub%!{% endtrans %}
4 |
5 |
6 | {% trans %}Hello!{% endtrans %}
7 | {% trans with {'%email%': user.email, '%site%': siteName(), '%url%': url('user_home')} %}This e-mail address ('%email%') has been used to register an account on '%site%' (%url%).{% endtrans %}
8 | {% trans %}The information that was registered is as follows:{% endtrans %}
9 |
10 |
11 |
{% trans %}User name{% endtrans %}: {{ user.uname }}
12 | {% if createdpassword is not empty %}
13 | {% trans %}Password{% endtrans %}: {{ createdpassword }}
14 | {% endif %}
15 |
16 |
17 | {% if createdpassword is not empty %}
{% trans %}(This is the only time you will receive your password. Please keep it in a safe place.){% endtrans %}
{% endif %}
18 |
19 | {% if not user.approved %}
20 |
{% trans %}Thank you for your application for a new account. Your application has been forwarded to the site administrator for review. Please expect a message once the review process is complete.{% endtrans %}
21 | {% elseif not createdByAdmin and user.activated <= 0 %}
22 |
{% trans %}Your account application is pending for some reason. Expect additional email(s) with information on finalizing your registration.{% endtrans %}
23 | {% elseif not createdByAdmin and user.activated > 0 %}
24 |
{% trans %}Your account application has been approved by the site administrator. Thank you for your patience during the new account application review process.{% endtrans %}
25 | {% elseif createdByAdmin %}
26 |
{% trans %}The web site administrator has created this new account for you.{% endtrans %}
27 | {% endif %}
28 |
29 | {% if user.approved and user.activated > 0 %}
30 |
{% trans %}You may now log into the web site.{% endtrans %}
31 | {% endif %}
32 | {{ include('@ZikulaUsers/Email/footer.txt.twig')|nl2br }}
33 |
--------------------------------------------------------------------------------
/src/system/UsersBundle/templates/Email/welcome.txt.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'mail' %}
2 | {{ include('@ZikulaUsers/Email/header.txt.twig') }}
3 | {% trans with {'%sub%': siteName()} %}Welcome to %sub%!{% endtrans %}
4 |
5 | {% trans %}Hello!{% endtrans %}
6 |
7 | {% trans with {'%email%': user.email, '%site%': siteName(), '%url%': url('user_home')} %}This e-mail address ('%email%') has been used to register an account on '%site%' (%url%).{% endtrans %}
8 | {% trans %}The information that was registered is as follows:{% endtrans %}
9 |
10 | {% trans %}User name{% endtrans %}: {{ user.uname }}
11 | {% if createdpassword is not empty %}
12 | {% trans %}Password{% endtrans %}: {{ createdpassword }}
13 | {% endif %}
14 |
15 | {% if createdpassword is not empty %}{% trans %}(This is the only time you will receive your password. Please keep it in a safe place.){% endtrans %}{% endif %}
16 |
17 | {% if not user.approved %}
18 | {% trans %}Thank you for your application for a new account. Your application has been forwarded to the site administrator for review. Please expect a message once the review process is complete.{% endtrans %}
19 | {% elseif not createdByAdmin %}
20 | {% trans %}Your account application has been approved. Thank you for your patience during the new account application review process.{% endtrans %}
21 | {% elseif createdByAdmin %}
22 | {% trans %}The web site administrator has created this new account for you.{% endtrans %}
23 | {% endif %}
24 |
25 | {% if user.approved %}
26 | {% trans %}You may now log into the web site.{% endtrans %}
27 | {% endif %}
28 | {{ include('@ZikulaUsers/Email/footer.txt.twig') }}
29 |
--------------------------------------------------------------------------------
/templates/bundles/NucleosProfileBundle/Profile/edit_content.html.twig:
--------------------------------------------------------------------------------
1 | {% trans_default_domain 'NucleosProfileBundle' %}
2 |
3 |