/**
  * Add the ad layer priority management page.
  *
  * @access public
  */
 public function add_settings_pages()
 {
     if (!class_exists('Fieldmanager_Field')) {
         return;
     }
     $fm_priority = new Fieldmanager_Group(array('name' => 'ad_layers', 'sortable' => true, 'collapsible' => true, 'collapsed' => true, 'limit' => 0, 'extra_elements' => 0, 'label' => __('Ad Layer', 'ad-layers'), 'label_macro' => array(__('%s', 'ad-layers'), 'title'), 'children' => array('post_id' => new Fieldmanager_Hidden(), 'title' => new Fieldmanager_Textfield(array('label' => __('Title', 'ad-layers'), 'attributes' => array('readonly' => 'readonly'))))));
     $fm_priority->add_submenu_page(Ad_Layers::instance()->get_edit_link(), __('Layer Priority', 'ad-layers'));
     $fm_custom = new Fieldmanager_Textfield(array('name' => 'ad_layers_custom_variables', 'limit' => 0, 'extra_elements' => 0, 'one_label_per_item' => false, 'label' => __('Add one or more custom variables for targeting.', 'ad-layers'), 'add_more_label' => __('Add a custom variable', 'ad-layers')));
     $fm_custom->add_submenu_page(Ad_Layers::instance()->get_edit_link(), __('Custom Variables', 'ad-layers'));
 }
 /**
  * Add the ad server settings page.
  *
  * @access public
  */
 public function add_settings_page($args = array())
 {
     if (!class_exists('Fieldmanager_Field')) {
         return;
     }
     // Provide basic ad server selection.
     $args = array('name' => $this->option_name, 'label' => __('Ad Server Settings', 'ad-layers'), 'children' => array('ad_server' => new Fieldmanager_Select(array('label' => __('Ad Server', 'ad-layers'), 'options' => $this->get_ad_server_options(), 'first_empty' => true))));
     // Child classes can add additional functionality.
     $args['children'] = array_merge($args['children'], $this->get_settings_fields());
     $fm_ad_servers = new Fieldmanager_Group($args);
     $fm_ad_servers->add_submenu_page(Ad_Layers::instance()->get_edit_link(), __('Ad Server Settings', 'ad-layers'));
 }