Exemplo n.º 1
0
/**
 * 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;
}
Exemplo n.º 2
0
<?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()) {