'form', '#id' => 'materio-flag-create-list-form', ); $form['type'] = array( '#type' => 'hidden', '#value' => $type, '#name' => 'type', ); $form['listname'] = array( '#type' => 'textfield', '#title' => t('Create new @name', array('@name'=>variable_get('flag_lists_name', 'list'))), '#default_value' => '', // '#size' => 100, '#maxlength' => 255, '#name' => 'flag-lists-name', '#description' => t('A short, descriptive title for this Folder list. Limit to 255 characters.'), ); $form['actions'] = array( '#prefix' => '
', '#suffix' => '
', ); $form['actions']['cancel'] = array( '#type' => 'button', '#value' => t('cancel'), '#name' => 'cancel', ); $form['actions']['create'] = array( '#type' => 'submit', '#value' => t('create'), '#name' => 'create', ); // dsm($form, 'form'); $return = drupal_render($form); $rep = array( 'return'=>$return, ); if ($debug) { dsm($rep, 'rep'); return "debug display"; }else{ drupal_json_output($rep); } } function materio_flag_nodelinks(){ $nids = explode(';', $_REQUEST['nids']); if(count($nids)){ foreach ($nids as $nid) { $node = node_load($nid); $lks = materio_flag_get_entity_links($node, 'node'); $links[$nid] = $lks; } $rep = array( "status" => 1, "nids" => $nids, 'links' => $links, ); }else{ $rep['status'] = 0; } drupal_json_output($rep); } function materio_flag_user_lists($fid){ global $user; $flag = flag_lists_get_flag($fid); // dsm($flag, 'flag'); drupal_set_title(''.check_plain($flag->title), PASS_THROUGH); $flaged_content = flag_lists_get_flagged_content($fid, $user->uid); // dsm($flaged_content, 'flaged_content'); $viewmode = isset($user->data['materiosearchapi_viewmode']) ? $user->data['materiosearchapi_viewmode'] : variable_get('defaultviewmode', 'full'); $limit = variable_get($viewmode.'_limite', '10'); $offset = pager_find_page() * $limit; $count = count($flaged_content); $max = $offset+$limit > $count ? $count : $offset+$limit; for ($i=$offset; $i < $max; $i++) { if($flaged_content[$i]->entity_type == 'node'){ $items[] = node_load($flaged_content[$i]->entity_id); } } $ret['#items'] = $items; $ret['#theme'] = 'materio_flag_mylists_list'; $ret['#view_mode'] = $viewmode; $ret['#fid'] = $fid; $ret['#count'] = $count; $ret['#name'] = variable_get('flag_lists_name', 'list'); $ret['#title'] = $flag->title; pager_default_initialize($count, $limit); $ret['#pager'] = theme('pager'); return $ret; } function materio_flag_ajax_list($fid, $page = 0){ $debug = false; $_GET['page'] = $page; $path = 'lists/'.$fid; // check if request is ajax, if not rediret to search_api_page page with right keys if (!$debug && (!isset($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest')) { drupal_goto($path, array('query'=>array('page'=>$page)), 301); exit; } // get results menu_set_active_item($path); $return = menu_execute_active_handler($path, FALSE); // dsm($return, '$return'); if (is_int($return)) { switch ($return) { case MENU_NOT_FOUND : drupal_add_http_header('Status', '404 Not Found'); break; case MENU_ACCESS_DENIED : drupal_add_http_header('Status', '403 Forbidden'); break; case MENU_SITE_OFFLINE : drupal_add_http_header('Status', '503 Service unavailable'); break; } } elseif (isset($return)) { if (is_array($return)) { $return = drupal_render($return); } $rep = array( 'return' => $return, 'path' => $path, 'title' => drupal_get_title(), ); if ($debug) { dsm($rep, 'rep'); return "debug display"; }else{ drupal_json_output($rep); } } }