You are here

function values_load in Values 6

Same name and namespace in other branches
  1. 7 values.module \values_load()

Loads values object from the database.

5 calls to values_load()
values_cck_content_allowed_values_alter in ./values_cck.module
Implementation of hook_content_allowed_values_alter().
values_form in ./values.module
Form for adding a new value set.
values_form_validate in ./values.module
Validates the values form.
values_load_all in ./values.module
Loads all value sets.
values_webform_webform_select_options in ./values_webform.module
Callback for the select options list

File

./values.module, line 318
API for managing reusable value sets.

Code

function values_load($name, $reset = FALSE) {
  if (is_object($name)) {
    $name = $name->name;
  }
  if (module_exists('ctools')) {

    // Try using Chaos tools suite for exporting and caching
    ctools_include('export');
    $values = ctools_export_load_object('values_list', 'names', array(
      $name,
    ));
  }
  else {

    // In the absence of ctools, use our own basic static caching
    static $values = array();
    if ($reset || !isset($values[$name])) {
      $values[$name] = db_fetch_object(db_query("SELECT * FROM {values_list} WHERE name = '%s'", $name));
      if (isset($values[$name]->data)) {
        $values[$name]->data = unserialize($values[$name]->data);
      }
    }
  }
  if ($name && isset($values[$name])) {
    if (is_array($values[$name]->data)) {
      usort($values[$name]->data, 'values_sort_by_weight');
    }
    return $values[$name];
  }
  return FALSE;
}