class current_search_export_ui in Facet API 7.2
Same name and namespace in other branches
- 6.3 contrib/current_search/plugins/export_ui/current_search_export_ui.class.php \current_search_export_ui
- 7 contrib/current_search/plugins/export_ui/current_search_export_ui.class.php \current_search_export_ui
CTools export UI extending class. Slightly customized for Context.
Hierarchy
- class \ctools_export_ui
- class \current_search_export_ui
Expanded class hierarchy of current_search_export_ui
1 string reference to 'current_search_export_ui'
- current_search_ctools_export_ui.inc in contrib/
current_search/ plugins/ export_ui/ current_search_ctools_export_ui.inc
File
- contrib/
current_search/ plugins/ export_ui/ current_search_export_ui.class.php, line 11 - Export UI display customizations.
View source
class current_search_export_ui extends ctools_export_ui {
/**
* Overrides ctools_export_ui::list_form().
*
* Simplifies the form similar to how the Context module does it.
*/
function list_form(&$form, &$form_state) {
parent::list_form($form, $form_state);
$form['top row']['submit'] = $form['bottom row']['submit'];
$form['top row']['reset'] = $form['bottom row']['reset'];
$form['bottom row']['#access'] = FALSE;
return;
}
/**
* Overrides ctools_export_ui::list_build_row().
*/
function list_build_row($item, &$form_state, $operations) {
parent::list_build_row($item, $form_state, $operations);
}
/**
* Overrides ctools_export_ui::edit_execute_form().
*
* This is hacky, but since CTools Export UI uses drupal_goto() we have to
* effectively change the plugin to modify the redirect path dynamically.
*/
function edit_execute_form(&$form_state) {
$output = parent::edit_execute_form($form_state);
if (!empty($form_state['executed'])) {
$clicked = $form_state['clicked_button']['#value'];
if (t('Add item') == $clicked || t('Save and edit') == $clicked) {
// We always want to redirect back to this page when adding an item,
// but we want to preserve the destination so we can be redirected back
// to where we came from after clicking "Save".
$options = array();
if (!empty($_GET['destination'])) {
$options['query']['destination'] = $_GET['destination'];
unset($_GET['destination']);
}
// Sets redirect path and options.
$op = $form_state['op'];
$name = $form_state['values']['name'];
$path = 'add' != $op ? current_path() : 'admin/config/search/current_search/list/' . $name . '/edit';
$this->plugin['redirect'][$op] = array(
$path,
$options,
);
}
}
return $output;
}
/**
* Overrides ctools_export_ui::edit_page().
*
* Allows passing of options to drupal_goto() as opposed to just a path.
*
* @see http://drupal.org/node/1373048
*/
function edit_page($js, $input, $item, $step = NULL) {
drupal_set_title($this
->get_page_title('edit', $item));
// Check to see if there is a cached item to get if we're using the wizard.
if (!empty($this->plugin['use wizard'])) {
$cached = $this
->edit_cache_get($item, 'edit');
if (!empty($cached)) {
$item = $cached;
}
}
$form_state = array(
'plugin' => $this->plugin,
'object' => &$this,
'ajax' => $js,
'item' => $item,
'op' => 'edit',
'form type' => 'edit',
'rerender' => TRUE,
'no_redirect' => TRUE,
'step' => $step,
// Store these in case additional args are needed.
'function args' => func_get_args(),
);
$output = $this
->edit_execute_form($form_state);
if (!empty($form_state['executed'])) {
// @see http://drupal.org/node/1373048
$export_key = $this->plugin['export']['key'];
$args = (array) $this->plugin['redirect']['edit'];
$args[0] = str_replace('%ctools_export_ui', $form_state['item']->{$export_key}, $args[0]);
call_user_func_array('drupal_goto', $args);
}
return $output;
}
/**
* Overrides ctools_export_ui::add_page().
*
* Allows passing of options to drupal_goto() as opposed to just a path.
*
* @see http://drupal.org/node/1373048
*/
function add_page($js, $input, $step = NULL) {
drupal_set_title($this
->get_page_title('add'));
// If a step not set, they are trying to create a new item. If a step
// is set, they're in the process of creating an item.
if (!empty($this->plugin['use wizard']) && !empty($step)) {
$item = $this
->edit_cache_get(NULL, 'add');
}
if (empty($item)) {
$item = ctools_export_crud_new($this->plugin['schema']);
}
$form_state = array(
'plugin' => $this->plugin,
'object' => &$this,
'ajax' => $js,
'item' => $item,
'op' => 'add',
'form type' => 'add',
'rerender' => TRUE,
'no_redirect' => TRUE,
'step' => $step,
// Store these in case additional args are needed.
'function args' => func_get_args(),
);
$output = $this
->edit_execute_form($form_state);
if (!empty($form_state['executed'])) {
// @see @see http://drupal.org/node/1373048
$export_key = $this->plugin['export']['key'];
$args = (array) $this->plugin['redirect']['add'];
$args[0] = str_replace('%ctools_export_ui', $form_state['item']->{$export_key}, $args[0]);
call_user_func_array('drupal_goto', $args);
}
return $output;
}
}
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 | 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 | Page callback to delete an exportable item. | |
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 standard form for editing. | |
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 | Handle the submission of the edit form. | 2 |
ctools_export_ui:: |
public | function | Validate callback for the edit form. | |
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 | 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 | Provide the table header. | 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. | |
current_search_export_ui:: |
function |
Overrides ctools_export_ui::add_page(). Overrides ctools_export_ui:: |
||
current_search_export_ui:: |
function |
Overrides ctools_export_ui::edit_execute_form(). Overrides ctools_export_ui:: |
||
current_search_export_ui:: |
function |
Overrides ctools_export_ui::edit_page(). Overrides ctools_export_ui:: |
||
current_search_export_ui:: |
function |
Overrides ctools_export_ui::list_build_row(). Overrides ctools_export_ui:: |
||
current_search_export_ui:: |
function |
Overrides ctools_export_ui::list_form(). Overrides ctools_export_ui:: |