Album_Vorschaubild überspringen

Hilfe zu Modulen und Tags
Locked
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Album_Vorschaubild überspringen

Post by jclouxy »

Hallo Forumler!

Ich habe nach langem suchen aufgegeben. Ich nutze das Album-Modul und habe mir da aus dem cmotion-image-gallery-Template (ich glaub das war das ausgangstemplate) ein eigenenes zusammengeschustert.
Jetzt würde ich gerne das Vorschaubild für das Album überspringen können, also bei öffnen der Seite gleich den Inhalt des Albums - nachTemplate vorgaben - angezeigt bekommen.

Geht das irgendwie? Vielleicht gleich in der Seite in der "Einbindungscodezeile"  ;)?

Wenn mir da jemand helfen könnte, das wär absolut genial.

Danke
jclouxy
Da beißt mich doch der Saure Apfel.
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm

Re: Album_Vorschaubild überspringen

Post by nockenfell »

Füge folgenden Code in die foreach Schlaufe der Albumbilder ein:

Code: Select all

{if $onepicture->thumbnail == $album->thumbnail}{php}continue{/php}{/if}
Hier der grössere Zusammenhang:

.....
{else}

{$album->name}

{if $pagecount>1}

<< 
{if $link.page.previous}< {/if}
page {$pagenumber}/{$pagecount}
{if $link.page.next} >{/if}
 >>

{/if}
{$album->comment}


{foreach from=$pictures item=picturesrow}

    {foreach from=$picturesrow item=onepicture}
{if $onepicture->thumbnail == $album->thumbnail}{php}continue{/php}{/if}


    picture}" rel="lytebox[{$album->name|escape:'html'}]" title="{if ($onepicture->comment != "")}{$onepicture->comment|escape:'html'}{/if}"> thumbnail}" alt="{$onepicture->name|escape:'html'} - {$onepicture->comment|escape:'html'}" title="{$onepicture->name|escape:'html'} - {$onepicture->comment|escape:'html'}" />
[this message is written with 100% recycled bits]
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Re: Album_Vorschaubild überspringen

Post by jclouxy »

Danke für den Tipp.
Das zeigt bei mir aber leider keine Wirkung.
Dadurch dass es nicht mehr das original ist hab ich nicht so ganz den Plan wo der Code in welcher Form stehen muss.

Kann mir evtl. jemand sagen wo ich das bei meinem Template einsetzen muss? ???

Hier meine Version:

Code: Select all

...
var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname
var bustcacheparameter=""

function ajaxpage(url, containerid){
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}

function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText
}

function loadobjs(){
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
</__script>

<!-- End gallery script -->
{/literal}

{* Album List *}
{if !$album}
<ul class="albumlist">
	{foreach from=$albums item=album}

	<li class="thumb">
 	<a href="{$album->link}">
<img src="{$album->thumbnail}" alt="{$album->name|escape:'html'}" title="{$album->name|escape:'html'}"{$album->autothumbnailsize} /></a>

<p class="albumname">{$album->name|escape:'html'}<br />
<span class="albumpicturecount">({$album->picturecount} images)</span><br />
<span class="albumcomment">{$album->comment}</span></p>
</li>
	{/foreach}
</ul>
{else}

{* Photo List *}
<p><span class="noprint">
{if $returnlink}<a href="{$returnlink}"><< Zurück zu den Fotoalben</a>{/if}</span></p>

{* Big Picture *}


<div class="largeview" align="left" style="border-top:1px solid #02377f; padding-top:5px;">
<div class="bigpicturenav">
{if $link.picture.previous}<a href="{$link.picture.previous}" title="Vorheriges Bild">< Zurück</a>{/if}
 <span class= "albumpicturecount">( Bild {$picturenumber}/{$picturecount} )</span> 
{if $link.picture.next}<a href="{$link.picture.next}" title="Nächstes Bild">Weiter ></a></div>{/if}
<p class="bigpicturecaption"><strong>{$picture->name}</strong>
{$picture->comment}
</p>
<img src="{$picture->picture}" alt="{$picture->name|escape:'html'} - {$picture->comment|escape:'html'}"  title="{$picture->name|escape:'html'}  - {$picture->comment|escape:'html'}" />

</div>

{* End Big Picture *}


{*CMotion gallery with thumbnail list*}


<div id="motioncontainer" style="position:relative;overflow:hidden;">

 <div id="motiongallery" style="position:absolute;left:0;top:0;white-space: nowrap; margin-top:10px;">

   <div id="trueContainer">

	{foreach from=$pictures item=picturesrow}

	    {foreach from=$picturesrow item=onepicture}
       
{* Change alt/title-tag to what you need. *}

	    <a href="{$onepicture->link}"  title="{$onepicture->name|escape:'html'} | {$picture->comment|escape:'html'}" onclick="document.getElementById('maincmotionpic').setAttribute('src', '{$onepicture->picture}');return false;"> <img src="{$onepicture->thumbnail}" alt="{$onepicture->name|escape:'html'}"/></a>

      {if ($onepicture->number==$picturenumber and !$picture)}{assign var=picture value=$onepicture}{/if}

	    {/foreach}

	{/foreach}
   </div>
 </div>
</div>

{/if}

<div style="clear:both"></div>
Last edited by jclouxy on Tue Jun 29, 2010 9:07 am, edited 1 time in total.
Da beißt mich doch der Saure Apfel.
owr_bgld

Re: Album_Vorschaubild überspringen

Post by owr_bgld »

nockenfell wrote: {php}continue{/php}
{php}{/php} ist in der config standardmäßig deaktiviert und sollte auch nicht aktiviert werden. Bring also nichts. Also maximal "continue" in UDT speichern und diesen hier aufrufen?
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Re: Album_Vorschaubild überspringen

Post by jclouxy »

Also maximal "continue" in UDT speichern und diesen hier aufrufen?
?
Sorry, bin nicht so der Sich-auskenner. ;)
Da beißt mich doch der Saure Apfel.
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Re: Album_Vorschaubild überspringen

Post by jclouxy »

Um eventuellen Missverständnissen vorzubeugen: Das Bild, das das Album anzeigt würde ich gerne überspringen lassen.
Da beißt mich doch der Saure Apfel.
owr_bgld

Re: Album_Vorschaubild überspringen

Post by owr_bgld »

ahh - du meinst du willst nicht, dass die "Albenliste" mit genau dem Album angezeigt wird, sondern direkt die Vorschaubilder der Bilder in genau diesem Album.

Ich arbeite schon länger nicht mehr damit, da es schon lange keinen aktuellen Entwickler gibt (und ob es in absehbarer Zukunft einen geben wird?) - daher mal grundsätzlich, ob du dir nicht überlegst das "Gallery"-Modul zu nutzen.

Aber wieder zum Thema - schau mal in den Parametern (Modulhilfe) nach, dort müsste es die Möglichkeit geben, das Album direkt anzuzeigen - falls wir jetzt das selbe meinen.
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm

Re: Album_Vorschaubild überspringen

Post by nockenfell »

owr_web wrote:
nockenfell wrote: {php}continue{/php}
{php}{/php} ist in der config standardmäßig deaktiviert und sollte auch nicht aktiviert werden. Bring also nichts. Also maximal "continue" in UDT speichern und diesen hier aufrufen?
In Templates kannst du den {php} Tag sehr wohl brauchen. In der config.php kannst du den Tag für die Inhalte deaktivieren, was bei mir auch der Fall ist.
[this message is written with 100% recycled bits]
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm

Re: Album_Vorschaubild überspringen

Post by nockenfell »

jclouxy wrote: Danke für den Tipp.
Das zeigt bei mir aber leider keine Wirkung.
Dadurch dass es nicht mehr das original ist hab ich nicht so ganz den Plan wo der Code in welcher Form stehen muss.

Kann mir evtl. jemand sagen wo ich das bei meinem Template einsetzen muss? ???

Hier meine Version:

Code: Select all

...
Hier meine Version mit eingesetzter Abfrage:

Code: Select all


var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname
var bustcacheparameter=""

function ajaxpage(url, containerid){
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}

function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText
}

function loadobjs(){
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
</__script>

<!-- End gallery script -->
{/literal}

{* Album List *}
{if !$album}
<ul class="albumlist">
	{foreach from=$albums item=album}

	<li class="thumb">
 	<a href="{$album->link}">
<img src="{$album->thumbnail}" alt="{$album->name|escape:'html'}" title="{$album->name|escape:'html'}"{$album->autothumbnailsize} /></a>

<p class="albumname">{$album->name|escape:'html'}<br />
<span class="albumpicturecount">({$album->picturecount} images)</span><br />
<span class="albumcomment">{$album->comment}</span></p>
</li>
	{/foreach}
</ul>
{else}

{* Photo List *}
<p><span class="noprint">
{if $returnlink}<a href="{$returnlink}"><< Zurück zu den Fotoalben</a>{/if}</span></p>

{* Big Picture *}


<div class="largeview" align="left" style="border-top:1px solid #02377f; padding-top:5px;">
<div class="bigpicturenav">
{if $link.picture.previous}<a href="{$link.picture.previous}" title="Vorheriges Bild">< Zurück</a>{/if}
 <span class= "albumpicturecount">( Bild {$picturenumber}/{$picturecount} )</span> 
{if $link.picture.next}<a href="{$link.picture.next}" title="Nächstes Bild">Weiter ></a></div>{/if}
<p class="bigpicturecaption"><strong>{$picture->name}</strong>
{$picture->comment}
</p>
<img src="{$picture->picture}" alt="{$picture->name|escape:'html'} - {$picture->comment|escape:'html'}"  title="{$picture->name|escape:'html'}  - {$picture->comment|escape:'html'}" />

</div>

{* End Big Picture *}


{*CMotion gallery with thumbnail list*}


<div id="motioncontainer" style="position:relative;overflow:hidden;">

 <div id="motiongallery" style="position:absolute;left:0;top:0;white-space: nowrap; margin-top:10px;">

   <div id="trueContainer">

	{foreach from=$pictures item=picturesrow}

	    {foreach from=$picturesrow item=onepicture}
{* Das in der Vorschau des Albums verwendete Bild überspringen *}
       {if $onepicture->thumbnail == $album->thumbnail}{php}continue{/php}{/if}


{* Change alt/title-tag to what you need. *}

	    <a href="{$onepicture->link}"  title="{$onepicture->name|escape:'html'} | {$picture->comment|escape:'html'}" onclick="document.getElementById('maincmotionpic').setAttribute('src', '{$onepicture->picture}');return false;"> <img src="{$onepicture->thumbnail}" alt="{$onepicture->name|escape:'html'}"/></a>

      {if ($onepicture->number==$picturenumber and !$picture)}{assign var=picture value=$onepicture}{/if}

	    {/foreach}

	{/foreach}
   </div>
 </div>
</div>

{/if}

<div style="clear:both"></div>

Der Vorschlag von owr_web auf gallery umzusteigen hat schon was für sich. Die Gallery ist mit Abstand besser als Albums.

Hier kannst du das Vorschaubild ausblenden in dem du ein Bild als Vorschau definierst und dieses Bild danach deaktivierst.
[this message is written with 100% recycled bits]
mike-r

Re: Album_Vorschaubild überspringen

Post by mike-r »

Du suchst nicht zufällig:

Code: Select all

{cms_module module='album' albums='ID'} 
?
"ID" hier die ID des jeweiligen Albums...
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Re: Album_Vorschaubild überspringen

Post by jclouxy »

Danke für die Antworten.

@owr_web: Genau das meine Ich. Ich habe ein Album auf der Seite und möchte gerne ohne den Umweg (über das Beispielbild) gleich auf das eigentliche Album blenden.

... Ich müsste also in der config.php den Tag finden und aktivieren, dann funktioniert der Code erst, richtig?
Werde ich dann mal versuchen. Wär mir sehr recht wenn's geht, dann muss ich nicht auf Gallery umstellen. Das wäre zwar auch nicht schlimm, aber ich hab das Album so ziemlich wie ichs will. ;)

@mike-r: Nee, das ist nicht das Problem, aber danke.
Da beißt mich doch der Saure Apfel.
owr_bgld

Re: Album_Vorschaubild überspringen

Post by owr_bgld »

Dazu musst du nichts umstellen in der config - schau dir einfach mal die optionalen Parameter in der Modulhilfe zum Album an. Es funktioniert einfach über die Parameter (kannst sie ja hier reinkopieren in einen Thread) und ich schau sie mir demnächst an.

Aber ich würds mir überlegen - insbesondere, da Jos (Entwickler der Gallery) sehr aktiv ist hier und immer mit Rat und Tat zur Stelle.
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm

Re: Album_Vorschaubild überspringen

Post by nockenfell »

jclouxy wrote: @owr_web: Genau das meine Ich. Ich habe ein Album auf der Seite und möchte gerne ohne den Umweg (über das Beispielbild) gleich auf das eigentliche Album blenden.
Argh. Dann habe ich dich total falsch verstanden. Wohl nicht genau gelesen. Vergiss die Geschichte von mir.

Code: Select all

{cms_module module='album' albums='ID'} 
Das ist der richtige Code. Wenn du diesen auf einer Seite einfügst, wird direkt das Album mit der angegebenen ID angezeigt.
[this message is written with 100% recycled bits]
User avatar
jclouxy
Forum Members
Forum Members
Posts: 12
Joined: Tue Jun 29, 2010 6:55 am

Re: Album_Vorschaubild überspringen

Post by jclouxy »

Oh, dann war das doch so einfach. :-[
Danke für eure Mühen!

@mike-r: Da lagst du also vollkommen richtig. ;)

Ich hab da nur die Beschreibung der Parameter falsch verstanden und deshalb nach einer anderen Lösung gesucht.

Danke nochmal!
Da beißt mich doch der Saure Apfel.
Locked

Return to “Module und Tags”