function guifi_radio_add_wds_form(&$form, &$form_state) { guifi_log(GUIFILOG_TRACE, "function guifi_radio_add_wds_form", $form_state['newInterface']); $form_weight = 0; $form_state['values']['newInterface'] = $form_state['newInterface']; // store all the form_stat values guifi_form_hidden($form, $form_state['values'], $form_weight); // Initialize filters if (empty($form_state['values']['filters'])) { $form_state['values']['filters'] = $form_state['filters']; } drupal_set_title(t('Choose an AP from the list to link with %ssid', array('%ssid' => $form_state['values']['radios'][$form_state['filters']['from_radio']]['ssid']))); // Filter form $form['filters_region'] = guifi_devices_select_filter($form_state, 'guifi_radio_add_wds_confirm_submit'); $form['list-devices'] = guifi_devices_select($form_state['values']['filters'], 'guifi_radio_add_wds_confirm_submit'); return FALSE; }
/** * Select device * * URL: http://guifi.net/guifi/js/select-device/% */ function guifi_ahah_select_device() { $cid = 'form_' . $_POST['form_build_id']; $cache = cache_get($cid, 'cache_form'); $action = arg(3); if ($cache) { $form = $cache->data; if ($action == 'guifi_node_distances') { $node = guifi_node_load($_POST['filters']['from_node']); $form['list-devices'] = guifi_node_distances_list($_POST['filters'], $node); } else { $form['list-devices'] = guifi_devices_select($_POST['filters'], $action); } cache_set($cid, $form, 'cache_form', $cache->expire); // Build and render the new select element, then return it in JSON format. $form_state = array(); $form['#post'] = array(); $form = form_builder($form['form_id']['#value'], $form, $form_state); $output = drupal_render($form['list-devices']); drupal_json(array('status' => TRUE, 'data' => $output)); } else { drupal_json(array('status' => FALSE, 'data' => '')); } exit; }