You are here

media.variables.inc in D7 Media 7

Contains the variables used by media and their defaults.

File

includes/media.variables.inc
View source
<?php

/**
 * @file
 * Contains the variables used by media and their defaults.
 */

/* ***************************************** */

/* CONSTANTS                                 */

/* ***************************************** */

/**
 * @TODO: iz_cruft?
 * @var unknown_type
 */
define('MEDIA_RESOURCE_URI_DEFAULT', 'public://');
define('MEDIA_TYPES_DEFAULT', '*');

/**
 * Define constants.
 */
define('MEDIA_VARIABLE_NAMESPACE', 'media__');

/**
 *  Wrapper for variable_get() that uses the Media variable registry.
 *
 *  @param string $name
 *    The variable name to retrieve. Note that it will be namespaced by
 *    pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
 *    other modules.
 *  @param unknown $default
 *    An optional default variable to return if the variable hasn't been set
 *    yet. Note that within this module, all variables should already be set
 *    in the media_variable_default() function.
 *  @return unknown
 *    Returns the stored variable or its default.
 *
 *  @see media_variable_set()
 *  @see media_variable_del()
 *  @see media_variable_default()
 */
function media_variable_get($name, $default = NULL) {

  // Allow for an override of the default.
  // Useful when a variable is required (like $path), but namespacing still desired.
  if (!isset($default)) {
    $default = media_variable_default($name);
  }

  // Namespace all variables
  $variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
  return variable_get($variable_name, $default);
}

/**
 *  Wrapper for variable_set() that uses the Media variable registry.
 *
 *  @param string $name
 *    The variable name to set. Note that it will be namespaced by
 *    pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
 *    other modules.
 *  @param unknown $value
 *    The value for which to set the variable.
 *  @return unknown
 *    Returns the stored variable after setting.
 *
 *  @see media_variable_get()
 *  @see media_variable_del()
 *  @see media_variable_default()
 */
function media_variable_set($name, $value) {
  $variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
  return variable_set($variable_name, $value);
}

/**
 *  Wrapper for variable_del() that uses the Media variable registry.
 *
 *  @param string $name
 *    The variable name to delete. Note that it will be namespaced by
 *    pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
 *    other modules.
 *
 *  @see media_variable_get()
 *  @see media_variable_set()
 *  @see media_variable_default()
 */
function media_variable_del($name) {
  $variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
  variable_del($variable_name);
}

/**
 * Returns the final machine name of a Media namespaced variable.
 */
function media_variable_name($name) {
  return MEDIA_VARIABLE_NAMESPACE . $name;
}

/**
 *  The default variables within the Media namespace.
 *
 *  @param string $name
 *    Optional variable name to retrieve the default. Note that it has not yet
 *    been pre-pended with the MEDIA_VARIABLE_NAMESPACE namespace at this time.
 *  @return unknown
 *    The default value of this variable, if it's been set, or NULL, unless
 *    $name is NULL, in which case we return an array of all default values.
 *
 *  @see media_variable_get()
 *  @see media_variable_set()
 *  @see media_variable_del()
 */
function media_variable_default($name = NULL) {
  static $defaults;
  if (!isset($defaults)) {
    $defaults = array(
      'wysiwyg_title' => t('Media browser'),
      'wysiwyg_icon_title' => t('Add media'),
      //@todo: We should do this per type actually.  For "other" it should be a link.
      'wysiwyg_default_view_mode' => 'media_large',
      // Types which can be selected when embedding media vs wysiwyg.
      'wysiwyg_allowed_types' => array(
        'audio',
        'image',
        'video',
      ),
      // Attributes which can be modified via the wysiwyg and persist.
      'wysiwyg_allowed_attributes' => array(
        'height',
        'width',
        'hspace',
        'vspace',
        'border',
        'align',
        'style',
        'alt',
        'title',
        'class',
        'id',
      ),
      'field_select_media_text' => t('Select media'),
      'field_remove_media_text' => t('Remove media'),
      // Name of the theme to use in media popup dialogs, defaults to admin_theme
      'dialog_theme' => '',
      // @TODO: Make a configuration form with this.
      'file_extensions' => 'jpg jpeg gif png txt doc docx xls xlsx pdf ppt pptx pps ppsx odt ods odp mp3 mov m4v mp4 mpeg avi ogg oga ogv wmv ico',
      'max_filesize' => '',
      'debug' => FALSE,
      'file_list_size' => 10,
      // Used in media.xml.inc: how long to cache retrieved remote data.
      'xml_cache_expire' => 3600,
      // Browser defaults in media.browser.inc.
      'browser_viewtype_default' => 'thumbnails',
      'browser_pager_limit' => 40,
      'import_batch_size' => 20,
      'fromurl_supported_schemes' => array(
        'http',
        'https',
        'ftp',
        'smb',
        'ftps',
      ),
      'type_icon_directory' => drupal_get_path('module', 'media') . '/images/types',
      'icon_base_directory' => drupal_get_path('module', 'media') . '/images/icons',
      'icon_set' => 'default',
      // This is set in media_enable().  It will show a persistant dsm on every page
      // until the user runs the batch operation provided by media_admin_rebuild_types_form().
      'show_file_type_rebuild_nag' => FALSE,
      // Deprecated variables no longer in use, but should still be uninstalled.
      'browser_library_empty_message' => NULL,
    );
  }
  if (!isset($name)) {
    return $defaults;
  }
  if (isset($defaults[$name])) {
    return $defaults[$name];
  }
}

Functions

Namesort descending Description
media_variable_default The default variables within the Media namespace.
media_variable_del Wrapper for variable_del() that uses the Media variable registry.
media_variable_get Wrapper for variable_get() that uses the Media variable registry.
media_variable_name Returns the final machine name of a Media namespaced variable.
media_variable_set Wrapper for variable_set() that uses the Media variable registry.

Constants

Namesort descending Description
MEDIA_RESOURCE_URI_DEFAULT @TODO: iz_cruft?
MEDIA_TYPES_DEFAULT
MEDIA_VARIABLE_NAMESPACE Define constants.