Перейти к содержанию

soka

Актив
  • Постов

    142
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2

Весь контент soka

  1. http://ipbskins.ru/forum/topic11842.html/page__view__findpost__p__90058 Нужно отключить метод внешний авторизации
  2. Azazel, 1. Мне показалось что до вас плохо доходит. Впрочем не показалось. 2. Сейчас я скопипастю левую цитату и скажу что это от разработчика. И пох что мне говорят будто это не он, и пох что от другого ника, и в контактных данных указанно совсем другое. Он же может писать под разными никами и я точно знаю что он. 3. Видимо имеет, раз ответ неправильный и им и себя и других вводите в заблуждения. Dows вам правильно ответил в этой теме. 4. Научитесь читать и тогда не придется посылать людей из-за своего невежества.
  3. Нужно обновить плагин Post Author Geolocation. Автор по этому багу недавно выпустил обновление.
  4. $id = \IPS\Request::i()->id только надо учитывать что этот плагин "php-код" должен отработать только на странице пользователя, иначе \IPS\Request::i()->id может имеет другое значение. Если это плагин класса IPS\core\modules\front\members\profile то там уже загружен пользователь в $this->member
  5. Вам же сказали зачем, нахрена переспрашивать? Имя разработчика есть в название этой темы - siv. Имя также есть в плагине. Там же находятся и его адрес. А теперь скажите, где ваше сообщение от разработчика если отвечал вообще другой человек? Научитесь читать описания.
  6. Не вижу никаких жалоб ipbskins.ru/forum/topic14879.html
  7. Затем, что этот ответ не от разработчика этого плагина. Прежде чем приводить ответы "разрабочтиков" надо сначала посмотреть в описание хука.
  8. Откройте plugin information и посмотрите кто является разработчиком этого плагина.
  9. В предыдущем плагине пропустил один баг, прошу прощения. Только сейчас заметил. WoW External Auth.xml
  10. Топик стартер получил ответ по существу - обратится к автору хука ибо здесь такой функции нету, нежели предлагать ковыряться в каких-то местах которых здесь нету. Лучших вариантов я пока не увидел. Берегите пуканы.
  11. Более того, даже этого не требуется. Будут выполнятся все доступные методы авторизации пока авторизация не пройдет успешно. Для пущей синхронизации, после авторизации можно проверить если пароль пользователя не сменился в противном случае его обновить. На предыдущей странице разве не видно? То-то я здесь так много талдычу. Пароль в вп хешируется библиотекой phpass (так раньше было), по умолчанию по алгоритму blow fish.
  12. Насколько я знаю несоответствие количество аргументов у перегружаемых методов вызывает ошибки типа trict Standards Declaration of should be compatible with . Лучше использовать глобальные переменные или свойство класса.
  13. Объясните мне кто нибудь, в чем сакральный смысл качать хук с форума автора и приходить на чужом форуме спрашивать его поддержку? Пусть даже если и скачен с другого форума, в хуке есть адрес и никнейма автора, у него и спрашивайте.
  14. Во всех этих таблицах используется FULLTEXT KEY, который до какой-то версии mysql в innodb небыло.
  15. Вообще-то требует, но проверяется он во всех доступных методов авторизации, в том числе и во внешней бд.
  16. Блин, вроде программист а приходится на пальцах объяснять. Столько слов, что в итоге и сам запутался. Речь не о том, сохраняется пароль или нет, это без разницы, проблема с сменой паролем на удаленном сайте решается перемещением метода внешней авторизации вверх, чтобы он первый отработал или вообще отключением внутреннего. Не хотите сохранять, не храните (но я бы все таки в таком случае вызвал дефолтный метод _createMember а потом удалил пароль, все таки плахой тон перегружать методы не вызывая родительский если вдруг какому нибудь другому хуку потребуется его перегрузить). А речь о том, что будет если какой нидубь апи интерфейс вызовет смену пароля? Например, смена пароля какому нибудь пользователю из АЦ (хз если ли такая функция в четверке, но в api это точно есть)? Мне кажется \IPS\Member::loggedIn()->name вернет не совсем соответствующие данные. Т.е. если нет значения у переменной $_POST['auth'], будет использоваться имя текущего пользователя если он есть, и даже если вы вернете нулл пароль все равно сбросится, потому что в changePassword нет никакой проверки. Проще уже не знаю как объяснить, извините. if( !empty( $_POST['auth'] ) ) { $username = $_POST['auth']; }else if( !empty( \IPS\Member::loggedIn()->name ) ) { $username = \IPS\Member::loggedIn()->name; } else { return null; } С форума будет работать. Проблемы начнутся если администратор захочет чужому пользователю сменить пароль. И речь не о том, сохраняется он на форуме или нет, а в том, что в коде используется имя текущего пользователя.
  17. Не понимаю при чем здесь моментальность, аккаунт на форуме регистрируется моментально, либо не регистрируется совсем если он спамер. При том вы его еще регистрируете в удаленной базе данных перед регистрацией на форуме, которая еще может не произойти. Это тоже ошибка в логике. А речь о том, что у Вас лишается возмодность управлением паролем с форума. Только на удаленном сайте. IPS так делают потому, что они используют метод createOrUpdateAccount который также используется в авторизации с соцсетях а там пароля нету. Ну и тут либо также решили оставить, либо как обычно загавнакодили, как не редко у них это бывает. Но по хорошему пароль нужно сохранить, при том остается возможность управлением паролем с форума тоже. Я вижу здесь только одно препятствие, если пользователь сменит пароль на сайте. В этом случае, если форум с внутреннего метода авторизации не перейдет на внешней и выдаст сообщение об ошибке что пароль не верен, просто поднять внешней метод выше чтобы он отработал первым и после авторизации проверять пароль и в случае необходимости его обновлять. Серьезно? Хм, интересно а как она работает если пароль пустой... Неужели IPS не требует старый пароль? Во всяком случае с АЦ могут быть проблемы по вышеописаному багу.
  18. У вас функция смены пароля будет использовать имя текущего пользователя, еще раз обратите внимание, если администратор попытается сменить этому пользователю пароль в АЦ и при этом запустится changePassword он поломает ему пароль в удаленной базе. Это потенциальный баг. А наличия паролей в двух базах никоем образом не мешает "прямому взаймодействию". Если взамодействие жизнено важно нужно смотреть в другую сторону, а именно в memberSync.
  19. Удаленная база это такое, сегодня она есть завтра ее нету. Паролю лучше быть, имхо. Да и сможет ли пользователь сменить себе пароль на форуме если его нету? По моему нет. Только на удаленной базе. А если администратора в АЦ форума сменит пароль пользователя, тогда в username хеша будет имя текущего авторизированого пользователя.
  20. greykoo, это лучше заменить if( !empty( $_POST['auth'] ) ) { $username = $_POST['auth']; }else if( !empty( \IPS\Member::loggedIn()->name ) ) { $username = \IPS\Member::loggedIn()->name; } else { return null; } Иначе, если администратор сменит пароль пользователю из АЦ в получим в качестве username имя администратора. Да и при регистрации под вопросом, хотя не смотрел.
×
×
  • Создать...