materio-base-legacy/materio_flag.pages.inc
bachy 1d11663ec4 début de modal sans ctools
Signed-off-by: bachy <git@g-u-i.net>
2012-11-01 01:10:02 +01:00

99 lines
2.2 KiB
PHP

<?php
/**
* materio_flag_refresh_block($flag)
*
*/
function materio_flag_refresh_block($flag){
$rep = array();
switch ($flag) {
case 'bookmarks':
$block_name = 'materio_flag_mybookmarks';
break;
case 'mylists':
$block_name = 'materio_flag_mylists';
break;
}
if(!isset($block_name))
return;
// $block_content = module_invoke('block', 'block_view', 'materio_flag_mybookmarks');
$block = block_load('materio_flag', $block_name);
$block_content = _block_render_blocks(array($block));
$build = _block_get_renderable_array($block_content);
$block_rendered = drupal_render($build);
$rep['block'] = $block_rendered;
drupal_json_output($rep);
}
/**
* materio_flag_createlist($type)
*
*/
function materio_flag_createlist_form($type){
$debug = false;
$path = 'flag-lists/add/' . $type;
// check if request is ajax, if not rediret
if (!$debug && (!isset($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest')) {
drupal_goto('flag-lists/add/' . $type);
exit ;
}
// menu_set_active_item($path);
// $return = menu_execute_active_handler($path, FALSE);
// 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)) {
$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');
// if (is_array($return)) {
$return = drupal_render($form);
// }
$rep = array(
'return'=>$return,
);
if ($debug) {
dsm($rep, 'rep');
return "debug display";
}else{
drupal_json_output($rep);
}
// }
}
/**
* materio_flag_createlist($type, $nid)
*
*/
function materio_flag_createlist($title, $nid = null){
drupal_get_form('flag_lists_form', $title);
}