/** * Return the number of days it should take to solve a question. * * @param ElggEntity $container if a group is provided, first the setting of the group is checked, then the default setting of the site * * @return int */ function questions_get_solution_time(ElggEntity $container) { static $plugin_setting; if (!isset($plugin_setting)) { $plugin_setting = (int) elgg_get_plugin_setting('site_solution_time', 'questions'); } // get site setting $result = $plugin_setting; // check is group if ($container instanceof ElggGroup && questions_can_groups_set_solution_time()) { // get group setting $group_setting = $container->getPrivateSetting('questions_solution_time'); if ($group_setting !== false && $group_setting !== null) { // we have a valid group setting $result = (int) $group_setting; } } return $result; }
<?php $group = elgg_extract('entity', $vars); if (!$group instanceof ElggGroup) { return; } if (!$group->canEdit()) { return; } if ($group->questions_enable !== 'yes') { return; } // default solution time if (questions_can_groups_set_solution_time()) { $solution_time = questions_get_solution_time($group); $solution = []; $solution[] = elgg_echo('questions:settings:general:solution_time'); $solution[] = elgg_view('input/select', ['name' => 'solution_time', 'value' => $solution_time, 'options' => range(0, 30), 'class' => 'mls']); $solution[] = elgg_format_element('div', ['class' => 'elgg-subtext'], elgg_echo('questions:group_settings:solution_time:description')); $content .= elgg_format_element('div', [], implode('', $solution)); } if (questions_experts_enabled()) { $expert_options = ['members' => elgg_echo('questions:group_settings:who_can_ask:members'), 'experts' => elgg_echo('questions:group_settings:who_can_ask:experts')]; $noyes_options = ['no' => elgg_echo('option:no'), 'yes' => elgg_echo('option:yes')]; // who can ask? $who_can_ask = []; $who_can_ask[] = elgg_echo('questions:group_settings:who_can_ask'); $who_can_ask[] = elgg_view('input/select', ['name' => 'who_can_ask', 'value' => $group->getPrivateSetting('questions_who_can_ask'), 'options_values' => $expert_options, 'class' => 'mls']); $content .= elgg_format_element('div', [], implode('', $who_can_ask)); $who_can_answer = []; if (!questions_experts_only_answer()) {