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

Замена стандартных картинок в статусе 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']);

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

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

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

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

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

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

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

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

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

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

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

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