[SOLVED] Mehrere JWplayer auf JS-Basis im Thread möglich?

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
Testusmania99
Mitglied
Beiträge: 345
Registriert: 04.09.2007 10:18
Wohnort: Norden

[SOLVED] Mehrere JWplayer auf JS-Basis im Thread möglich?

Beitrag von Testusmania99 »

Hallöchen!

Ja, diesmal sagt der Titel eigentlich schon alles. Naja, fast. Denn es sollte W3C valide sein!
Zur kurzen Erklärung: Ich denke nahezu jeder kennt bereits den JWplayer von longtail. Dort oben rechts gibt es den kleinen Link Wizard.
So, da kann man nun alles einstellen und schaut dazu bitte ganz unten zur Codebox. Dort gibt es die object/embed als auch die Javascript Methode.

Mein Problem: Ich habe etliche Videos im flv und mp4 Format als auch einige MP3 Dateien, welche ich mit diesem Player in meinem Forum (3.0.8 ) abspielen lasse.
Pro Thread kommen da leicht mal 10 Videos zusammen etc. pp. und das klappt ja auch mit der alternativen object/embed Methode.
Nur diese ist ja nicht W3C valide, so wie ich den Code von longtail benutzen muss.
Klar könnte ich einen validen object code nehmen - doch dann kann ich keine Feinstellungen am Player selbst vornehmen. (verhalten des players etc.)
Obwohl ich mit der "einfachen" Methode sämtliche YouTube Videos valide bekommen habe.
Aber das war ja auch leicht. :D

Also würde ich nun gerne die Javascript Variante ausprobieren, welche zwar auch funktioniert, aber nur einmal pro Thread.
Denn wie man in der Codebox auf Longtail erkennen kann, braucht die Js Methode eine eindeutige ID.
Wenn man jetzt also weiterdenkt fällt einem auf, dass man bei 10 Videos in einem Thread immer und immer wieder dieselbe ID hat und somit stets nur das "erste Video" des Beitrages abgespielt wird.
Uff, ja, das ist nervig.

Wie also könnte ich phpbb 3.0.8 so dahin bewegen, dass ich vielleicht eine ID pro Player doppelt zufällig erstellen lassen kann?
Es gibt ein Mod für "random numbers", aber da schaffe ich es leider nicht den Mod so umzubauen, dass er die reinzufällig erstellte Nummer auch in die IDs kopiert.

Code: Alles auswählen

<script type="text/javascript">document.write(Math.floor((Math.random()*((1000)+1))+1000));</script>
Gibt es denn keine Möglichkeit ein auf Javascript basierten Player öfters im Thread aufzurufen?
Für jede kleine Hilfestellung wäre ich seeehr dankbar!
Vielen Dank!

Liebe Grüße, Testusmania99
Zuletzt geändert von Testusmania99 am 23.04.2011 15:52, insgesamt 1-mal geändert.
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von BNa »

Poste einfach mal Deinen kompletten BBCode, dann bekommst Du eine Lösung.
Kannst aber auch eine class aus der id machen.
Benutzeravatar
Testusmania99
Mitglied
Beiträge: 345
Registriert: 04.09.2007 10:18
Wohnort: Norden

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von Testusmania99 »

Hallo!

Danke dass Du Dich meiner annehmen möchtest.
Nun, das mit der class ist mir auch in den Sinn gekommen und natürlich funktioniert es nicht, da die ID dafür zuständig ist den Player anzeigen zu lassen.
Das ist es ja gerade und daher echt nervig. -.-"

Nun, aber probiere es gerne selbst.
Hier die HTML-Ersetzung:

Code: Alles auswählen

<script type='text/javascript' src='http://example.org/pfad_zum_player/swfobject.js'></script>

<div id='mediaspace'></div>

<script type='text/javascript'>
  var so = new SWFObject('http://example.org/pfad_zum_player/jwplayer.swf','mpl','550','400','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','{URL}');
  so.addVariable('backcolor','333333');
  so.addVariable('frontcolor','999999');
  so.addVariable('lightcolor','cccccc');
  so.addVariable('screencolor','000000');
  so.addVariable('volume','100');
  so.addVariable('controlbar','over');
  so.addVariable('repeat','always');
  so.write('mediaspace');
</script>
Ich habe einst versucht mit dem bereits erwähnten "random numbers" Script eine zufällige Zahl erzeugen zu lassen, so dass es das script automatisch in die Player ID einfügt. Aber leider funktioniert das überhaupt nicht und wenn, dann habe ich 2 unterschiedliche Zahlen.

Vielleicht können wir es ja bald lösen?
Wenn noch weitere Info's benötigt werden, diene ich damit gerne. Einfach fragen. ;)

Liebe Grüße, Testusmania99
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von BNa »

Verlinke mal bitte die aktuelle editor.js Deines Styles, dann hast Du es morgen..
Es ist nämlich leichter, wenn ich es Dir einbaue und dann zurückverlinke, als Hin- und Rückfragen.
Benutzeravatar
Testusmania99
Mitglied
Beiträge: 345
Registriert: 04.09.2007 10:18
Wohnort: Norden

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von Testusmania99 »

Hi!

Oha, Du bist ja echt fix. ;)
Ich bin gerade dabei in der ID "mediaspace" mit folgendem Snippet herumzubasteln:

Code: Alles auswählen

<?php $post-id ?>
Aber leider wird dabei nur das Snippet im Quelltext (Thread) angezeigt, nicht jedoch die variable id selbst.
Doch auch wenn würde es mir nichts bringen, da ich dann zwar mehrere Videos im Thread, jedoch nicht im Beitrag selbst anzeigen lassen könnte.
Nun gut, ich baue ganz auf Dich! ;)

Ich schicke Dir gleich eine PN mit dem gesamten Code. Hoffe das ist in Ordnung so!?

Vielen Dank und liebe Grüße, Testusmania99

EDIT:
PN is raus ;)
Und hab vergessen zu erwähnen, dass es die, durch mich leicht veränderte, editor.js aus der BBcodeBox3 ist. :roll:
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von BNa »

Kein Problem, das macht es sogar einfacher.

Erstens musst Du Deinen BBCode verändern, geht nicht anders :wink:
Zweitens hat php nichts im Template zu suchen, die Lösung mit der post_id lässt ferner nur ein valides Video pro Post zu.

Öffne editor.js

Finde

Code: Alles auswählen

// >>>ALL_OTHER_ONE_CLICK_TAGS>>>     
Davor füge ein

Code: Alles auswählen

  else if (bbopen == '[jwf_player=]')
    {
    var RAND = Math.floor(Math.random() * 1000000 + 500000);
    insert_text('[jwf_player=' + RAND + ']' + '[/jwf_player]');
    } 

BBCode

Code: Alles auswählen

[jwf_player={NUMBER}]{URL}[/jwf_player] 
Ersetzung

Code: Alles auswählen

<script type='text/javascript' src='http://example.org/pfad_zum_player/swfobject.js'></script>

<div id='mediaspace{NUMBER}'></div>

<script type='text/javascript'>
  var so = new SWFObject('http://example.org/pfad_zum_player/jwplayer.swf','mpl','550','400','9');
  so.addParam('allowfullscreen','true');
  so.addParam('allowscriptaccess','always');
  so.addParam('wmode','opaque');
  so.addVariable('file','{URL}');
  so.addVariable('backcolor','333333');
  so.addVariable('frontcolor','999999');
  so.addVariable('lightcolor','cccccc');
  so.addVariable('screencolor','000000');
  so.addVariable('volume','100');
  so.addVariable('controlbar','over');
  so.addVariable('repeat','always');
  so.write('mediaspace{NUMBER}');
</script>
Fertig
Zuletzt geändert von BNa am 23.04.2011 13:41, insgesamt 2-mal geändert.
Benutzeravatar
Testusmania99
Mitglied
Beiträge: 345
Registriert: 04.09.2007 10:18
Wohnort: Norden

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von Testusmania99 »

Hallo!

Danke Dir sehr für Deine Hilfe. Der Code funktioniert so wie er ist. Naja fast. {NUMBER} fehlt noch unten bei der s0 variable.
Aber das ist nicht schlimm.

Gut, er funktioniert zwar so mit dem neuen Tag, jedoch wenn ich nun dieses in den bestehenden FLV bbcode einbauen will, wills nicht gehen.
Hättest Du da vielleicht noch einen Tipp parat, wie ich es also in den bestehenden Code einfügen kann?

Code: Alles auswählen

// >>>FLV>>>1
   else if (bbopen == '[flv]')
	{
	    var Error = '';
		var FLV = prompt('FLV Link eingeben\r\nBeispiel: http://www.google.de/video/clip.flv' , '');
		if (!FLV) {
        Error = "Du hast keinen FLV Link eingegeben";
		}
		if (Error) {
        alert("Fehler: "+Error);
        return;
        }
		if (FLV) {
			insert_text(bbopen + FLV + bbclose);
		}
		else {
			insert_text(bbopen + bbclose);
		}
	}
Meine Kenntnisse reichen nicht ganz aus um Deinen Code dort einzubauen. :oops:
Vielen Dank!

Lg, Testusmania99

EDIT:
Boah *hust* ich schaffs einfach nit. ^^ Egal wie ich was wohin kopiere, entweder fehlen die Dialoge dann oder aber er generiert die Zahl nicht. Ufff..., doch das muss ja irgendwie funktionieren. :(
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von BNa »

Code: Alles auswählen

// >>>FLV>>>1
   else if (bbopen == '[jwf_player=]')
    {
        var Error = '';
        var FLV = prompt('FLV Link eingeben\r\nBeispiel: http://www.google.de/video/clip.flv' , '');
        if (!FLV) {
        Error = "Du hast keinen FLV Link eingegeben";
        }
        if (Error) {
        alert("Fehler: "+Error);
        return;
        }
        if (FLV) {

    var RAND = Math.floor(Math.random() * 1000000 + 500000);
    insert_text('[jwf_player=' + RAND + ']' + FLV + '[/jwf_player]');

        }
        else {
            insert_text(bbopen + bbclose);
        }
    } 
Oder wenn der BBCode partout flv heissen soll
(muss aber jeweils mit Gleichheitszeichen sein flv=)
Siehe BBCode hier viewtopic.php?p=1231299#p1231299

Code: Alles auswählen

[flv={NUMBER}]{URL}[/flv] 

Code: Alles auswählen

// >>>FLV>>>1
   else if (bbopen == '[flv=]')
    {
        var Error = '';
        var FLV = prompt('FLV Link eingeben\r\nBeispiel: http://www.google.de/video/clip.flv' , '');
        if (!FLV) {
        Error = "Du hast keinen FLV Link eingegeben";
        }
        if (Error) {
        alert("Fehler: "+Error);
        return;
        }
        if (FLV) {

    var RAND = Math.floor(Math.random() * 1000000 + 500000);
    insert_text('[flv=' + RAND + ']' + FLV + '[/flv]');

        }
        else {
            insert_text(bbopen + bbclose);
        }
    }  
Du musst dann natürlich den ersten Code, den ich Dir gegeben habe, wieder aus der editor.js ausbauen
viewtopic.php?p=1231299#p1231299
Benutzeravatar
Testusmania99
Mitglied
Beiträge: 345
Registriert: 04.09.2007 10:18
Wohnort: Norden

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von Testusmania99 »

Hallöchen!

Boah is des goil - Alles funktioniert. Ich habe lediglich den bbcode "jwf_player" entfernt, mit meinem vorhandenen "flv" getauscht und schon geht alles. Endlich!!!
Du bist echt klasse. Danke Dir!!!
This document was successfully checked as XHTML 1.0 Transitional!
DANKEEE! ;)

Liebe Grüße, Testusmania99

Edit:
Oh ich seh grad, Du hast editiert. :D
Ja, genauso hab ichs auch gemacht. Danke nochmal! ;)

EDIT #2:
Achja und ich habe noch das "=" entfernen müssen, damit ich die kompatibilität zu meinen bereits unzählig eingefügten Videos erhalten kann.
Das klappt echt alles wie am Schnürchen. Bestens!
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Mehrere JWplayer (longtail) auf JS-Basis im Thread mögli

Beitrag von BNa »

Normal kein Problem. Alten BBCode belassen, damit werden alle "Alten" angezeigt und den neuen BBCode halt "ab jetzt".
Wie hast Du es denn gelöst, ohne den BBCode mit =? Also insgesamt. Würde mich mal interessieren.
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“