Да вьюшка в блоке, но обошел это так - Contextual filters назначил как Содержимое: Has taxonomy term ID
А в настройках выбрал Provide default value = php код и туда вставил:
session_start();
if (isset($_SESSION['flt'])) {return $_SESSION['flt']; } else {return 'all';}
Единственное переменная сесии в шаблоне меняется уже после как данные вьюхи обработаны. Поэтому решил переменную менять аяксом, а потом перезагружать принудительно страницу. Получается что фильтр будет можно использовать для любых страниц и вьюх - помоему очень неплохо.
Чето все тоже самое получается. Еще нюанс, может в нем загвостка - этод код находится в отдельном файле, который вызывается аяксом, чтобы в файле выполнялись функции друпала я вначале прописал
Вроди бы наше решение, конечно не самое правильное но рабочее. Подредактировал модуль Ulogin, файл ulogin.module В нем после
db_query("INSERT INTO {ulogin_identity} (uid, network, ulogin_uid, data) VALUES (%d, '%s', '%s', '%s')",
$user->uid, $data['network'], $data['uid'], serialize($data)); Дописал
// - Автоматическое присвоение роли (посетитель).
db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, 6)",
$user->uid); Ну и при удалении
Всем спасибо за участие, так как сайт будет ставится на другой хостинг то проблема временно отпадает. По результатам отпишусь. Может кому будет полезно.
Немного поковырял код модуля, есть подозрение что не работает
$data = drupal_http_request('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);
Проблема в том что авторизации то нет. Это и есть основная проблема. С остальным я думаю можно разобраться потом. Самое главное локально на денвере все прекрасно работает, а ставлю на хостинг - все авторизация соцсетей не работает. Вот тут и вопрос или хостинг виной или может быть права на какую то папку поставить нада.
Кнопки есть, нажимаешь - появляется дополнительное окно (может запросить дополнительные данные - взависимости от соцсети) дополнительное окно закрывается, потом спустя какое то время сайт редиректит на ulogin?destination=node - а сама страница пишет
У вас нет доступа к этой странице.
duozersk - Спасибо, вещь очень полезная и нужная. Скачивал именно от туда ( https://drupal.org/project/ulogin). Единственный вопрос - правильно ли я понял, модуль в любом случае использует сервис ulogin.ru (он на нем основан). При использовании модуля как-то регистрироваться, брать ключь на ulogin.ru не нужно?
Так это все понятно права выставлял. Тут еще нашел на сайте http://ulogin.ru/rules.html
Пользовательское соглашение.
2.1. Для приобретения доступа к Продуктам нужно пройти регистрацию в согласии с установленной формой и получить API-ключ. Компания оставляет за собой право по личному усмотрению отказывать в использовании Продуктов, не объясняя причин.
Вот и задумался, может когда сайт стал на реальный домен оно и не работает так как нет ключа?
Есть и на ulogin и на realname - ща пытаюсь удалить еще realname,ulogin а потом по очереди все наново поставить.
Стоп - права это всмысле? (типа лицензии или всмысле настроек прав доступа анонимных пользователей?)
решил ее тем, что в template.php в самом начале были какие то странные символы, и увидел я их только когда открыл встроенным редактором на хостинге, ни локально на пк, ни через ssh эти символы видны не были.
Встречался с этими символами - это когда текстовый файл в формате utf-8 матка BOM - метку убираем - символы пропадают.
Проблема с сесиями
Все проблема решена.
Проблему с сессиями во внешних скриптах можно просто решить почитав здесь http://www.drupal.ru/node/64658
А ларчик то просто открывался :).
Проблема с сесиями
Именно с данные как разобрать, тоесть если было $_SESSION[a]=5; то как из БД вытянуть эту а.
Ну а вообще сильно интересует как внешним файлом который грузится аяксом увидеть авторизован ли пользователь.
define('DRUPAL_ROOT', $_SERVER['DOCUMENT_ROOT']);
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
require_once DRUPAL_ROOT . '/includes/common.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
$user->uid // это не видит авторизованного пользователя.
Проблема с сесиями
Частично разобрался - сессии в Друпале хранятся в БД.
Может кто даст ссылку чтобы посмотреть как правильно обработать данные таблицы sessions, буду очень признателен.
Фильтрование представления
Да вьюшка в блоке, но обошел это так - Contextual filters назначил как Содержимое: Has taxonomy term ID
А в настройках выбрал Provide default value = php код и туда вставил:
session_start();
if (isset($_SESSION['flt'])) {return $_SESSION['flt']; } else {return 'all';}
Единственное переменная сесии в шаблоне меняется уже после как данные вьюхи обработаны. Поэтому решил переменную менять аяксом, а потом перезагружать принудительно страницу. Получается что фильтр будет можно использовать для любых страниц и вьюх - помоему очень неплохо.
Фильтрование представления
Нашел что искал вот здесь.
А вобще по фильтрам очень мало материала, может кто разбирается сделал бы толковый пост, думаю многие были благодарны.
Програмное создание ноды в Drupal 7
Всем спасибо за участие. Проблема решена - все работает при таком подходе:
$node->body['und'][0]['value']
Програмное создание ноды в Drupal 7
Вроди заработало когда вставка боди имеет вид.
$node->body['und'][0]['value'] = ......
а вот
$node->body['ru'][0]['value'] - не работает.
Может кто подскажет отчего такое может быть?
Програмное создание ноды в Drupal 7
Чето все тоже самое получается. Еще нюанс, может в нем загвостка - этод код находится в отдельном файле, который вызывается аяксом, чтобы в файле выполнялись функции друпала я вначале прописал
define('DRUPAL_ROOT', $_SERVER['DOCUMENT_ROOT']);
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
а потом уж
$node = new stdClass();
$node->type = 'zayavka';
Програмное создание ноды в Drupal 7
Пробовал, тоже самое.
Даже делал так..
$node->body[$node->language][0]['value'] = $details_add;
$node->body[$node->language][0]['summary'] = text_summary($details_add); // превью
$node->body[$node->language][0]['format'] = 'filtered_html'; // тип текста
Назначение роли при регистрации через Ulogin
А как правильней было бы?
Назначение роли при регистрации через Ulogin
Вроди бы наше решение, конечно не самое правильное но рабочее. Подредактировал модуль Ulogin, файл ulogin.module
В нем после
db_query("INSERT INTO {ulogin_identity} (uid, network, ulogin_uid, data) VALUES (%d, '%s', '%s', '%s')",
$user->uid, $data['network'], $data['uid'], serialize($data));
Дописал
// - Автоматическое присвоение роли (посетитель).
db_query("INSERT INTO {users_roles} (uid, rid) VALUES (%d, 6)",
$user->uid);
Ну и при удалении
Как включить коментирование ноды
Спасибо, помогло.
Не работает авторизация Ulogin
Поставил на другой хостинг, все заработало как часики.
Не работает авторизация Ulogin
Всем спасибо за участие, так как сайт будет ставится на другой хостинг то проблема временно отпадает. По результатам отпишусь. Может кому будет полезно.
Особая благодарность duozersk.
Не работает авторизация Ulogin
Немного полазив по интернету вычитал:
Модуль использует функцию drupal_http_request - Функция работает через сокеты. Ваш PHP, судя по всему, не поддерживает транспорт по SSL.
Всетаки получается модуль не работает из-за хостинга. Точнее из-за конфигурации PHP на хостинге?
Не работает авторизация Ulogin
Немного поковырял код модуля, есть подозрение что не работает
$data = drupal_http_request('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);
Тоесть функция drupal_http_request
Не работает авторизация Ulogin
3 ошибки фиксируются
//=========================================================
Тип ulogin
Дата Среда, Август 14, 2013 - 13:58
Пользователь Гость
Местоположение http://2.sarios.ru/ulogin?destination=node
Источник отсылки http://ulogin.ru/http.html?redirect_uri=http%3A%2F%2F2.sarios.ru%2Fulogi.........
Сообщение stdClass Object (
Не работает авторизация Ulogin
Проблема в том что авторизации то нет. Это и есть основная проблема. С остальным я думаю можно разобраться потом. Самое главное локально на денвере все прекрасно работает, а ставлю на хостинг - все авторизация соцсетей не работает. Вот тут и вопрос или хостинг виной или может быть права на какую то папку поставить нада.
Не работает авторизация Ulogin
Кнопки есть, нажимаешь - появляется дополнительное окно (может запросить дополнительные данные - взависимости от соцсети) дополнительное окно закрывается, потом спустя какое то время сайт редиректит на ulogin?destination=node - а сама страница пишет
У вас нет доступа к этой странице.
попробовать можно тут http://2.sarios.ru/
Не работает авторизация Ulogin
Поставил чистый drupal + realname + ulogin = та же самая проблема. Подозрения на хостинг. Какие может могут быть подводные камни с хостингом?
Не работает авторизация Ulogin
duozersk - Спасибо, вещь очень полезная и нужная. Скачивал именно от туда ( https://drupal.org/project/ulogin). Единственный вопрос - правильно ли я понял, модуль в любом случае использует сервис ulogin.ru (он на нем основан). При использовании модуля как-то регистрироваться, брать ключь на ulogin.ru не нужно?
Не работает авторизация Ulogin
А разве модуль ulogin - не идет через сервис ulogin.ru? (это не их продукт?)
Не работает авторизация Ulogin
Так это все понятно права выставлял. Тут еще нашел на сайте http://ulogin.ru/rules.html
Пользовательское соглашение.
2.1. Для приобретения доступа к Продуктам нужно пройти регистрацию в согласии с установленной формой и получить API-ключ. Компания оставляет за собой право по личному усмотрению отказывать в использовании Продуктов, не объясняя причин.
Вот и задумался, может когда сайт стал на реальный домен оно и не работает так как нет ключа?
Не работает авторизация Ulogin
Есть и на ulogin и на realname - ща пытаюсь удалить еще realname,ulogin а потом по очереди все наново поставить.
Стоп - права это всмысле? (типа лицензии или всмысле настроек прав доступа анонимных пользователей?)
Ошибка "node?destination=node" при входе на сайт. Как избавиться?
Встречался с этими символами - это когда текстовый файл в формате utf-8 матка BOM - метку убираем - символы пропадают.