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

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


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 убрать пару выражений и готово

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

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

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

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

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

Зарузка...

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

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

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