+160
-24
@@ -11,7 +11,7 @@ function materio_flag_refresh_block($flag){
|
||||
case 'bookmarks':
|
||||
$block_name = 'materio_flag_mybookmarks';
|
||||
break;
|
||||
case 'mylists':
|
||||
case 'lists':
|
||||
$block_name = 'materio_flag_mylists';
|
||||
break;
|
||||
}
|
||||
@@ -62,17 +62,167 @@ function materio_flag_createlist_form($type){
|
||||
// break;
|
||||
// }
|
||||
// } elseif (isset($return)) {
|
||||
$form_state['build_info']['args'] = array(null, $type);
|
||||
// $form = drupal_get_form('flag_lists_form', $form_state);//, NULL, $type
|
||||
$form = drupal_build_form('flag_lists_form', $form_state);
|
||||
dsm($form, 'form');
|
||||
|
||||
$form_state['build_info']['args'] = array(NULL, 'breve');
|
||||
// $f = drupal_get_form('flag_lists_form', $form_state);
|
||||
// dsm($f);
|
||||
|
||||
// if (is_array($return)) {
|
||||
$return = drupal_render($form);
|
||||
// }
|
||||
$form = array(
|
||||
'#type' => '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' => '<div class="actions">',
|
||||
'#suffix' => '</div>',
|
||||
);
|
||||
|
||||
|
||||
$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(
|
||||
'return'=>$return,
|
||||
"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');
|
||||
|
||||
$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' => 'folder',
|
||||
);
|
||||
|
||||
if ($debug) {
|
||||
@@ -81,19 +231,5 @@ function materio_flag_createlist_form($type){
|
||||
}else{
|
||||
drupal_json_output($rep);
|
||||
}
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* materio_flag_createlist($type, $nid)
|
||||
*
|
||||
*/
|
||||
function materio_flag_createlist($title, $nid = null){
|
||||
drupal_get_form('flag_lists_form', $title);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user