class dfp_tag_ui in Doubleclick for Publishers (DFP) 7
Same name and namespace in other branches
- 7.2 plugins/export_ui/dfp_tag_ui.class.php \dfp_tag_ui
Customizations of the DART Tags UI.
Hierarchy
- class \ctools_export_ui
- class \dfp_tag_ui
Expanded class hierarchy of dfp_tag_ui
1 string reference to 'dfp_tag_ui'
- dfp_ctools_export_ui.inc in plugins/
export_ui/ dfp_ctools_export_ui.inc - A Ctools Export UI plugin for DFP ads.
File
- plugins/
export_ui/ dfp_tag_ui.class.php, line 11 - A custom Ctools Export UI class for DFP Tags.
View source
class dfp_tag_ui extends ctools_export_ui {
/**
* Prepare the tag values before they are added to the database.
*/
function edit_form_submit(&$form, &$form_state) {
// Since the targeting form is reusable it isn't already in the settings
// array so we grab it here.
$form_state['values']['settings']['targeting'] = $form_state['values']['targeting'];
$form_state['values']['settings']['breakpoints'] = $form_state['values']['breakpoints'];
parent::edit_form_submit($form, $form_state);
}
/**
* Build a row based on the item.
*
* By default all of the rows are placed into a table by the render
* method, so this is building up a row suitable for theme('table').
* This doesn't have to be true if you override both.
*/
function list_build_row($item, &$form_state, $operations) {
// Warn users if network id has no value. This can happen immediatly after
// the module is installed.
if (variable_get('dfp_network_id', '') == '') {
drupal_set_message(t('DFP ad tags will not work until you have <a href="/admin/structure/dfp_ads/settings">set your network id</a> as provided by Google.'), 'warning', FALSE);
}
// Set up sorting
$name = $item->{$this->plugin['export']['key']};
$schema = ctools_export_get_schema($this->plugin['schema']);
switch ($form_state['values']['order']) {
case 'disabled':
$this->sorts[$name] = empty($item->disabled) . $name;
break;
case 'name':
$this->sorts[$name] = $name;
break;
case 'storage':
$this->sorts[$name] = $item->{$schema['export']['export type string']} . $name;
break;
}
$this->rows[$name]['data'] = array();
$this->rows[$name]['class'] = !empty($item->disabled) ? array(
'ctools-export-ui-disabled',
) : array(
'ctools-export-ui-enabled',
);
$this->rows[$name]['data'][] = array(
'data' => check_plain($item->slot),
'class' => array(
'ctools-export-ui-slot',
),
);
$this->rows[$name]['data'][] = array(
'data' => check_plain($item->size),
'class' => array(
'ctools-export-ui-size',
),
);
$this->rows[$name]['data'][] = array(
'data' => check_plain($item->block) ? t('Yes') : t('No'),
'class' => array(
'ctools-export-ui-block',
),
);
$this->rows[$name]['data'][] = array(
'data' => check_plain($item->{$schema['export']['export type string']}),
'class' => array(
'ctools-export-ui-storage',
),
);
$ops = theme('links__ctools_dropbutton', array(
'links' => $operations,
'attributes' => array(
'class' => array(
'links',
'inline',
),
),
));
$this->rows[$name]['data'][] = array(
'data' => $ops,
'class' => array(
'ctools-export-ui-operations',
),
);
}
/**
* Provide the table header.
*
* If you've added columns via list_build_row() but are still using a
* table, override this method to set up the table header.
*/
function list_table_header() {
$header = array();
$header[] = array(
'data' => t('Ad Slot'),
'class' => array(
'ctools-export-ui-slot',
),
);
$header[] = array(
'data' => t('Size'),
'class' => array(
'ctools-export-ui-size',
),
);
$header[] = array(
'data' => t('Block'),
'class' => array(
'ctools-export-ui-block',
),
);
$header[] = array(
'data' => t('Storage'),
'class' => array(
'ctools-export-ui-storage',
),
);
$header[] = array(
'data' => t('Operations'),
'class' => array(
'ctools-export-ui-operations',
),
);
return $header;
}
/**
* Make certain that setting form_state['rebuild'] = TRUE in a submit function
* will correctly rebuild the exportables item edit form for the user. This
* function is needed until the patch at http://drupal.org/node/1524598 is
* committed.
*/
function edit_execute_form_standard(&$form_state) {
$output = drupal_build_form('ctools_export_ui_edit_item_form', $form_state);
if (!empty($form_state['executed']) && !$form_state['rebuild']) {
// Interstitial slots are not displayed as a block.
if (!empty($form_state['values']['settings']['out_of_page'])) {
$form_state['item']->block = '0';
}
$this
->edit_save_form($form_state);
}
else {
unset($form_state['executed']);
}
return $output;
}
/**
* Deletes any blocks associated with the exportable item being deleted.
*/
function delete_page($js, $input, $item) {
$delta = drupal_strlen($item->machinename) >= 32 ? md5($item->machinename) : $item->machinename;
db_delete('block')
->condition('module', 'dfp')
->condition('delta', $delta)
->execute();
return parent::delete_page($js, $input, $item);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ctools_export_ui:: |
property | |||
ctools_export_ui:: |
property | |||
ctools_export_ui:: |
property | |||
ctools_export_ui:: |
public | function | Menu callback to determine if an operation is accessible. | 1 |
ctools_export_ui:: |
public | function | ||
ctools_export_ui:: |
public | function | Builds the operation links for a specific exportable item. | |
ctools_export_ui:: |
public | function | Main entry point to clone an item. | |
ctools_export_ui:: |
public | function | Deletes exportable items from the database. | |
ctools_export_ui:: |
public | function | Callback to disable a page. | |
ctools_export_ui:: |
public | function | Clear the object cache for the currently edited item. | |
ctools_export_ui:: |
public | function | Retrieve the item currently being edited from the object cache. | |
ctools_export_ui:: |
public | function | Figure out what the cache key is for this object. | |
ctools_export_ui:: |
public | function | Cache the item currently currently being edited. | |
ctools_export_ui:: |
public | function | ||
ctools_export_ui:: |
public | function | Execute the form. | |
ctools_export_ui:: |
public | function | Execute the wizard for editing. | |
ctools_export_ui:: |
public | function | Perform a final validation check before allowing the form to be finished. | |
ctools_export_ui:: |
public | function | Provide the actual editing form. | 1 |
ctools_export_ui:: |
public | function | Import form. Provides simple helptext instructions and textarea for pasting a export definition. | |
ctools_export_ui:: |
public | function | Submit callback for import form. | |
ctools_export_ui:: |
public | function | Import form validate handler. | |
ctools_export_ui:: |
public | function | Validate callback for the edit form. | |
ctools_export_ui:: |
public | function | Main entry point to edit an item. | |
ctools_export_ui:: |
public | function | Called to save the final product from the edit form. | |
ctools_export_ui:: |
public | function | Wizard 'back' callback when using a wizard to edit an item. | |
ctools_export_ui:: |
public | function | Wizard 'cancel' callback when using a wizard to edit an item. | |
ctools_export_ui:: |
public | function | Wizard 'cancel' callback when using a wizard to edit an item. | 1 |
ctools_export_ui:: |
public | function | Wizard 'next' callback when using a wizard to edit an item. | 1 |
ctools_export_ui:: |
public | function | Callback to enable a page. | |
ctools_export_ui:: |
public | function | Page callback to display export information for an exportable item. | |
ctools_export_ui:: |
public | function | Get a page title for the current page from our plugin strings. | |
ctools_export_ui:: |
public | function | Get the form info for the wizard. | 1 |
ctools_export_ui:: |
public | function | hook_menu() entry point. | |
ctools_export_ui:: |
public | function | Page callback to import information for an exportable item. | |
ctools_export_ui:: |
public | function | Fake constructor -- this is easier to deal with than the real constructor because we are retaining PHP4 compatibility, which would require all child classes to implement their own constructor. | 1 |
ctools_export_ui:: |
public | function | Add listing CSS to the page. | |
ctools_export_ui:: |
public | function | Determine if a row should be filtered out. | 2 |
ctools_export_ui:: |
public | function | Render a footer to go after thie list. | |
ctools_export_ui:: |
public | function | Create the filter/sort form at the top of a list of exports. | 2 |
ctools_export_ui:: |
public | function | Submit the filter/sort form. | |
ctools_export_ui:: |
public | function | Validate the filter/sort form. | |
ctools_export_ui:: |
public | function | Render a header to go before the list. | |
ctools_export_ui:: |
public | function | Master entry point for handling a list. | |
ctools_export_ui:: |
public | function | Render all of the rows together. | |
ctools_export_ui:: |
public | function | Provide a list of fields to test against for the default "search" widget. | 1 |
ctools_export_ui:: |
public | function | Provide a list of sort options. | 2 |
ctools_export_ui:: |
public | function | Called by ctools_export_ui_load to load the item. | |
ctools_export_ui:: |
public | function | Perform a drupal_goto() to the location provided by the plugin for the operation. | |
ctools_export_ui:: |
public | function | Set an item's state to enabled or disabled and output to user. | |
dfp_tag_ui:: |
function |
Deletes any blocks associated with the exportable item being deleted. Overrides ctools_export_ui:: |
||
dfp_tag_ui:: |
function |
Make certain that setting form_state['rebuild'] = TRUE in a submit function
will correctly rebuild the exportables item edit form for the user. This
function is needed until the patch at http://drupal.org/node/1524598 is
committed. Overrides ctools_export_ui:: |
||
dfp_tag_ui:: |
function |
Prepare the tag values before they are added to the database. Overrides ctools_export_ui:: |
||
dfp_tag_ui:: |
function |
Build a row based on the item. Overrides ctools_export_ui:: |
||
dfp_tag_ui:: |
function |
Provide the table header. Overrides ctools_export_ui:: |