class PartyDefaultDataSetUIAdd in Party 8.2
Same name and namespace in other branches
- 7 includes/party.data_ui.inc \PartyDefaultDataSetUIAdd
The 'add' action: attach a new entity.
@todo: not yet in use. See todo in party_menu().
Hierarchy
- class \PartyDefaultDataSetUIAdd implements PartyDataSetActionInterface
Expanded class hierarchy of PartyDefaultDataSetUIAdd
1 string reference to 'PartyDefaultDataSetUIAdd'
- party_profile_party_data_set_info in modules/
party_profile/ party_profile.module - Implements hook_party_data_set_info().
File
- includes/
party.data_ui.inc, line 70 - Provides default classes for UI actions on data sets.
View source
class PartyDefaultDataSetUIAdd implements PartyDataSetActionInterface {
/**
* The page title for the action form.
*/
function get_page_title($party, $data_set, $eid = NULL) {
$data_set_controller = party_get_crm_controller($party, $data_set['set_name']);
return t("Add new @data-set-label to @party-label", array(
'@data-set-label' => $data_set_controller
->getDataInfo('label'),
'@party-label' => $party->label,
));
}
/**
* Provides the action form for adding a new entity.
*
* @param $party
* A loaded party object.
* @param $data_set
* A loaded data set.
* We don't actually need this loaded, but we need a menu loader to convert
* the path-style string to the machine name, and a menu loader that doesn't
* load would be weird too.
* @param $eid
* The id of the entity, if relevant to this action.
*/
function action_form($form, &$form_state, $party, $data_set, $eid = NULL) {
$form = array();
$controller = party_get_crm_controller($party, $data_set['set_name']);
$form_state['#attached_entity'] = $controller
->createEntity();
field_attach_form($data_set['entity type'], $form_state['#attached_entity'], $form, $form_state);
$form['actions'] = array(
'#type' => 'actions',
'submit' => array(
'#type' => 'submit',
'#value' => t('Create new @label', array(
'@label' => $data_set['label'],
)),
),
);
return $form;
}
function action_form_validate($form, &$form_state) {
// Get the original form parameters.
list($party, $data_set, $action, $eid) = $form_state['build_info']['args'];
field_attach_form_validate($data_set['entity type'], $form_state['#attached_entity'], $form, $form_state);
}
function action_form_submit($form, &$form_state) {
// Get the original form parameters.
list($party, $data_set, $action, $eid) = $form_state['build_info']['args'];
field_attach_submit($data_set['entity type'], $form_state['#attached_entity'], $form, $form_state);
// Attach the entity and save the entity and controller.
$controller = party_get_crm_controller($party, $data_set['set_name']);
$controller
->attachEntity($form_state['#attached_entity']);
$controller
->save(TRUE);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
PartyDefaultDataSetUIAdd:: |
function |
Provides the action form for adding a new entity. Overrides PartyDataSetActionInterface:: |
1 | |
PartyDefaultDataSetUIAdd:: |
function |
Form submission for the action form. Overrides PartyDataSetActionInterface:: |
1 | |
PartyDefaultDataSetUIAdd:: |
function |
Form validation for the action form. Overrides PartyDataSetActionInterface:: |
1 | |
PartyDefaultDataSetUIAdd:: |
function |
The page title for the action form. Overrides PartyDataSetActionInterface:: |