Плагин smfuser Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
projects:portal:плагин_smfuser [2010/10/18 17:10]
projects:portal:плагин_smfuser [2012/03/13 18:16] (текущий)
Строка 3: Строка 3:
 Этот плагин позволяет добавлять ссылки на профили пользователей на форуме с помощью конструкции **%%[[user>​username]]%%**. Этот плагин позволяет добавлять ссылки на профили пользователей на форуме с помощью конструкции **%%[[user>​username]]%%**.
  
-Пока что много инфы тут:+Особенности:
  
-[[site:​smfuser-plugin|Плагин ​smfuser]]+  * Разные иконки для разных полов пользователя. 
 +  * Если пользователь заполнил хоть какую-нибудь информацию в профиле,​ то при наведении мышки на ссылку на его профиль появится всплывающее окошко. В нём отображается имя пользователя,​ его аватар,​ подпись под аватаром и местоположение. 
 +  * При указании несуществующего пользователя его имя будет выведено простым текстом. 
 +  * Можно с помощью конструкции ​ **%%[[user>​username|text]]%%** вместо имени пользователя выводить в качестве ссылки произвольный текст. 
 +  * Никакое форматирование внутри конструкции не поддерживается,​ включая вставку картинок как ссылок на профили пользователей. 
 +  * Плагин ​содержит [[http://​www.dokuwiki.org/​devel:​helper_plugins|helper]] класс ''​smfuser_main'',​ который может быть использован для получения данных о пользователе и рендеринга ссылки на профиль в любом месте кода DokuWiki (в другом плагине,​ шаблоне и т.д.). Пример использования см. ниже. 
 + 
 +<​note>​Скачать пока нельзя поскольку идёт активная доработка до нормального состояния.</​note> ​
  
 ===== Дополнительные возможности ===== ===== Дополнительные возможности =====
  
-Если вы хотите,​ чтобы везде, где DokuWiki выводит имена пользователей (например,​ на страницах с историей изменений),​ вместо них отображалась бы ссылка на профиль соответствующего пользователя,​ то измените файл **inc/​common.php** следующим образом:​+Если вы хотите,​ чтобы везде, где DokuWiki выводит имена пользователей (например,​ на страницах с историей изменений),​ вместо них ​при наличии плагина ''​smfuser'' ​отображалась бы ссылка на профиль соответствующего пользователя,​ то измените файл **inc/​common.php** следующим образом:​
  
 Где-то в середине функции //​editorinfo//​ замените 2 строчки Где-то в середине функции //​editorinfo//​ замените 2 строчки
Строка 30: Строка 37:
 </​code>​ </​code>​
  
-===== Пример =====+Кроме того, можно переопределить стандартную функцию //​tpl_userinfo()//,​ которая используется в шаблонах для вывода информации о текущем пользователе,​ добавив в неё ссылку на профиль пользователя. Для этого необходимо добавить в используемый вами шаблон функцию следующего содержания:​ 
 + 
 +<code php> 
 +/* 
 + * Замена стандартной функции tpl_userinfo() на функцию,​ показывающую ссылку на профиль пользователя в SMF 
 +*/ 
 +function tpl_smfuserinfo() { 
 +  global $lang; 
 +  global $INFO; 
 +   
 +  if (!plugin_isdisabled('​smfuser'​)) { 
 +    $smfuser ​=& plugin_load('​helper',​ '​smfuser_main'​);​ 
 +    if (isset($_SERVER['​REMOTE_USER'​])) { 
 +      print $lang['​loggedinas'​].':​ '​.$smfuser->​renderProfileLink($smfuser->​getUserInfo($INFO['​userinfo'​]['​name'​]),​ '​top'​);​ 
 +      return true; 
 +    } 
 +  } else { 
 +    return tpl_userinfo();​ 
 +  } 
 +  return false; 
 +
 +</​code>​ 
 + 
 +После чего заменить в шаблоне вызов //​tpl_userinfo()//​ вызовом добавленной функции //​tpl_smfuserinfo()//​. 
 + 
 +===== Альтернативные иконки ===== 
 + 
 +От пользователя [[user>​KЕIII]]:​ 
 + 
 +пример иконки male {{http://​static.itmages.ru/​i/​10/​1017/​h_1287310087_4665d4068b.png |male}} {{http://​static.itmages.ru/​i/​10/​1017/​h_1287313610_f9ad581947.png |male}} 
 + 
 +пример иконки female {{http://​static.itmages.ru/​i/​10/​1017/​h_1287310087_c9306d5d4e.png |female}} {{http://​static.itmages.ru/​i/​10/​1017/​h_1287313610_7ff1fa087d.png |female}} 
 + 
 +пример иконки unknown {{http://​static.itmages.ru/​i/​10/​1017/​h_1287310087_00a9029b38.png |unknown}} {{http://​static.itmages.ru/​i/​10/​1017/​h_1287312692_436a20150b.png |unknown}} 
 + 
 +===== Обсуждение и предложения ===== 
 + 
 +Если вам есть что сказать по поводу этого плагина,​ то вы можете сделать это в [[http://​forum.ubuntu.ru/​index.php?​topic=118674.0|соответствующей теме форума]] или написав его [[user>​Malamut|автору]]. 
 + 
 +===== Что надо доделать ===== 
 + 
 +  * Попытаться сделать так, что когда popup отображается с краю экрана он бы не вылезал за границы. Для этого требуется JS и если кто готов помочь с реализацией - велкам. 
 + 
 +===== Пример использования ​=====
  
-Тестирование:​ [[user>​Malamut]] ​ просто,​ [[user>​Malamut|так]] вот с текстом,​ а вот [[user>​Agafonov]] или например [[user>​kwah]] и [[user>​BasicXP]]. В целом работает,​ есть только мелкие недочёты. У [[user>newvidimka|пользователей]],​ которые вообще ничего не заполнили в профиле,​ никакого popup не будет. А так даже мелкие [[user>​cargo|аватары]] нормально отображаются. Стандартные аватары SMF - [[user>​stmc|тоже]]. Анимированный gif - [[user>​KЕIII]]+Тестирование:​ [[user>​Malamut]] ​ просто,​ [[user>​Malamut|так]] вот с текстом,​ а вот [[user>​Agafonov]] или например [[user>​kwah]] и [[user>​BasicXP]]. В целом работает,​ есть только мелкие недочёты. У [[user>Zeliboba2|пользователей]],​ которые вообще ничего не заполнили в профиле,​ никакого popup не будет. А так даже мелкие [[user>​cargo|аватары]] нормально отображаются. Стандартные аватары SMF - [[user>​stmc|тоже]]
  
 Ах да, среди нас таки есть [[user>​Alie Alexandross|девушки]] ;-). Ах да, среди нас таки есть [[user>​Alie Alexandross|девушки]] ;-).