Did some code and I thought I would share. The following code can be used to add next and previous buttons to the C5 Slideshow block. I have used the code a good amount on a site so hopefully it should work for everyone.
The code is for a template (view) file so no need to modify the core.
<?php defined('C5_EXECUTE') or die("Access Denied."); ?>
<script type="text/javascript">
//<![CDATA[
var ccmSlideShowHelper<?php echo intval($bID)?> = {
bID:<?php echo intval($bID)?>,
imgNum:0,
timer: [],
stopDisplay: false,
init:function(){
this.displayWrap=$('#ccm-SlideshowBlock-display'+this.bID);
if(this.imgInfos.length==0){
//alert('There are no images in this slideshow');
return false;
}
var maxHeight=0;
for(var i=0;i<this.imgInfos.length;i++){
this.addImg(i);
if(maxHeight==0 || this.imgInfos[i].imgHeight > maxHeight)
maxHeight=this.imgInfos[i].imgHeight;
}
this.displayWrap.css('height',maxHeight);
//center images
for(var i=0;i<this.imgInfos.length;i++){
if( this.imgInfos[i].imgHeight < maxHeight){
var t=((maxHeight - this.imgInfos[i].imgHeight)/2);
this.imgEls[i].css('top',t);
}
}
this.nextImg();
},
nextImg:function(){
if(this.imgNum>=this.imgInfos.length){
this.imgNum=0;
}
if(this.imgNum<0){
this.imgNum=this.imgInfos.length-1;
}
currentImg = this.imgEls[this.imgNum];
currentImgFade = this.imgInfos[this.imgNum].fadeDuration*1000;
currentImgFadeDuration = this.imgInfos[this.imgNum].duration*1000;
currentImg.fadeIn(currentImgFade).delay(currentImgFadeDuration).fadeOut(currentImgFade, function(){
ccmSlideShowHelper<?php echo intval($bID)?>.imgNum++;
ccmSlideShowHelper<?php echo intval($bID)?>.nextImg();
});
},
maxHeight:0,
imgEls:[],
addImg:function(num){
var el=document.createElement('div');
el.id="slideImgWrap"+num;
el.className="slideImgWrap";
if(this.imgInfos[num].fullFilePath.length>0)
imgURL=this.imgInfos[num].fullFilePath;
else imgURL='<?php echo REL_DIR_FILES_UPLOADED?>/'+this.imgInfos[num].fileName;
//el.innerHTML='<img src="'+imgURL+'" >';
el.innerHTML='<div style="height:'+this.imgInfos[num].imgHeight+'px; background:url(\''+escape(imgURL)+'\') center no-repeat"> </div>';
//alert(imgURL);
if(this.imgInfos[num].url.length>0) {
//el.linkURL=this.imgInfos[num].url;
var clickEvent='onclick="return ccmSlideShowHelper<?php echo intval($bID)?>.imgClick( this.href );"';
el.innerHTML='<a href="'+this.imgInfos[num].url+'" '+clickEvent+' >'+el.innerHTML+'</a>';
}
el.style.display='none';
this.displayWrap.append(el);
var jqEl=$(el);
this.imgEls.push(jqEl);
},
imgClick:function(linkURL){
//override for custom behavior
},
next:function(){
this.imgEls[this.imgNum].stop(true, false);
this.imgEls[this.imgNum].fadeOut(1000, function(){
$('.slideImgWrap').removeAttr('style', '');
$('.slideImgWrap').css('display', 'none');
ccmSlideShowHelper<?php echo intval($bID)?>.imgNum++;
ccmSlideShowHelper<?php echo intval($bID)?>.nextImg();
});
},
previous:function(){
this.imgEls[this.imgNum].stop(true, false);
this.imgEls[this.imgNum].fadeOut(1000, function(){
$('.slideImgWrap').removeAttr('style', '');
$('.slideImgWrap').css('display', 'none');
ccmSlideShowHelper<?php echo intval($bID)?>.imgNum--;
ccmSlideShowHelper<?php echo intval($bID)?>.nextImg();
});
},
imgInfos:[
<?php
$notFirst=1;
foreach($images as $imgInfo) {
$f = File::getByID($imgInfo['fID']);
$fp = new Permissions($f);
if ($fp->canRead()) {
if(!$notFirst) echo ',';
$notFirst=0
?>
{
fileName:"<?php echo $f->getFileName()?>",
fullFilePath:"<?php echo $f->getRelativePath()?>",
duration:<?php echo intval($imgInfo['duration'])?>,
fadeDuration:<?php echo intval($imgInfo['fadeDuration'])?>,
url:"<?php echo $imgInfo['url']?>",
groupSet:<?php echo intval($imgInfo['groupSet'])?>,
imgHeight:<?php echo intval($imgInfo['imgHeight'])?>
}
<?php }
} ?>
]
}
$(document).ready(function(e) {
ccmSlideShowHelper<?php echo intval($bID)?>.init();
$('.nextButton').click(function(e) {
ccmSlideShowHelper<?php echo intval($bID)?>.next();
});
$('.previousButton').click(function(e) {
ccmSlideShowHelper<?php echo intval($bID)?>.previous();
});
});
//]]>
</script>
<div class="ccm-SlideshowBlockWrapper">
<div class="nextButton"></div>
<div class="previousButton"></div>
<div id="ccm-SlideshowBlock-display<?php echo intval($bID)?>" class="ccm-SlideshowBlock-display">
<div id="ccm-SlideshowBlock-heightSetter<?php echo intval($bID)?>" class="ccm-SlideshowBlock-heightSetter">
</div>
<div class="ccm-SlideshowBlock-clear" >
</div>
</div>
</div>
Here is the website:http://villaroma.vemglobal.net/...
username: villaroma
pass: nK4gRO8vi
If you could look at the site I would greatly appreciate it.
Thank you