Перейти к контенту

Вставка имени в форму ответа


Uzaren

Рекомендуемые сообщения

overherz

Можешь нормально прикрепить к вот этому

$poster['members_display_name'] = "<a href=\"java script:ins('".str_replace( array(" ", "'"),
array(" ", "'"),
$poster['members_display_name'] )."')\">{$this->ipsclass->cache['group_cache'][ $poster['mgroup'] ]['prefix']}{$poster['members_display_name']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}</a>";

 

то что сказал тоод:

$poster['members_display_name']=str_replace(" ", " ", $poster['name']);
$poster['members_display_name']="<a onmouseover=\"copyQ('{$poster['name']}','{$quote_info}', '{$row['pid']}');this.style.cursor='hand';\" onClick=\"java script:pasteQ();\" title=\"{$ibforums->lang['tt_reply_to_post']}\">{$this->ipsclass->cache['group_cache'][ $poster['mgroup'] ]['prefix']}{$poster['members_display_name']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}</a>";

.

Потому-что вариант тоода не работает.

Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 108
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Так как сделать ник цветным?

 

Я имею в виду,чтобы ник над аватаром было того цвета,какого цвета группа пользователя.

Ссылка на комментарий
Поделиться на других сайтах

Скоро я мод собирать закончу и будет всё понятно...

Если тебя интересует только форматирование ника и только в темах то с тебя хватит вот этого:

Открыть: ./sources/action_public/topics.php

Найти:
*******************************************************************************
$poster['members_display_name'] = "<a href='{$this->base_url}showuser={$poster['id']}'>{$poster['members_display_name']}</a>";
*******************************************************************************

Заменить на:
*******************************************************************************
$poster['members_display_name'] )."')\">{$this->ipsclass->cache['group_cache'][ $poster['mgroup'] ]['prefix']}{$poster['members_display_name']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}</a>";
*******************************************************************************

 

А если ты хочешь его ещё и вставлять при нажатии то:

1) Открыть: ./sources/action_public/topics.php

Найти:
*******************************************************************************
$poster['members_display_name'] = "<a href='{$this->base_url}showuser={$poster['id']}'>{$poster['members_display_name']}</a>";
*******************************************************************************

Заменить на:
*******************************************************************************
$poster['members_display_name'] = "<a href=\"java script:ins('".str_replace( array(" ", "'"),
array(" ", "'"),
$poster['members_display_name'] )."')\">{$this->ipsclass->cache['group_cache'][ $poster['mgroup'] ]['prefix']}{$poster['members_display_name']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}</a>";
*******************************************************************************

2) Открыть: ./jscripts/ipb_topic.js 

Добавить в самом конце:
*******************************************************************************
function ins(name)
{
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+"[/b]"+" \n";
}
*******************************************************************************

Ссылка на комментарий
Поделиться на других сайтах

не знаю но я проверял на трёх форумах (IPB 2.1.3, 2.1.4 и 2.1.5) и всё работало он я проверю ещё раз на чистом форуме!
Ссылка на комментарий
Поделиться на других сайтах

mrMad-Cat

Твой код сработал,спасибо.

 

А что значит 2 пункт,это что вставление ника при нажатиии цветным цветом или просто вставление?Если просто вставление,то это у меня уже сделано.

Ссылка на комментарий
Поделиться на других сайтах

Вставка роскрашеного ника - лол!!! Нет, такого ещё нету... :D Просто вставка.

ТООД может я ошибся... 5 раз подряд... ;)

 

ТООД: Проверил 6 раз и тоже самое. правда у меня стоит росширеная быстрая форма ответа. Может в этом проблема. Но тогда надо всёравно переделать - вевдь вариант овехерца работает и такой форме. Вот если бы к нему прикрепить быструю цытату...

Ссылка на комментарий
Поделиться на других сайтах

Есть. Внимательней тему читайте: Вставка имени в форму ответа

Работате прекрасно.

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...

Проверено на 2.1.5.

Никраскрашивается и в переди ставится 2

 

///В файле ipb_topic.js в самом конце добавить

 

function ins(name)

{

if (document.REPLIER.Post)

{

var input=document.REPLIER.Post;

input.value=input.value+"[b*]2"+name+"[/color*][/b*]"+" \n";

}

}

 

Примечание: без * и после color пишем =#цвет по вашему выбору

 

Результат

2Имя пользователя

Ссылка на комментарий
Поделиться на других сайтах

После 2 лутше пробел ставить, а то страшновато выглядит. Стили туда можно любые добавлять, хоть цвета, хоть размеры и стили шрифта, даже картинки стразу...

 

Его бы соеденить с модом быстрой цытати и я бы вупустил свой сборный мод для ников...

Ссылка на комментарий
Поделиться на других сайтах

Открыть: ./sources/action_public/topics.php

 

Найти:

*******************************************************************************

$poster['members_display_name'] = "<a href='{$this->base_url}showuser={$poster['id']}'>{$poster['members_display_name']}</a>";

*******************************************************************************

 

Заменить на:

*******************************************************************************

$poster['members_display_name'] )."')\">{$this->ipsclass->cache['group_cache'][ $poster['mgroup'] ]['prefix']}{$poster['members_display_name']}{$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']}</a>";

*******************************************************************************

не работает у меня на 2.1.6, после замены белая страница ... и все!

Как сделать чтоб заработало!?

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

jscripts/ipb_topic.js

Добавить в конце:

function pasteNick(nick){
object = document.getElementById( 'fastreplyarea' );
if( !document.getElementById( 'qr_open' ).style )
{
	openform = false;
}else{
	if( document.getElementById( 'qr_open' ).style.display == "none")
	{
	openform = false;
	}
	else
	{
	openform = true;
	}
}
if(!openform){
	ShowHide('qr_open', 'qr_closed');
}	
object.focus();
object.value += '[b]'+nick+'[/b] ';
}

 

Внешний вид->Стиль->Topic View->RenderRow

Найти:

{$post['report_link']}<a href="java script:scroll(0,0);"><{P_UP}></a>

 

Добавить в начале:

<a href="java script:pasteNick('{$author['name']}')" alt='Цитировать ник'><{QN}></a>

 

Создать макрос\картинку на переменную QN

 

ВНИМАНИЕ! все "java script" в этом коде считать как "javascript"

Ссылка на комментарий
Поделиться на других сайтах

а как еоздать этот макрос?

 

с макросом всё понятно, а вот белая страница?

Где касяк?

Ссылка на комментарий
Поделиться на других сайтах

В v2.1.5 никакого косяка нет, и белая страница из за этого (примитивного) мода быть думаю не может, ибо php не участвует. Ищи трабл в другом месте, видимо ты что-то зацепил...

 

Еще проверь изменил ли ты все "java script" в из этого кода, на "javascript"!!! Возможно в этом проблема! Дело в том что этот форум разбивает слитое слово javascript :D

Ссылка на комментарий
Поделиться на других сайтах

Итак, наилучший вариант (Не закончен)(смысл ввести новую переменную, members_quote, которая будет с кодом вставки)

В topics.php после

$poster['members_display_name'] = "<a href='{$this->base_url}showuser={$poster['id']}'>{$poster['members_display_name']}</a>";

Вставляем

$poster['members_quote'] = "<a href=\"java script:ins('".str_replace( array(" ", "'"),
																			   array("& nbsp;", "& amp;#039;"),
																			   $poster['members_display_name'] )."')\">{$this->ipsclass->lang['members_quote']}</a>";

(пробелы после & и в слове javasсript убрать)

Потом в /cache/lang_cache/ваши_языковые_папки/lang_topic.php

$lang['members_quote'] = "Цитировать";

И соответственно в ipb_topic.js

function ins(name)
{
if (document.REPLIER.Post)
{ 
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+"[/b]"+" \n";
}
}

 

И в RenderRow {$author['members_quote']}<br /> над/под аватаром

Ссылка на комментарий
Поделиться на других сайтах

  • 4 недели спустя...

Ссылку на профиль под аватаром можно сделать намного проще..

 

Достаточно в skin_topic (Просмотр темы) - Renderrow найти

$author['avatar']}<br /><br />
			{$author['title']}<br />
			{$author['member_rank_img']}<br />
			{$author['member_group']}<br />
			{$author['member_posts']}<br />
			{$author['member_joined']}<br />
			{$author['member_location']}
			{$author['member_number']}<br />

и вставить куда Вам необходимо следующее:

<a href="{ipb.script_url}showuser={$author['id']}"><b>Профиль</b></a><br>

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

Хороший мод... но можно лучше :D

... под IPB 2.1.6

 

в файле source/action_public/topics.php найти

$poster['members_display_name'] = "<a href='{$this->base_url}showuser={$poster['id']}'>{$poster['members_display_name']}</a>";

 

и заменить вот этим

$poster['members_display_name'] = "<a href=\"java script:ShowHide('qr_open','qr_closed');java script:ins('".str_replace( array(" ", "'"),array(" ", "'"),$poster['members_display_name'] )."');java script:MySetFocus(REPLIER.fastreplyarea)\">{$poster['members_display_name']}</a>";

 

затем открываем jscripts/ipb_topic.js и в самый конец файла копируем это

function ins(name)
{
if (document.REPLIER.Post)
{
var input=document.REPLIER.Post;
input.value=input.value+"[b]"+name+",[/b]"+" ";
}
}

function GetXY(obj)
{
var xleft = 0;
var xtop  = 0;
if (obj.offsetParent)
{
	while (obj.offsetParent)
	{
		xleft += obj.offsetLeft;
		xtop += obj.offsetTop;
		obj = obj.offsetParent;
	}
}
else if (obj.x)
{
	xleft += obj.x;
	xtop += obj.y;
}
return [xleft, xtop];
}
function MySetFocus(obj)
{
var tpos = GetXY(obj);
var X = tpos[0];
var Y = tpos[1];
window.scrollTo(X, Y);
obj.focus()
}

 

В итоге получим действия:

  1. открытие формы быстрого ответа
  2. вставку в нее выбранного ника
  3. перенос вних темы к форме быстрогоо ответа
  4. фокусировка курсора на форму быстрого ответа (рядом с ником)

Ссылка на комментарий
Поделиться на других сайтах

Набор функций для никнеймов.. Спасибо что знаете.

Только там нету фокусировки курсора и переноса в низ страницы. Я этого пренцыпиально не делал так как считаю это неудобным. А вод открытие формы ответа я добавлю наверно. Спасибо.

 

Нет, не добавлю. Так как если форма ответа открыта то она закрываеться. Гадо это както переделать. Я про java script:ShowHide('qr_open','qr_closed');

Ссылка на комментарий
Поделиться на других сайтах

Ну обычно форма быстрого ответа и есть закрытая :D

а вообще это исправить в коде даже чайник может...

просто методом тыка, в js убрать пару выражений и готово

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.