Exemple #1
0
    forward(REFERER);
}
if (questions_limited_to_groups() && $container_guid == $question->owner_guid) {
    register_error(elgg_echo('questions:action:question:save:error:limited_to_groups'));
    forward(REFERER);
}
$title = get_input('title');
$description = get_input('description');
$tags = string_to_tag_array(get_input('tags', ''));
$access_id = (int) get_input('access_id');
if (empty($container_guid) || empty($title) || empty($description)) {
    register_error(elgg_echo('questions:action:question:save:error:body', array($container_guid, $title, $description)));
    forward(REFERER);
}
// make sure we have a valid access_id
$access_id = questions_validate_access_id($access_id, $container_guid);
$question->title = $title;
$question->description = $description;
$question->tags = $tags;
$question->access_id = $access_id;
$question->container_guid = $container_guid;
try {
    $question->save();
    if ($adding) {
        // add river event
        elgg_create_river_item(['view' => 'river/object/question/create', 'action_type' => 'create', 'subject_guid' => elgg_get_logged_in_user_guid(), 'object_guid' => $question->getGUID(), 'access_id' => $question->access_id]);
        // notify experts
        questions_notify_experts($question, $moving);
        // check for a solution time limit
        $solution_time = questions_get_solution_time($question->getContainerEntity());
        if ($solution_time) {
$description = get_input('description');
$tags = string_to_tag_array(get_input('tags', ''));
$access_id = (int) get_input('access_id');
$forward_url = REFERER;
if (empty($guid)) {
    register_error(elgg_echo('error:missing_data'));
    forward(REFERER);
}
elgg_entity_gatekeeper($guid, 'object', 'question');
$entity = get_entity($guid);
$container = $entity->getContainerEntity();
if (!$entity->canEdit() || !questions_can_move_to_discussions($container)) {
    register_error(elgg_echo('questions:action:question:move_to_discussions:error:move'));
    forward(REFERER);
}
$access_id = questions_validate_access_id($access_id, $container->getGUID());
// save the latest changes
$entity->title = $title;
$entity->description = $description;
$entity->tags = $tags;
$entity->access_id = $access_id;
$entity->save();
// create new discussion
$topic = new ElggObject();
$topic->subtype = 'groupforumtopic';
$topic->container_guid = $entity->getContainerGUID();
$topic->access_id = $entity->access_id;
$topic->title = $entity->title;
$topic->description = $entity->description;
$topic->tags = $entity->tags;
$topic->status = 'open';