You are here

function _ad_get_vid in Advertisement 7

Same name and namespace in other branches
  1. 5.2 ad.module \_ad_get_vid()
  2. 5 ad.module \_ad_get_vid()
  3. 6.3 ad.module \_ad_get_vid()
  4. 6 ad.module \_ad_get_vid()
  5. 6.2 ad.module \_ad_get_vid()

Creates a vocabulary for use by ad groups if not already created.

11 calls to _ad_get_vid()
ad_admin_groups_list in ./ad.admin.inc
ad_admin_group_form in ./ad.admin.inc
Returns a form for adding an ad group.
ad_channel_admin_channel in channel/ad_channel.module
Administrative page for creating or editing channels.
ad_channel_admin_channel_submit in channel/ad_channel.module
Save the channel.
ad_filters in ./ad.admin.inc
List ad administration filters that can be applied.

... See full list

File

./ad.module, line 1693

Code

function _ad_get_vid() {
  $vid = variable_get('ad_group_vid', '');
  if (empty($vid)) {

    // No vid stored in the variables table, check if one even exists.

    //$vid = db_query("SELECT vid FROM {taxonomy_vocabulary} WHERE module = 'ad'")->fetchField();
    $vocab = taxonomy_vocabulary_load_multiple(array(), array(
      'module' => 'ad',
    ));
    if (empty($vocab)) {

      // No vid, so we create one.
      $edit = (object) array(
        'name' => t('Ad groups'),
        'machine_name' => 'ad_group',
        'multiple' => 1,
        'required' => 0,
        'hierarchy' => 0,
        'relations' => 0,
        'module' => 'ad',
        'nodes' => array(
          'ad' => 1,
        ),
      );
      taxonomy_vocabulary_save($edit);
      $vid = $edit->vid;
    }
    else {
      $vocab = array_shift($vocab);
      $vid = $vocab->vid;
    }

    // Save the vid for next time.
    variable_set('ad_group_vid', $vid);
  }
  return $vid;
}