You are here

function sweaver_property_form_submit in Sweaver 7

Same name and namespace in other branches
  1. 6 plugins/sweaver_plugin_editor/sweaver_plugin_editor.admin.inc \sweaver_property_form_submit()

Property new/edit submit callback.

1 string reference to 'sweaver_property_form_submit'
sweaver_property_form in plugins/sweaver_plugin_editor/sweaver_plugin_editor.admin.inc
Property new/edit form.

File

plugins/sweaver_plugin_editor/sweaver_plugin_editor.admin.inc, line 627
Administrative functions for Sweaver.

Code

function sweaver_property_form_submit(&$form, &$form_state) {
  $values = $form_state['values'];

  // Build selector.
  $property = new stdClass();
  $property->oid = $values['oid'];
  $property->name = $values['name'];
  $property->property = $values['property'];
  $property->description = $values['description'];
  $property->property_parent = $values['property_parent'];
  $property->property_type = $values['property_type'];
  $property->property_prefix = $values['property_prefix'];
  $property->property_suffix = $values['property_suffix'];
  $property->property_slider_min = $values['property_slider_min'];
  $property->property_slider_max = $values['property_slider_max'];
  $options = array();
  $property_options = explode("\n", trim($values['property_options']));
  foreach ($property_options as $key => $line) {
    $line_explode = explode("|", $line);
    if (count($line_explode) == 2) {
      $options[$line_explode[0]] = trim($line_explode[1]);
    }
  }
  $property->property_options = serialize($options);

  // Save property.
  $update = isset($property->oid) && is_numeric($property->oid) ? array(
    'oid',
  ) : array();
  drupal_write_record('sweaver_property', $property, $update);
  cache_clear_all('sweaver', 'cache');

  // Message.
  $action = empty($update) ? 'added' : 'updated';
  $message = t('Property %property has been @action.', array(
    '%property' => $property->name,
    '@action' => $action,
  ));

  // Message and redirect.
  drupal_set_message($message);
  $form_state['redirect'] = 'admin/config/user-interface/sweaver/editor/properties';
}