Регистрация с Lightbox2

Главные вкладки

Аватар пользователя FORTIS FORTIS 2 апреля 2009 в 16:12

как заставить Lightbox2 показывать в всплывающем окне форму регистрации?
Как отображать содержимое нужной мне ноды в таком окне?

Комментарии

Аватар пользователя agcom agcom 2 апреля 2009 в 20:47

В настройках сайта, в настройках Lightbox2, в секции Modal form settings отмечаете Enable login support, и в меню создаете пункт со ссылкой user/login, который показываете незарегистрированным пользователям, а старый блок логина в блоках отключаете, и всё.

Аватар пользователя sas@drupal.org sas@drupal.org 2 апреля 2009 в 22:30

Нет не все - если Вы введете в последней версии lightbox2 неверный пароль для пользователя - то Вас переадресует на непривлекательную страничку - в предыдущих отправляла на родную страницу регистрации - я это "полечил" введением 10 строк PHP кода - если будет интересно вышлю на "мыло" Smile

Аватар пользователя sas@drupal.org sas@drupal.org 3 апреля 2009 в 8:19

version = "6.x-1.9"
core = "6.x"
project = "lightbox2"
datestamp = "1231421439"

function lightbox2_login() {
// sas add for goto in case not correct 'pass' or 'login'
if(isset($_REQUEST['form_id'])
&&($_REQUEST['form_id'] == 'user_login_block')
&&isset($_REQUEST['name'])
&&isset($_REQUEST['pass'])
){
$user = user_load(array('name'=>$_REQUEST['name'],'pass'=>$_REQUEST['pass']));
if(!$user){
unset($_REQUEST['destination']);
drupal_goto('user/login');
}
}
// sas [end] add for goto in case not correct 'pass' or 'login'

print drupal_get_form('user_login_block');

// If the OpenID module is enabled, the javascript and css may not exist
// on the page, so add them dynamically.
if (module_exists('openid')) {
$path = drupal_get_path('module', 'openid');
$js_file = base_path() . $path .'/openid.js';
$css_file = base_path() . $path .'/openid.css';

// Load the javascript dynamically.
print '$.getScript("'. $js_file .'", function () {if ($.isFunction(Drupal.behaviors.openid)) { Drupal.behaviors.openid(document); } });';

// Load the css file dynamically.
print '
var fileref=document.createElement("link");
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", "'. $css_file .'");
document.getElementsByTagName("head")[0].appendChild(fileref);
';
}

// drupal_add_js() with 'inline' didn't seem to work, possibly because this is
// AJAX loaded content.
print 'Drupal.attachBehaviors();';
exit;
}

Аватар пользователя FORTIS FORTIS 3 апреля 2009 в 11:08

oO)
Прочитайте еще раз, мне не блок логина нужен, мне форма регистрации в лайтбоксе нужна с полями Имя пользователя, Пароль, E-mail, и т.д.

Аватар пользователя sas@drupal.org sas@drupal.org 3 апреля 2009 в 23:32

"FORTIS" wrote:
Имя пользователя, Пароль, E-mail, и т.д.

Блок можно взять как пример использования модального окна, но без php не обойтись Smile