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

Замена стандартных картинок в статусе ICQ


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

Здравствуйте ;)

 

Вот как то сидел и решил поменять в статусе ICQ картинки на свои, со знакомым своим на php накодили функцию которая всё делает, осталось только в нужное место запихнуть эту функцию в форум, ток как это сделать я фиг знаю, нужен знающий в php и ipb человек :) Если кому интересна моя идея, отпишитесь, или в личку как с вами связаться, вместе доработаем эту модификацию :D

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

Имеется в виду отображение реального статуса контакта (оффлайн/онлайн)?

Если да, то такой скрипт давно написал, и картинки используются мои. =)

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

2 zvr

Вот это запрос статуса аськи: http://status.icq.com/online.gif?icq=413439481&img=5

результатом запроса является одна из 3х картинок с адресоми:

http://status.icq.com/5/online0.gif

http://status.icq.com/5/online1.gif

http://status.icq.com/5/online2.gif

 

их никак не заменить простым способом :D вот у меня и есть скрипт который определяет что является результатом запроса и заменяет картинку статуса на свою или на простой текст!

 

2 h8)u

Да да, ты правильно подумал. Только я сам хочу его доделать ;) Уже отозвался один человек который мне поможет :) Так что думаю скоро будет готово :)

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

Мод: Замена картинок в статусе ICQ

Совместимость: 2.1.x

Описание: Замена стандартных картинок в статусе ICQ в мини профиле на текст.

 

Установка:

 

sources/action_public/topics.php

 

Найти:

	/*-------------------------------------------------------------------------*/
// Parse post
/*-------------------------------------------------------------------------*/

function parse_row( $row = array() )
{

 

Добавить перед:

	/*-------------------------------------------------------------------------*/
// Status ICQ (Powered by EDG_aka_Dima feat. Sannis)
/*-------------------------------------------------------------------------*/


function make_icq_text($number) {

  		$url = "http://status.icq.com/online.gif?icq={$number}&img=5";

  		$ch = curl_init();

 	curl_setopt($ch, CURLOPT_URL, $url);
 	curl_setopt($ch, CURLOPT_HEADER, 0);
 	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

 	$content = curl_exec($ch);
 	curl_close($ch);

 	if(strstr($content,'online0.gif'))
		 return "<font color=red>offline</font>";
 	elseif(strstr($content,'online1.gif'))
	   return "<font color=green>online</font>";
 	elseif(strstr($content,'online2.gif'))
		 return "<font color=#666666>unknown</font>";

 	return "<font color=#666666>unknown</font>";
}

 

 

Найти:

		return array( 'row' => $row, 'poster' => $poster );

 

Добавить перед:

		$poster['icq_text'] = $this->make_icq_text($poster['icq_number']);

 

 

Админка --> ВНЕШНИЙ ВИД --> стиль --> skin_topic (Просмотр темы) --> RenderRow

 

Найти:

{$author['member_number']}<br />

 

Добавить после:

<if="author['icq_number']">ICQ: {$author['icq_number']} {$author['icq_text']}<br /></if>

 

 

Мод совсем сырой, надеюсь доработать его как следует и добавить разные настройки :D

 

Выражаю благодарность Sannis за помощь ;)

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

Dmitrich, ага, теперь понятно))

 

Еще вопрос. У меня стоит мод индикации онлайн ICQ статуса (картинки меня устраивают), так вот, некоторые люди по привычке, как в квипе, пишут номера аськи в профайле через тире. примерно 111-223-444, из-за этого отображение корректно не работает.

 

Как правильно устроить в этом случае удаление тире? Думаю всем это тоже будет полезно

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

Если что, то там гдето в коде идёт проверка на валидность номера, иначе ошибку пишет. Собственно надо её найти и перед проверкой сделать замену...
Ссылка на комментарий
Поделиться на других сайтах

Да можно просто ф-цию сделать с этой строкой и всё :D

 

Наподобие той инструкции ввреху вместо большого кода пишешь:

function tiredel($number) {
$number = str_replace("-","",$number);

 

Пернед строкой:

return array( 'row' => $row, 'poster' => $poster );

 

пишешь

$poster['icq_number'] = $this->tiredel($poster['icq_number']);

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

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

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

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

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

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

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

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

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

Зарузка...
×
×
  • Создать...

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

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