[GELÖST] Flash als Block einbinden

Hilfe zu Modulen und Tags
Post Reply
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

[GELÖST] Flash als Block einbinden

Post by Goerni »

Hallo Forenmitglieder,

ich würde gerne Flashblöcke einbinden, welche im CMS bei Seitenerstellung ausgewählt werden kann. Ähnlich wie "content_image".

Folgenden Code habe ich eingebunden:

Code: Select all

<!-- Flashbox -->
{content_image block='Flashbox' dir='images/flash' assign='flashbox'}
{if !empty($flashbox)}
   <div id="flashbox"><p>{content block="Flashbox"}</p></div>{/if}

<!-- Flashbox Ende-->
Es ist mir natürlich klar, dass um die Ausgabe noch der entsprechende Flashcode herum muss. Mir hätte gereicht, wenn der Nutzer aus einer Liste (ähnlich wie die Bilder) die .swf Dateien auswählen kann und ich die URL abfange und ins Template einbette.

Hat jemand von euch solche "Flash-Blöcke" schon einmal eingebunden? Bin für jeden Tipp dankbar. Eventuell auch ein Workaround.
Last edited by Goerni on Sat Jul 25, 2009 11:37 am, edited 1 time in total.
NaN

Re: Flash als Block einbinden

Post by NaN »

Erstens: Content_image zeigt Dir nur Bilder im Backend an.
Zweitens: Es gibt im Frontend diese Bilder automatisch als aus.

Mit Flash geht da leider nix.
Ich habe für die CMS Version 1.5.* den Inhaltstypen mal etwas abgewandelt, sodass man bestimmte Felder im Backend hinzufügen kann:

http://forum.cmsmadesimple.org/index.ph ... 504.0.html

Läuft aber evtl. nicht mehr mit CMS 1.6. (kommt aber bald)
Problem hierbei ist, dass Du den Pfad zu den SWF Dateien direkt als Werte angeben müsstest.
Bsp.:

Code: Select all

{content block="flash" type="dropdown" values="uploads/flash1.swf,uploads/flash2.swf,..."}
Also einfach ein Verzeichnis vorgeben ist leider nicht.
Aber ich denke das wird sich irgendwie noch machen lassen.
Musst da aber etwas Geduld haben.
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

Re: Flash als Block einbinden

Post by Goerni »

NaN wrote:
Erstens: Content_image zeigt Dir nur Bilder im Backend an.
Zweitens: Es gibt im Frontend diese Bilder automatisch als aus.

Mit Flash geht da leider nix.
Es gibt den Parameter "Urlonly", so dass es nicht zwingend im Frontend als ausgegeben werden muss. Wenn ich jetzt die Stelle fände wo ich zu den Typen .jpg, .png, .gif noch ein .swf hinzufügen könnte, dann hätte ich schon die halbe Miete ;-)

Weißt Du wo diese Endungen festgelegt werden?
NaN wrote: Ich habe für die CMS Version 1.5.* den Inhaltstypen mal etwas abgewandelt, sodass man bestimmte Felder im Backend hinzufügen kann:

http://forum.cmsmadesimple.org/index.ph ... 504.0.html

Läuft aber evtl. nicht mehr mit CMS 1.6. (kommt aber bald)
Problem hierbei ist, dass Du den Pfad zu den SWF Dateien direkt als Werte angeben müsstest.
Bsp.:

Code: Select all

{content block="flash" type="dropdown" values="uploads/flash1.swf,uploads/flash2.swf,..."}
Also einfach ein Verzeichnis vorgeben ist leider nicht.
Aber ich denke das wird sich irgendwie noch machen lassen.
Musst da aber etwas Geduld haben.
Hört sich auch interessant an, leider nutze ich die Version 1.6 *g*
Hältst Du mich auf dem Laufenden, wenn es da was neues gibt? Wäre super.  ;D
NaN

Re: Flash als Block einbinden

Post by NaN »

Goerni wrote: Es gibt den Parameter "Urlonly"
Okay, dann ziehe ich alles zurück und behaupte das Gegenteil ;)
Goerni wrote: Wenn ich jetzt die Stelle fände wo ich zu den Typen .jpg, .png, .gif noch ein .swf hinzufügen könnte, dann hätte ich schon die halbe Miete ;-)
Das kann man leider (noch) nicht per Parameter festlegen.
Dazu müsste man die Datei lib/classes/contenttypes/Content.inc.php modifizieren.

Aber im Prinzip keine schlechte Idee.
Anstatt {content_image} einen Tag z.B. {content type="media" mediatype="..."}.
Werd das mit in meinen modifizierten Inhaltstypen einbauen.
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

Re: Flash als Block einbinden

Post by Goerni »

Hallo,

ich hab's geschafft. Danke Dir!

Also: Ich habe jetzt eine Zeile in der Datei lib/classes/contenttypes/Content.inc.php folgendermaßen abgeändert.

Code: Select all

$dropdown = create_file_dropdown($blockInfo['id'],$dir,$data,'jpg,jpeg,png,gif,swf',
Das bewirkt, dass nun auch Flashdateien auswählbar sind und mit dem Parameter urlonly="true" auch im Template verwertet werden können. Mein Templateauszug:

Code: Select all

<!-- Flashbox -->
{content_image block="Flashbox"  assign="flash"}
{if !empty($flash)}
{if $flash != "-1"}
   <div id="flashbox">
<object width="180" height="150"
    data="{content_image block="Flashbox" dir="images/flash" urlonly="true"}"
    type="application/x-shockwave-flash">
  <param name="movie" value="{content_image block="Flashbox" dir="images/flash" urlonly="true"}">
</object>
</div>{/if}{/if}
<!-- Flashbox Ende -->>
Leider hat die IF-Abfrage mit

Code: Select all

{if !empty($flash) or $flash != "-1"}
oder auch

Code: Select all

{if !empty($flash) || $flash != "-1"}
nicht funktioniert. Warum in der $flash manchmal ne "null" und manchmal ne "-1" steht weiß ich leider net. Aber solange es so geht hab ich auch kein Problem damit.

Also vielen Dank nochmal für die wertvollen Hinweise und wenn jemand zu der "OR" Problematik noch ne schönere Lösung hat, dann immer her damit.
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

Re: Flash als Block einbinden

Post by Goerni »

Wie  markiere ich den Thread hier denn als "Gelöst"?  ???
NaN

Re: Flash als Block einbinden

Post by NaN »

Ich verstehe die If abfrage nicht so ganz.
Wozu speicherst Du die Ausgabe des {content_image} Tags in einer Variable "flash", wenn Du außer in der if abfrage das Ding nicht weiter verwendest?
Außerdem überschreibst Du den "Flashblock" immer wieder, weil Du den content_image tag mehrmals mit demselben block parameter verwendest.

Machs Doch einfach so:

Code: Select all


<!-- Flashbox -->
{content_image block="Flashbox" urlonly="true" assign="flash"}

{if $flash>0}
    <div id="flashbox">
        <object width="180" height="150" data="{$flash}" type="application/x-shockwave-flash">
            <param name="movie" value="{$flash}">
        </object>
    </div>
{/if}
<!-- Flashbox Ende -->

Goerni wrote: Wie  markiere ich den Thread hier denn als "Gelöst"?  ???
Erwischt!
Forentipps nicht gelesen!  :o

http://forum.cmsmadesimple.org/index.ph ... 464.0.html
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

Re: Flash als Block einbinden

Post by Goerni »

So, jetzt aber:

Code: Select all

<!-- Flashbox -->
{content_image block="Flashbox" dir="images/flash" urlonly="true" assign="flash"}
{if $flash != "-1"}
{if !empty($flash)}
    <div id="flashbox">
        <object width="180" height="150" data="{$flash}" type="application/x-shockwave-flash">
            <param name="movie" value="{$flash}">
        </object>
    </div>
{/if}{/if}
<!-- Flashbox Ende -->
Das mit der Variable, war ein guter Hinweis, da hab ich gepennt. Die IF-Abfrage mit $flash>0 funktioniert leider nicht.
Bei der Ausgabe der Variablen steht manchmal eine "-1" und manchmal "" (nichts). Eine OR Verknüpfung funktioniert auch nicht. Wie sollte das denn gehen? Ich habe  ja "or" und "||" versucht. Einzeln funktioniert es einwandfrei.

Vielen Dank für die Hilfe!

PS: Werde den Thread jetzt mit "Gelöst" markieren, wenn ich denn rausfinde, wie ich die Überschrift des ersten Threads bearbeiten kann :-)
NaN

Re: Flash als Block einbinden

Post by NaN »

Goerni wrote: Eine OR Verknüpfung funktioniert auch nicht. Wie sollte das denn gehen? Ich habe  ja "or" und "||" versucht. Einzeln funktioniert es einwandfrei.
ODER ist hier die falsche Wahl.
UND wäre richtig, da ja alle diese Zustände nicht vorkommen dürfen:

Code: Select all

{if $flash!="-1" && $flash!='' && $flash!=0}
Dee
Power Poster
Power Poster
Posts: 1197
Joined: Sun Mar 19, 2006 8:46 pm
Location: the Netherlands

Re: [GELÖST] Flash als Block einbinden

Post by Dee »

Goerni wrote: Die IF-Abfrage mit $flash>0 funktioniert leider nicht.
Bei der Ausgabe der Variablen steht manchmal eine "-1" und manchmal "" (nichts). Eine OR Verknüpfung funktioniert auch nicht. Wie sollte das denn gehen?
Vielleicht so etwas:

Code: Select all

{if !(empty($flash) or $flash == "-1")}
oder

Code: Select all

{if (!empty($flash)) or ($flash != "-1")}
Goerni
Forum Members
Forum Members
Posts: 20
Joined: Sat Apr 11, 2009 3:45 pm

Re: Flash als Block einbinden

Post by Goerni »

NaN wrote:
ODER ist hier die falsche Wahl.
UND wäre richtig, da ja alle diese Zustände nicht vorkommen dürfen:

Code: Select all

{if $flash!="-1" && $flash!='' && $flash!=0}
Guter Hinweis  ;D ;D So gehts auch.  8)
Post Reply

Return to “Module und Tags”