getPrivateSetting() public method

Returns a private setting value
public getPrivateSetting ( string $name ) : mixed
$name string Name of the private setting
return mixed Null if the setting does not exist
Example #1
0
/**
 * This function checks if the questions workflow is enabled in the plugin settings and for the given container
 *
 * @return bool true is enabled, false otherwise
 */
function questions_workflow_enabled(ElggEntity $container = null)
{
    if ($container && $container instanceof ElggGroup) {
        return $container->getPrivateSetting('questions_workflow_enabled') == "yes";
    }
    return elgg_get_plugin_setting("workflow_enabled", "questions") == "yes";
}
Example #2
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) {
        // 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;
}
Example #3
0
/**
 * Add tags to the sent tags of an entity
 *
 * @param ElggEntity $entity       the entity to add to
 * @param string[]   $sending_tags the newly sent tags
 *
 * @return bool
 */
function tag_tools_add_sent_tags(ElggEntity $entity, $sending_tags = [])
{
    if (!$entity instanceof \ElggEntity) {
        return false;
    }
    if (empty($sending_tags)) {
        // nothing to add
        return true;
    }
    if (!is_array($sending_tags)) {
        $sending_tags = [$sending_tags];
    }
    $sent_tags = $entity->getPrivateSetting('tag_tools:sent_tags');
    if (!empty($sent_tags)) {
        $sent_tags = json_decode($sent_tags, true);
    } else {
        $sent_tags = [];
    }
    // store all processed tags
    $processed_tags = array_merge($sent_tags, $sending_tags);
    $processed_tags = array_unique($processed_tags);
    return $entity->setPrivateSetting('tag_tools:sent_tags', json_encode($processed_tags));
}
 /**
  * Handle the deletion of an ElggEntity
  *
  * @param \ElggEntity $entity the entity
  *
  * @return void
  */
 protected static function deleteEntity(\ElggEntity $entity)
 {
     if (!$entity->getPrivateSetting(ELASTICSEARCH_INDEXED_NAME)) {
         return;
     }
     $client = elasticsearch_get_client();
     if (empty($client)) {
         return;
     }
     elasticsearch_add_document_for_deletion($entity->getGUID(), ['_index' => $client->getIndex(), '_type' => $client->getDocumentTypeFromEntity($entity), '_id' => $entity->getGUID()]);
 }