[2.3] Link-Avatar

rellek

relativ sensationell
Teammitglied
Name: Link-Avatar
Version: 1.0 Beta
Für wBB-Version: 2.3
Getestet mit: 2.3.1

Beschreibung: Dieser Hack ermöglicht es, dass man im Profil sein Avatar verlinken kann.
Achtung: Es wird nicht geprüft, ob das verlinkte Avatar den Größen-Richtlinien
entspricht!

Demo: -
Copyright: 2005 by rellek
Disclaimer: Dieser Hack darf nur vom Autoren (rellek) zum Download angeboten werden.
Support erfolgt nur an Ort und Stelle des Downloads, der vom Autoren angeboten
wurde. Versuche, Support via ICQ zu erlangen werden abgewürgt und bei Wieder-
holung mit dem IGNORE-Knopf belohnt. Support gibt es ausschließlich beim Autor.
Modifikation nur für Eigenbedarf, ansonsten vorher fragen.
Wichtig - bitte beachten! Infos zu den Beta-Hacks

---

Bekannte Fehler und andere Unverträglichkeiten: -

---

Was für die Final noch geplant ist: derzeit nichts
 

Anhänge

  • Avatar-Link-wBB23.zip
    4,4 KB · Aufrufe: 245

Deacon Frost

The Bl00d-G0d La Magra<br />(Boardberater)
Mahlzeit! :D

Also bevor ich das jetzt teste... Könntest Du das nich bitte noch einrichten, dass die Größe überprüft wird? Weil ansonsten kann man damit ja das ganze Board sprengen, wenn ich da son megagroßes Bild verlinke. 8o
 

rellek

relativ sensationell
Teammitglied
Das kann man nicht einbauen, weil es nicht möglich ist, die größe zu messen. Dazu müsste das avatar auf den Server geladen werden, geprüft werden, vom server gelöscht werden (ok, das ginge noch) - aber dann kann man ja das kleine bild trotzdem durch nen großes ersetzen.
 

NoiZ

Neuer Benutzer
Servus.

Ich hab das Teil mal ein bisschen ausgefeilt und bei mir funktioniert es jetzt einwandfrei.
Zwar ist das Ganze etwas serverlastig, aber besser als wenn es vor sich hin bugged ;)


Bei Interesse einfach mal in ICQ melden (162420162).




Steffen
 

rellek

relativ sensationell
Teammitglied
Was genau hast du geändert?

Was (bald (tm) :D) noch hinzu kommt, ist das Größenlimit mittels JavaScript...
 

NoiZ

Neuer Benutzer
Ich habe es so gemacht, dass erst einmal direkt beim ändern des Links im UserCP überprüft wird, ob die Maße, sowie der Filetype korrekt sind.
Da nun aber das Bild nach dem Eintrag geändert werden kann, musste ich die Überprüfung bei jedem Aufruf eines Linkavatars machen.

Die Filesize, fällt mir gerade ein, wird bei mir noch gar nicht überprüft. Das müsste ich noch reinmachen.



Steffen
 

rellek

relativ sensationell
Teammitglied
ich würde es aber nicht so machen wie du... Das liegt daran, dass das ständige Prüfen der Größe einen enormen Traffic und eine größere Server-Last verursacht, was spätestens bei größeren Boards nicht mehr tragbar ist.
 

NoiZ

Neuer Benutzer
Für mich persönlich kein Problem.
Ich hab unbegrenz Traffic. Aber eine andere Alternative wirds wohl leider nicht geben. Außer, dass man beim Eintragen des Links direkt das Avatar auf den Server läd (nicht zwischenläd) und es somit fest auf dem Server ist.



Steffen
 

rellek

relativ sensationell
Teammitglied
Original von NoiZ
Außer, dass man beim Eintragen des Links direkt das Avatar auf den Server läd (nicht zwischenläd) und es somit fest auf dem Server ist.
Dann braucht man ja den Hack nicht.....
 

rellek

relativ sensationell
Teammitglied
okay.

template: index:
look for:
Code:
if($avatar['avatarid']) {
 $avatarname="images/avatars/avatar-$avatar[avatarid].$avatar[avatarextension]";
 if($avatar['avatarextension']=="swf") eval ("\$user_avatar = \"".$tpl->get("avatar_flash")."\";");
 else eval ("\$user_avatar = \"".$tpl->get("avatar_image")."\";");
}

add after:
Code:
			if($wbbuserdata['avatarlink'] != "") {
				$linkavatar = $wbbuserdata['avatarlink'];
				eval("\$user_avatar = \"".$tpl->get("avatar_image_linked")."\";");
			}

I haven't tested this... so I can't promise that it works.... but I hope so! :)
 

Snake911

Neuer Benutzer
u mean edit inted.php rt? not index.tpl


edit: just edited index.php and it works wonderful :D thank you very much! :yo
 

mkkcs

Neuer Benutzer
Hallo Rellek,

toller Hack ! funzt Super.

Ich hab jetzt nur 3 Probleme

1. wenn man wieder ins usercp - avatar geht zeigt er das Ava nicht an, denn als Bild versucht er mit der Board-URL ein Ava anzuzeigen, drück ich speichern, ist es vom externen Space wieder da !

2. ich hab das HM-Portal am laufen - wie kann ich da es ein bauen ?

3. ich hab den advanced Header von Yyoshii drinn, auch da bin ich ein wenig überfragt :nachdenk:

leider bin ich noch nicht so fit in php, oder vielleicht steh ich momentan auf der Leitung ... :nut:

die Code-Teile könnt ich ggf. posten.
 

rellek

relativ sensationell
Teammitglied
hi,

wegen 1.) Das versteh ich jetzt nicht so ganz. Du hast ein Avatar ausgewählt (ein hochgeladenes), verlinkst eins (das geht noch), dann willst du wieder ein hochgeladenes nehmen - und das geht nicht mehr?

wegen 2.) öhm. ja - mom.... mach ich mit 3. zusammen fertig

wegen 3.) gibts einen link zu dem hack?
 

mkkcs

Neuer Benutzer
Original von rellek
hi,

wegen 1.) Das versteh ich jetzt nicht so ganz. Du hast ein Avatar ausgewählt (ein hochgeladenes), verlinkst eins (das geht noch), dann willst du wieder ein hochgeladenes nehmen - und das geht nicht mehr?
also ich meine es so
- man geht ins usercp - avatar
- man gibt die URL ein
- >speichern< - er zeigt das Ava an

+ man geht wieder ins usercp - avatar
+- er zeigt kein Ava an, nur rotes-Kreuz - Bild
- Eigenschaften des Bild Link: http: //ww w.meine_url.de/forum/images/avatar/
+ er hat immer noch den Link drinn stehen
+ wenn ich jetzt speichern klicke dann zeigt er nach aktuallisierung es wieder richtig an

jetzt klarer ?

wegen 2.) öhm. ja - mom.... mach ich mit 3. zusammen fertig

wegen 3.) gibts einen link zu dem hack?

HM-Portal ist klar !
-> hier ist der Link -> Advanced Welcome Header von YYoshii bei yourwbb
 

rellek

relativ sensationell
Teammitglied
@ 1.: Du verwendest wBB 2.3.3?

@ 2. und 3.:
für den Header:
index.php, suche:
Code:
if ($avatar[avatarid]) {
	$ainfo = $db->query_first("SELECT * FROM bb".$n."_avatars WHERE avatarid = '$avatar[avatarid]'");
	$avatar = "<img src=\"images/avatars/avatar-".$ainfo[avatarid].".".$ainfo[avatarextension]."\" border=\"0\">";
} 
else 
{
	$avatar = "<img src=\"{$style['imagefolder']}/noavatar.gif\" border=\"0\">";
}

ersetze durch:
Code:
if ($avatar[avatarid]) {
	$ainfo = $db->query_first("SELECT * FROM bb".$n."_avatars WHERE avatarid = '$avatar[avatarid]'");
	$avatar = "<img src=\"images/avatars/avatar-".$ainfo[avatarid].".".$ainfo[avatarextension]."\" border=\"0\">";
} 

if($wbbuserdata['avatarlink'] != "") {
	$linkavatar = $wbbuserdata['avatarlink'];
	eval("\$avatar = \"".$tpl->get("avatar_image_linked")."\";");
}

if(!$avatar) 
{
	$avatar = "<img src=\"{$style['imagefolder']}/noavatar.gif\" border=\"0\">";
}

und fürs hm-portal:
template: hm_box_pers
suche:
Code:
<if(($avatarid) && $wbbuserdata['can_use_avatar'])><then>

ersetze durch:
Code:
<if((($avatarid) || $wbbuserdata['avatarlink']) && $wbbuserdata['can_use_avatar'])><then>

suche nach:
Code:
  </then><else>  
  <a href="usercp.php?action=avatars{$SID_ARG_2ND}"><img src="images/avatars/avatar-$avatarid.$avaext" alt="{$lang->items['LANG_HMPORTAL_PERS_AVATAR']}" border="0" /></a>
  </else></if>

ersetze durch:
Code:
  </then><else>  
<if($avatarid)><then>
  <a href="usercp.php?action=avatars{$SID_ARG_2ND}"><img src="images/avatars/avatar-$avatarid.$avaext" alt="{$lang->items['LANG_HMPORTAL_PERS_AVATAR']}" border="0" /></a></then><else>
  <a href="usercp.php?action=avatars{$SID_ARG_2ND}"><img src="$wbbuserdata[avatarlink]" alt="{$lang->items['LANG_HMPORTAL_PERS_AVATAR']}" border="0" /></a></else></if>
  </else></if>


bitte vorher ein backup machen, ich habs nicht getestet!
 

mkkcs

Neuer Benutzer
:yo
Top Leistung Rellek!

zu 1: ja es ist ein 2.3.3 (bild 1) nach dem Aufruf des usercp_avatar-Menüpunkt


zu 2. hat einwandfrei geklappt ! mußte nur noch ein border="0" in dein avatar_image_linked reinsetzen denn mit rahmen sa es ein wenig blöd aus !

zu 3. läuft auch super !

Hinweis für Nachfolger , bitte nur das erste Vorkommen austauschen !!!
es ist zweimal vorhanden
 

Anhänge

  • usercp_avatar.jpg
    usercp_avatar.jpg
    38,2 KB · Aufrufe: 460

mkkcs

Neuer Benutzer
Keine Ursache, hab selber zudanken ! für den schönen Hack !
und wenn ich helfen kann bei der Bug-Beseitigung gerne wieder !!
 
Oben