Browse Source

Update Admin\Config page for polls

Visman 4 years ago
parent
commit
0aea6cee01
3 changed files with 134 additions and 5 deletions
  1. 62 5
      app/Models/Pages/Admin/Options.php
  2. 36 0
      app/lang/en/admin_options.po
  3. 36 0
      app/lang/ru/admin_options.po

+ 62 - 5
app/Models/Pages/Admin/Options.php

@@ -69,7 +69,7 @@ class Options extends Admin
                     'i_email_max_recipients'  => 'required|integer|min:1|max:99999',
                     'i_email_max_recipients'  => 'required|integer|min:1|max:99999',
                     'o_smtp_host'             => 'string:trim|max:255',
                     'o_smtp_host'             => 'string:trim|max:255',
                     'o_smtp_user'             => 'string:trim|max:255',
                     'o_smtp_user'             => 'string:trim|max:255',
-                    'o_smtp_pass'             => 'string:trim|max:255', //??????
+                    'o_smtp_pass'             => 'string:trim|max:255',
                     'changeSmtpPassword'      => 'checkbox',
                     'changeSmtpPassword'      => 'checkbox',
                     'o_smtp_ssl'              => 'required|integer|in:0,1',
                     'o_smtp_ssl'              => 'required|integer|in:0,1',
                     'o_regs_allow'            => 'required|integer|in:0,1',
                     'o_regs_allow'            => 'required|integer|in:0,1',
@@ -80,10 +80,16 @@ class Options extends Admin
                     'i_default_email_setting' => 'required|integer|in:0,1,2',
                     'i_default_email_setting' => 'required|integer|in:0,1,2',
                     'o_announcement'          => 'required|integer|in:0,1|check_empty:o_announcement_message',
                     'o_announcement'          => 'required|integer|in:0,1|check_empty:o_announcement_message',
                     'o_announcement_message'  => 'string:trim|max:65000 bytes',
                     'o_announcement_message'  => 'string:trim|max:65000 bytes',
-                    'p_message_all_caps'  => 'required|integer|in:0,1',
-                    'p_subject_all_caps'  => 'required|integer|in:0,1',
-                    'p_force_guest_email' => 'required|integer|in:0,1',
-                    'p_sig_all_caps'      => 'required|integer|in:0,1',
+                    'p_message_all_caps'      => 'required|integer|in:0,1',
+                    'p_subject_all_caps'      => 'required|integer|in:0,1',
+                    'p_force_guest_email'     => 'required|integer|in:0,1',
+                    'p_sig_all_caps'          => 'required|integer|in:0,1',
+                    'b_poll_enabled'          => 'required|integer|in:0,1',
+                    'i_poll_max_questions'    => 'required|integer|min:1|max:99',
+                    'i_poll_max_fields'       => 'required|integer|min:2|max:99',
+                    'i_poll_time'             => 'required|integer|min:0|max:999999',
+                    'i_poll_term'             => 'required|integer|min:0|max:99',
+                    'b_poll_guest'            => 'required|integer|in:0,1',
                 ])->addAliases([
                 ])->addAliases([
                 ])->addArguments([
                 ])->addArguments([
                 ])->addMessages([
                 ])->addMessages([
@@ -691,6 +697,57 @@ class Options extends Admin
             ],
             ],
         ];
         ];
 
 
+        $form['sets']['polls'] = [
+            'legend' => __('Polls subhead'),
+            'fields' => [
+                'b_poll_enabled' => [
+                    'type'    => 'radio',
+                    'value'   => $config->b_poll_enabled,
+                    'values'  => $yn,
+                    'caption' => __('Allow polls label'),
+                ],
+                'i_poll_max_questions' => [
+                    'type'    => 'number',
+                    'min'     => '1',
+                    'max'     => '99',
+                    'value'   => $config->i_poll_max_questions,
+                    'caption' => __('Max questions label'),
+                    'info'    => __('Max questions help'),
+                ],
+                'i_poll_max_fields' => [
+                    'type'    => 'number',
+                    'min'     => '2',
+                    'max'     => '99',
+                    'value'   => $config->i_poll_max_fields,
+                    'caption' => __('Max options label'),
+                    'info'    => __('Max options help'),
+                ],
+                'i_poll_time' => [
+                    'type'    => 'number',
+                    'min'     => '0',
+                    'max'     => '999999',
+                    'value'   => $config->i_poll_time,
+                    'caption' => __('Poll edit time label'),
+                    'info'    => __('Poll edit time help'),
+                ],
+                'i_poll_term' => [
+                    'type'    => 'number',
+                    'min'     => '0',
+                    'max'     => '99',
+                    'value'   => $config->i_poll_term,
+                    'caption' => __('Hidden voices label'),
+                    'info'    => __('Hidden voices help'),
+                ],
+                'b_poll_guest' => [
+                    'type'    => 'radio',
+                    'value'   => $config->b_poll_guest,
+                    'values'  => $yn,
+                    'caption' => __('Result for guest label'),
+                    'info'    => __('Result for guest help'),
+                ],
+            ],
+        ];
+
         return $form;
         return $form;
     }
     }
 }
 }

+ 36 - 0
app/lang/en/admin_options.po

@@ -410,3 +410,39 @@ msgstr "All caps signature"
 
 
 msgid "All caps sigs help"
 msgid "All caps sigs help"
 msgstr "Allow a signature to contain only capital letters."
 msgstr "Allow a signature to contain only capital letters."
+
+msgid "Polls subhead"
+msgstr "Polls"
+
+msgid "Allow polls label"
+msgstr "Allow polls"
+
+msgid "Max questions label"
+msgstr "Max. questions"
+
+msgid "Max questions help"
+msgstr "The maximum number of questions in one poll. <b>It is recommended to set it once and do not change it again!</b>"
+
+msgid "Max options label"
+msgstr "Max. options"
+
+msgid "Max options help"
+msgstr "The maximum number of possible answers to a question. <b>It is recommended to set it once and do not change it again!</b>"
+
+msgid "Poll edit time label"
+msgstr "Edit time"
+
+msgid "Poll edit time help"
+msgstr "Poll editing time (in minutes). <b>0 removes restrictions.</b>"
+
+msgid "Hidden voices label"
+msgstr "Hidden voices"
+
+msgid "Hidden voices help"
+msgstr "The number of votes before which you can hide the poll results. <b>Set in the poll.</b>"
+
+msgid "Result for guest label"
+msgstr "Result for guest"
+
+msgid "Result for guest help"
+msgstr "The guests see the voting results."

+ 36 - 0
app/lang/ru/admin_options.po

@@ -410,3 +410,39 @@ msgstr "Подпись заглавными"
 
 
 msgid "All caps sigs help"
 msgid "All caps sigs help"
 msgstr "Разрешить подписи, состоящие из одних заглавных букв."
 msgstr "Разрешить подписи, состоящие из одних заглавных букв."
+
+msgid "Polls subhead"
+msgstr "Опросы"
+
+msgid "Allow polls label"
+msgstr "Разрешить опросы"
+
+msgid "Max questions label"
+msgstr "Макс. вопросов"
+
+msgid "Max questions help"
+msgstr "Максимальное количество вопросов в одном опросе. <b>Рекомендуется задать один раз и больше не изменять!</b>"
+
+msgid "Max options label"
+msgstr "Макс. вариантов"
+
+msgid "Max options help"
+msgstr "Максимальное количество вариантов ответа на вопрос. <b>Рекомендуется задать один раз и больше не изменять!</b>"
+
+msgid "Poll edit time label"
+msgstr "Время редактирования"
+
+msgid "Poll edit time help"
+msgstr "Время редактирования опроса (в минутах). <b>0 снимает ограничения.</b>"
+
+msgid "Hidden voices label"
+msgstr "Скрытые голоса"
+
+msgid "Hidden voices help"
+msgstr "Число голосов, до набора которых можно скрыть результаты опроса. <b>Включается в опросе.</b>"
+
+msgid "Result for guest label"
+msgstr "Результат для гостя"
+
+msgid "Result for guest help"
+msgstr "Гости видят результаты голосования."