Да, хук вызывается... прищлось конечно с моей неопытностью в пхп и в Дрюпале в часности провозиться, но...
Мне удалось переделать под себя этот модуль username_check! В итоге я добился следующего функционала:
1) Юзер при регистрации может ввести имя, и нажать на кнопку ПРОВЕРИТЬ
при этом через несколько секунд он увидит ответ - правильное у него имя или нет
Стал копать глюбже - в core-модуль user
Нашел фрагмент:
<?php
/**
* Implementation of hook_user().
*/
function user_user($type, &$edit, &$user, $category = NULL) {
...
А можно чуть подробнее?
Я взялся перехачить простенький модуль username_check.module, но он используется только для проверки...
Я объявил в конфиге Дрюпала две базы - родную как default ну и внешнюю,
затем переписал sql-запрос на нужное мне поле, и поменял местами результаты true/false
Вот что получилось:
<?php
/**
* Main AJAX function: originality checking menu callback.
*/
function username_check_menu_isunique() {
$output = array();
Спасибо. Сейчас посмотрю.
Но похоже мне такой наворот не надо, у меня проще - есть таблица, в ней поле с логинами
Мне надо позволить регистрироваться только тем новым юзерам, которые есть в этой таблице.
Я навскидку два варианта вижу - хачить модуль юзерс, или хачить другой подходящий модуль.
Цели: (на основе анализа кому что надо определяем что должно быть сделано на ресурсе)
1. Накопление базы данных по разработчикам Дрюпал из Украины
2. Организация общения украинских разработчиков и мейнтейнеров по вопросам, специфичным для Украины (а это не только перевод)
3. Возможность заказчиков предлагать работу и разработчиков искать работу
Вот ещё какой глюк замечен:
При попытке редактирования титульной страницы моего сайта localost/title
в закладке Edit осуществляется редирект на
login-privateperson/6/0
которая мне отображает страничку моего профайла..
.On сб, 08/09/2007 - 13:52 andron13 says: ..Если ещё разным ролям приделать разные поля для заполнения, было бы вообще классно. У меня уже несколько раз просили автоматически делить новых пользователей. На стадии создания ака.
ВОТ!!! Вот это нужная фича! Кто-то знает как дальше сделать различные поля для регистрации?
Надо пользователю административно добавтить роль на некоторое время, затем автоматически лишить его этой роли.
Похоже штатными средствами не делается, надо писать новый модуль, в котором задавать свой hook_cron() http://api.drupal.org/api/function/hook_cron/5
Элементарно - нет прав доступа на изменение файла
Для группы, под которой работает веб-сервер, надо добавить права на запись в этот файл, иначе конфигурация не может сохраниться
Например надо сделать:
$ cd /var/www/html/drupal
$ sudo chgrp -R www-data *
$ sudo chmod -R g+wr *
Если это Вам непонятно то обратитесь к админу сайта
Да я вот посмотрел... кажется что на данный момент какого-либо API для таких задач в 5.2 нет.
Докручивать же вообще сторонним внешним скриптом и напрямую им залезать в таблицы мне видится как грубое решение.
Я надеялся что внутрях Дрю есть для этого заготовки...
С ходу - малость не то... т.к. задать действие на определённый период я там не могу.
Но возможно что надо копаться глубже... хотя задачка моя вроде как тривиальная
Регистрация для разных ролей
речь не просто о ПОЛЯХ профайла
а о группах полей, выделяемых юзеру в зависимости от роли
Т.е. rolesignup и дальше свой nodeprofile в зависимости от выбранной роли
drupal.org.ua
+1
Регистрация для разных ролей
его то и заиспользовал... хотя он примитивнее
Регистрация с проверкой в таблице другой БД? Сделали!
Да, хук вызывается... прищлось конечно с моей неопытностью в пхп и в Дрюпале в часности провозиться, но...
В итоге я добился следующего функционала:
Мне удалось переделать под себя этот модуль username_check!
1) Юзер при регистрации может ввести имя, и нажать на кнопку ПРОВЕРИТЬ
при этом через несколько секунд он увидит ответ - правильное у него имя или нет
Регистрация с проверкой в таблице другой БД? Сделали!
Сайт мой на Дрюпале, 5.*, а данные надо просто сверять с таблицей в удаленной БД на хосте совсем без Дрюпала
Регистрация с проверкой в таблице другой БД? Сделали!
Стал копать глюбже - в core-модуль user
Нашел фрагмент:
<?php
/**
* Implementation of hook_user().
*/
function user_user($type, &$edit, &$user, $category = NULL) {
...
if ($type == 'validate' && $category == 'account') {
return _user_edit_validate(arg(1), $edit);
}
...
?>
Регистрация с проверкой в таблице другой БД? Сделали!
Уже ближе и теплее... в мой перехаченый модуль я добавил такой код:
<?php
function username_check_user($op, &$edit, &$account, $category = NULL) {
if ($op == 'validate') {
Регистрация с проверкой в таблице другой БД? Сделали!
Спасибо, полезу копать...
Регистрация с проверкой в таблице другой БД? Сделали!
А можно чуть подробнее?
Я взялся перехачить простенький модуль username_check.module, но он используется только для проверки...
Я объявил в конфиге Дрюпала две базы - родную как default ну и внешнюю,
затем переписал sql-запрос на нужное мне поле, и поменял местами результаты true/false
Вот что получилось:
<?php
/**
* Main AJAX function: originality checking menu callback.
*/
function username_check_menu_isunique() {
$output = array();
Регистрация с проверкой в таблице другой БД? Сделали!
username_check.module - проще всего его переделать...
Импорт таблицы с удалённой БД
Может это задача для MySQL? ну как нибудь его средствами триггеров и хранимых процедур?
Посмотрел ссылку - немного не то, но по ходу пригодилось, спасибо за наводку!
Регистрация с проверкой в таблице другой БД? Сделали!
Спасибо. Сейчас посмотрю.
Но похоже мне такой наворот не надо, у меня проще - есть таблица, в ней поле с логинами
Мне надо позволить регистрироваться только тем новым юзерам, которые есть в этой таблице.
Я навскидку два варианта вижу - хачить модуль юзерс, или хачить другой подходящий модуль.
drupal.org.ua
Цели: (на основе анализа кому что надо определяем что должно быть сделано на ресурсе)
1. Накопление базы данных по разработчикам Дрюпал из Украины
2. Организация общения украинских разработчиков и мейнтейнеров по вопросам, специфичным для Украины (а это не только перевод)
3. Возможность заказчиков предлагать работу и разработчиков искать работу
drupal.org.ua
Такс... собственно сайта не видно пока...
Согласен с мнением ВитичЪ по поводу целей и задач, решаемых сайтом.
Слоган озвучте!
Apache MySQL to Linux
По моему Apache тут совсем ни при чём, как и операционка.
Главное соблюсти кодировку при экспортно-импортных операциях. UTF-8 рулит.
Title field label: * - как избавиться?
auto_nodetitle помогло
Перевод модуля Role Signup
http://drupal.ru/node/7713
Регистрация для разных ролей
Вот ещё какой глюк замечен:
При попытке редактирования титульной страницы моего сайта localost/title
в закладке Edit осуществляется редирект на
login-privateperson/6/0
которая мне отображает страничку моего профайла..
Перевод модуля Role Signup
.On сб, 08/09/2007 - 13:52 andron13 says: ..Если ещё разным ролям приделать разные поля для заполнения, было бы вообще классно. У меня уже несколько раз просили автоматически делить новых пользователей. На стадии создания ака.
ВОТ!!! Вот это нужная фича! Кто-то знает как дальше сделать различные поля для регистрации?
Халиф на час - как сделать?
Видно прийдётся "пилить гири"...
http://api.drupal.org/api/search/5/cron
Надо пользователю административно добавтить роль на некоторое время, затем автоматически лишить его этой роли.
Похоже штатными средствами не делается, надо писать новый модуль, в котором задавать свой hook_cron()
http://api.drupal.org/api/function/hook_cron/5
Workflow: пошаговое создание ноды
Попробовал модуль pageroute - не совсем подходит, ибо позволяет создавать последовательно несколько нод.
А хочется последовательно создать одну ноду.
Кто-то решал такую задачу готовыми модулями?
The Drupal installer requires write permissions to ./sites/default/settings.php during the installation process.
Элементарно - нет прав доступа на изменение файла
Для группы, под которой работает веб-сервер, надо добавить права на запись в этот файл, иначе конфигурация не может сохраниться
Например надо сделать:
$ cd /var/www/html/drupal
$ sudo chgrp -R www-data *
$ sudo chmod -R g+wr *
Если это Вам непонятно то обратитесь к админу сайта
Халиф на час - как сделать?
Вот надыбал CronPlus
http://drupal.org/node/130276
Посмотрим что за тулзовина такая...
Халиф на час - как сделать?
Да я вот посмотрел... кажется что на данный момент какого-либо API для таких задач в 5.2 нет.
Докручивать же вообще сторонним внешним скриптом и напрямую им залезать в таблицы мне видится как грубое решение.
Я надеялся что внутрях Дрю есть для этого заготовки...
Халиф на час - как сделать?
С ходу - малость не то... т.к. задать действие на определённый период я там не могу.
Но возможно что надо копаться глубже... хотя задачка моя вроде как тривиальная