File: /var/www/ippmt.kauko.lt/wp-content/plugins/wp-photo-album-plus/wppa-slideshow.php
<?php
/* wppa-slideshow.php
* Package: wp-photo-album-plus
*
* Contains all the slideshow high level functions
*
* Version 9.0.08.004
*
*/
if ( ! defined( 'ABSPATH' ) ) die( "Can't load this file directly" );
function wppa_the_slideshow( $thumbs ) {
$thumbs = wppa_prepare_slideshow_pagination( $thumbs );
if ( wppa_opt( 'pagelink_pos' ) == 'top' || wppa_opt( 'pagelink_pos' ) == 'both' ) wppa_slide_page_links();
if ( wppa_switch( 'split_namedesc' ) ) {
$indexes = explode( ',', wppa_opt( 'slide_order_split' ) );
$i = 0;
while ( $i < '12' ) {
switch ( $indexes[$i] ) {
case 0:
wppa_start_stop('optional'); // The 'Slower | start/stop | Faster' bar
break;
case 1:
wppa_slide_frame( $thumbs ); // The photo / slide
break;
case '2':
wppa_slide_name_box('optional'); // Show name in a box.
break;
case '3':
wppa_slide_desc_box('optional'); // Show description in a box.
break;
case '4':
wppa_slide_custom('optional'); // Custom box
break;
case '5':
wppa_slide_rating('optional'); // Rating box
break;
case '6':
wppa_slide_filmstrip( $thumbs ); // Show Filmstrip
break;
case '7':
wppa_browsebar('optional'); // The 'Previous photo | Photo n of m | Next photo' bar
break;
case '8':
wppa_comments('optional'); // The Comments box
break;
case '9':
wppa_iptc('optional'); // The IPTC box
break;
case 10:
wppa_exif('optional'); // The EXIF box
break;
case '11':
wppa_share('optional'); // The Share box
break;
default:
break;
}
$i++;
}
}
else {
$indexes = explode( ',', wppa_opt( 'slide_order' ) );
$i = 0;
while ( $i < '11' ) {
switch ( $indexes[$i] ) {
case 0:
wppa_start_stop('optional'); // The 'Slower | start/stop | Faster' bar
break;
case 1:
wppa_slide_frame( $thumbs ); // The photo / slide
break;
case '2':
wppa_slide_name_desc('optional'); // Show name and description in a box.
break;
case '3':
wppa_slide_custom('optional'); // Custom box
break;
case '4':
wppa_slide_rating('optional'); // Rating box
break;
case '5':
wppa_slide_filmstrip( $thumbs ); // Show Filmstrip
break;
case '6':
wppa_browsebar('optional'); // The 'Previous photo | Photo n of m | Next photo' bar
break;
case '7':
wppa_comments('optional'); // The Comments box
break;
case '8':
wppa_iptc('optional'); // The IPTC box
break;
case '9':
wppa_exif('optional'); // The EXIF box
break;
case 10:
wppa_share('optional'); // The Share box
break;
default:
break;
}
$i++;
}
}
if ( wppa_opt( 'pagelink_pos' ) == 'bottom' || wppa_opt( 'pagelink_pos' ) == 'both' ) wppa_slide_page_links();
wppa_run_slidecontainer( $thumbs ); // Fill in the photo array and display it.
}
// Prepares the pagination and returns the thumbs for the current page
function wppa_prepare_slideshow_pagination( $thumbs ) {
global $thumbs_ids;
global $previous_page_last_id;
// Init: no pagination
wppa( 'ss_pag', false );
// Any items?
if ( ! $thumbs ) return $thumbs;
// Not on search
if ( wppa( 'src' ) ) return $thumbs;
$mocc = wppa( 'mocc' );
// If not numeric startphoto, convert it
if ( wppa( 'start_photo' ) && ! wppa_is_int( wppa( 'start_photo' ) ) ) {
global $wpdb;
$s = wppa( 'start_photo' );
$id = wppa_get_var( $wpdb->prepare( "SELECT id FROM $wpdb->wppa_photos WHERE sname = %s OR crypt = %s LIMIT 1", $s, $s ) );
wppa( 'start_photo', $id );
}
// Not on photo enumeration
if ( wppa( 'start_photos' ) ) return $thumbs;
// Save thumb ids of full selection
$thumbs_ids = array();
if ( $thumbs ) foreach ( $thumbs as $t ) {
$thumbs_ids[] = $t['id'];
}
// See if slideonly max is appliccable
if ( wppa( 'is_slideonly' ) || wppa( 'is_slideonlyf' ) ) {
if ( wppa_opt( 'slideonly_max' ) ) {
$pagsiz = wppa_opt( 'slideonly_max' );
}
else {
return $thumbs;
}
}
// Not slideonly
else {
// Page size defined?
if ( ! wppa_opt( 'slideshow_pagesize' ) ) return $thumbs;
// Not in a widget!
if ( wppa_in_widget() ) return $thumbs;
// Fits in one page?
$pagsiz = wppa_opt( 'slideshow_pagesize' );
if ( count( $thumbs ) <= $pagsiz ) return $thumbs;
}
// Pagination on and required
wppa( 'ss_pag', true );
$nslides = count( $thumbs );
wppa( 'npages', ceil( $nslides / $pagsiz ) );
// Assume page = 1
wppa( 'curpage', 1 );
// If a page is requested, find it
$pagreq = wppa_get( 'paged', 0 );
if ( $pagreq ) {
wppa( 'curpage', $pagreq );
}
// If a photo requested, find the page where its on
elseif ( wppa( 'start_photo' ) ) {
foreach ( array_keys( $thumbs ) as $key ) {
if ( $thumbs[$key]['id'] == wppa( 'start_photo' ) ) {
wppa( 'curpage', floor( $key / $pagsiz ) + 1 );
}
}
}
// Extract the part of the thumbs for the current page
$offset = ( wppa( 'curpage' ) - 1 ) * wppa_opt( 'slideshow_pagesize' );
wppa_js( 'wppaSlideOffset[' . $mocc . '] = ' . $offset . ';' );
$skips = ( wppa( 'curpage' ) - 1 ) * $pagsiz;
$thumbs = array_slice( $thumbs, $skips, $pagsiz );
$previous_page_last_id = 0;
if ( $skips && isset( $thumbs_ids[$skips - 1] ) ) {
$previous_page_last_id = $thumbs_ids[$skips - 1];
}
else {
$previous_page_last_id = $thumbs_ids[count($thumbs_ids) - 1];
}
return $thumbs;
}
function wppa_slide_page_links() {
if ( ! wppa( 'ss_pag' ) ) return; // No pagination
if ( wppa( 'is_slideonly' ) || wppa( 'is_slideonlyf' ) ) return; // Not on slideonly
wppa_page_links( wppa( 'npages' ), wppa( 'curpage' ), true );
}
function wppa_get_navigation_type() {
switch( wppa_opt( 'navigation_type' ) ) {
case 'icons':
return 'icons';
break;
case 'iconsmobile':
if ( wppa_is_mobile() ) {
return 'icons';
}
else {
return 'text';
}
case 'text':
return 'text';
default:
return 'icons';
}
}
function wppa_start_stop( $opt = '' ) {
if ( wppa_get_navigation_type() == 'icons' ) {
wppa_start_stop_icons( $opt );
}
else {
wppa_start_stop_text( $opt );
}
}
function wppa_start_stop_icons( $opt = '' ) {
if ( is_feed() ) return; // Not in a feed
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
if ( wppa( 'is_filmonly' ) && ! wppa_switch( 'show_startstop_filmonly' ) ) return;
if ( wppa( 'is_filmonly' ) && wppa_switch( 'show_startstop_filmonly' ) ) {
$filmonlynav = true;
}
else {
$filmonlynav = false;
}
$Filmonlynavcontin = $filmonlynav && wppa_switch ( 'filmonly_continuous' );
$show = false;
if ( $opt != 'optional' ) $show = true;
if ( wppa_switch( 'show_startstop_navigation' ) && ! wppa( 'is_slideonly' ) ) $show = true;
if ( $filmonlynav ) $show = true;
if ( ! $show ) {
return;
}
$iconsize = wppa_icon_size( '1.5em;' );
$mocc = wppa( 'mocc' );
$result = '
<div
id="prevnext1-' . $mocc . '"
class="wppa-box wppa-nav wppa-nav-text"
style="text-align:center;line-height:0;"
>
<span
id="speed0-' . $mocc . '"
class="wppa-nav-text speed0"
style="display:inline-block;"
title="' . __( 'Slower', 'wp-photo-album-plus' ) . '"' .
( $Filmonlynavcontin ?
' onclick="jQuery(document).ready(function(){wppaAnimationSpeed*=1.25;})";' :
' onclick="wppaSpeed(' . $mocc . ', false); return false;"'
) . '
>' .
wppa_get_svghtml( 'Snail', $iconsize ) . '
</span>
<span
id="startstop-'.$mocc.'"
class="wppa-nav-text startstop"
style="display:inline-block;"
title="' . __( 'Start / stop slideshow', 'wp-photo-album-plus' ) . '"
onclick="wppaStartStop(' . $mocc . ', -1); return false;"
>' .
wppa_get_svghtml( 'Play-Button', $iconsize ) . '
</span>
<span
id="speed1-' . $mocc . '"
class="wppa-nav-text speed1"
style="display:inline-block;"
title="' . __( 'Faster', 'wp-photo-album-plus' ) . '"' .
( $Filmonlynavcontin ?
' onclick="jQuery(document).ready(function(){wppaAnimationSpeed*=0.8;})";' :
' onclick="wppaSpeed(' . $mocc . ', true); return false;"'
) . '
>' .
wppa_get_svghtml( 'Eagle-1', $iconsize ) . '
</span>';
// Renew link on slidonly?
if ( wppa( 'is_filmonly' ) && wppa_switch( 'show_renew_filmonly' ) ) {
$ajax_url = wppa_get_ajaxlink();
$result .= '
<span
id="renew-' . $mocc . '"
class="wppa-nav-text renew"
style="float:right;cursor:pointer"
title="' . esc_attr( __('Renew', 'wp-photo-album-plus' ) ) . '"
onclick="_wppaStop(' . $mocc . ');wppaDoAjaxRender(event,' . $mocc . ', \'' . $ajax_url .
'wppa-slideonly=1&wppa-filmonly=1&wppa-album=' . wppa( 'start_album' ) . '&wppa-occur=' . $mocc . '\', \'\' )"
>' .
wppa_get_svghtml( 'Redo', $iconsize ) . '
</span>';
}
$result .= '</div>';
wppa_out( $result );
}
function wppa_start_stop_text( $opt = '' ) {
if ( is_feed() ) return; // Not in a feed
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
if ( wppa( 'is_filmonly' ) && ! wppa_switch( 'show_startstop_filmonly' ) ) return;
if ( wppa( 'is_filmonly' ) && wppa_switch( 'show_startstop_filmonly' ) ) {
$filmonlynav = true;
}
else {
$filmonlynav = false;
}
$Filmonlynavcontin = $filmonlynav && wppa_switch ( 'filmonly_continuous' );
$show = false;
if ( $opt != 'optional' ) $show = true;
if ( wppa_switch( 'show_startstop_navigation' ) && ! wppa( 'is_slideonly' ) ) $show = true;
if ( $filmonlynav ) $show = true;
if ( ! $show ) {
return;
}
$mocc = wppa( 'mocc' );
$result = '
<div
id="prevnext1-' . $mocc . '"
class="wppa-box wppa-nav wppa-nav-text"
style="text-align:center;"
>
<a
id="speed0-' . $mocc . '"
class="wppa-nav-text speed0"' .
( $Filmonlynavcontin ?
' onclick="jQuery(document).ready(function(){wppaAnimationSpeed*=1.25;})";' :
' onclick="wppaSpeed(' . $mocc . ', false); return false;"'
) . '
>' .
__( 'Slower', 'wp-photo-album-plus' ) . '
</a>
|
<a
id="startstop-' . $mocc . '"
class="wppa-nav-text startstop"
onclick="wppaStartStop(' . $mocc . ', -1); return false;">' .
__( 'Start', 'wp-photo-album-plus' ) . '
</a>
|
<a
id="speed1-' . $mocc . '"
class="wppa-nav-text speed1"' .
( $Filmonlynavcontin ?
' onclick="jQuery(document).ready(function(){wppaAnimationSpeed*=0.8;})";' :
' onclick="wppaSpeed('.$mocc.', true); return false;"'
) . '
>' .
__( 'Faster', 'wp-photo-album-plus' ) . '
</a>';
// Renew link on slidonly?
if ( wppa( 'is_filmonly' ) && wppa_switch( 'show_renew_filmonly' ) ) {
$ajax_url = wppa_get_ajaxlink();
$result .= '
<a
id="renew-' . $mocc . '"
class="wppa-nav-text renew"
style="float:right;cursor:pointer"
onclick="_wppaStop(' . $mocc . ');wppaDoAjaxRender(event,' . $mocc . ', \'' . $ajax_url .
'wppa-slideonly=1&wppa-filmonly=1&wppa-album=' . wppa( 'start_album' ) . '&wppa-occur=' . $mocc . '\', \'\' )"
>' .
__( 'Renew', 'wp-photo-album-plus' ) . '
</a>';
}
$result .= '</div>';
wppa_out( $result );
}
function wppa_slide_frame( $thumbs ) {
if ( is_feed() ) return;
if ( wppa( 'is_filmonly' ) ) return;
$mocc = wppa( 'mocc' );
if ( wppa_switch( 'slide_pause' ) ) {
$pause = ' onmouseover="wppaSlidePause[' . $mocc . '] = \'' . __( 'Paused', 'wp-photo-album-plus' ) . '\'"' .
' onmouseout="wppaSlidePause[' . $mocc . '] = false"' .
' ontouchstart="wppaSlidePause[' . $mocc . '] = \'' . __( 'Paused', 'wp-photo-album-plus' ) . '\'"' .
' ontouchend="wppaSlidePause[' . $mocc . '] = false"';
}
else $pause = '';
// There are still users who turn off javascript...
wppa_out( '
<noscript style="text-align:center">
<span style="color:red">' .
__( 'To see the full size images, you need to enable javascript in your browser.', 'wp-photo-album-plus' ) . '
</span>
</noscript>' );
$mcw = wppa_get_container_width();
$icw = wppa_opt( 'initial_colwidth' );
$wwd = wppa_opt( 'widget_width' );
if ( $mcw < 1 ) $mcw *= $icw;
$height = wppa( 'in_widget' ) ? $wwd : ( ( wppa_opt( 'maxheight' ) / wppa_opt( 'fullsize' ) ) * $mcw );
// wppa_log( 'dbg', "Initial height for $mocc is $height, width = $mcw");
$style = 'overflow:hidden;height:' . $height . 'px;margin-bottom:' . wppa_opt( 'box_spacing' ) . 'px;';
switch ( wppa( 'align' ) ) {
case 'left':
$style .= 'margin-right:auto;';
break;
case 'right':
$style .= 'margin-left:auto;';
break;
// case 'center':
default:
$style .= 'margin-right:auto;margin-left:auto;';
break;
}
wppa_out( '
<div
id="slide_frame-' . $mocc . '"' .
$pause . '
class="slide-frame"
style="' . $style . '"
>' );
$auto = wppa( 'auto_colwidth' );
wppa_out( '
<div
id="theslide0-' . $mocc . '"
class="theslide theslide-' . $mocc . '"
style="' .
( $auto ? 'width:100%;' : 'width:' . wppa( 'slideframewidth' ) . 'px;' ) . '
margin:auto;"
>
</div>
<div
id="theslide1-' . $mocc . '"
class="theslide theslide-' . $mocc . '"
style="' .
( $auto ? 'width:100%;' : 'width:' . wppa( 'slideframewidth' ) . 'px;' ) . '
margin:auto;"
>
</div>' );
// The Spinner image
wppa_out( wppa_get_spinner_svg_html( array( 'id' => 'wppa-slide-spin-' . wppa( 'mocc' ),
'position' => 'absolute',
'display' => 'inline',
'z-index' => '99',
'size' => ( wppa( 'in_widget' ) ? '60' : 120 ),
) ) );
if ( ! wppa_page( 'oneofone' ) ) {
// Big browsing buttons enabled ?
if ( ( wppa_switch( 'show_bbb' ) && ! wppa_in_widget() ) ||
( wppa_switch( 'show_bbb_widget' ) && wppa_in_widget() ) ) {
wppa_out( '
<img
id="bbb-' . $mocc . '-l"
class="wppa-bbb wppa-bbb-l bbb-' . $mocc . '"
src="' . wppa_get_imgdir() . 'bbbl.png"
alt="bbbl"
onmouseover="wppaBbb(' . $mocc . ',\'l\',\'show\')"
onmouseout="wppaBbb(' . $mocc . ',\'l\',\'hide\')"
onclick="wppaBbb(' . $mocc . ',\'l\',\'click\')"
/>
<img
id="bbb-' . $mocc . '-r"
class="wppa-bbb wppa-bbb-r bbb-' . $mocc . '"
src="' . wppa_get_imgdir() . 'bbbr.png"
alt="bbbr"
onmouseover="wppaBbb(' . $mocc . ',\'r\',\'show\')"
onmouseout="wppaBbb(' . $mocc . ',\'r\',\'hide\')"
onclick="wppaBbb(' . $mocc . ',\'r\',\'click\')"
/>' );
}
// Ugly browse buttons ?
if ( ( wppa_switch( 'show_ubb' ) && ! wppa_in_widget() ) ||
( wppa_switch( 'show_ubb_widget' ) && wppa_in_widget() ) ) {
$iconsize = wppa_icon_size( '48px;', 1 );
$margin = wppa_icon_size( '48px;', 1, 0.5 );
$type = wppa_switch( 'ubb_new' ) ? 'Left-2' : 'Prev-Button';
wppa_out( '
<div
id="ubb-l-' . $mocc . '"
class="wppa-ubb ubb ubb-l ubb-' . $mocc . '"
style="
margin-top:-' . $margin . '
left:0;
width:' . $iconsize . ';"
onmouseover="wppaUbb(' . $mocc . ',\'l\',\'show\')"
ontouchstart="wppaUbb(' . $mocc . ',\'l\',\'show\')"
onmouseout="wppaUbb(' . $mocc . ',\'l\',\'hide\')"
ontouchend="wppaUbb(' . $mocc . ',\'l\',\'hide\')"
onclick="wppaUbb(' . $mocc . ',\'l\',\'click\')"
>' .
wppa_get_svghtml( $type, $iconsize, false, true ) . '
</div>' );
$type = wppa_switch( 'ubb_new' ) ? 'Right-2' : 'Next-Button';
wppa_out( '
<div
id="ubb-r-' . $mocc . '"
class="wppa-ubb ubb ubb-r ubb-' . $mocc . '"
style="
margin-top:-' . $margin . '
right:0;
width:' . $iconsize . ';"
onmouseover="wppaUbb(' . $mocc . ',\'r\',\'show\')"
ontouchstart="wppaUbb(' . $mocc . ',\'r\',\'show\')"
onmouseout="wppaUbb(' . $mocc . ',\'r\',\'hide\')"
ontouchend="wppaUbb(' . $mocc . ',\'r\',\'hide\')"
onclick="wppaUbb(' . $mocc . ',\'r\',\'click\')"
>' .
wppa_get_svghtml( $type, $iconsize, false, true ) . '
</div>' );
}
}
wppa_startstop_icons();
wppa_numberbar( $thumbs );
wppa_out( '</div>' );
}
function wppa_slide_name_desc( $key = 'optional' ) {
$do_it = false;
if ( $key != 'optional' ) $do_it = true;
if ( wppa( 'is_slideonly' ) ) {
if ( wppa( 'name_on') ) $do_it = true;
if ( wppa( 'desc_on') ) $do_it = true;
}
else {
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'description', 'show_full_desc' ) ) $do_it = true;
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'name', 'show_full_name' ) || wppa_switch( 'show_full_owner') ) $do_it = true;
}
if ( $do_it ) {
wppa_out( '
<div
id="namedesc-' . wppa( 'mocc' ) . '"
class="wppa-box wppa-name-desc"
>' );
if ( wppa_switch( 'swap_namedesc') ) {
wppa_slide_name($key); // The name of the photo
wppa_slide_description($key); // The description of the photo
}
else {
wppa_slide_description($key); // The description of the photo
wppa_slide_name($key); // The name of the photo
}
wppa_out( '
</div>' );
}
}
function wppa_slide_name_box( $key = 'optional' ) {
$do_it = false;
if ( $key != 'optional' ) $do_it = true;
if ( wppa( 'is_slideonly' ) ) {
if ( wppa( 'name_on' ) ) $do_it = true;
}
else {
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'name', 'show_full_name' ) || wppa_switch( 'show_full_owner' ) ) $do_it = true;
}
if ( $do_it ) {
wppa_out( '
<div
id="namebox-' . wppa( 'mocc' ) . '"
class="wppa-box wppa-name-desc"
>' );
wppa_slide_name( $key ); // The name of the photo
wppa_out( '
</div>' );
}
}
function wppa_slide_desc_box( $key = 'optional' ) {
$do_it = false;
if ( $key != 'optional' ) $do_it = true;
if ( wppa( 'is_slideonly' ) ) {
if ( wppa( 'desc_on' ) ) $do_it = true;
}
else {
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'description', 'show_full_desc', 'slide_desc_box' ) ) $do_it = true;
}
if ( $do_it ) {
wppa_out( '
<div
id="descbox-' . wppa( 'mocc' ) . '"
class="wppa-box wppa-name-desc"
>' );
wppa_slide_description( $key ); // The description of the photo
wppa_out( '
</div>' );
}
}
function wppa_slide_name( $opt = '' ) {
if ( wppa( 'is_slideonly' ) ) {
if ( wppa( 'name_on' ) ) $doit = true;
else $doit = false;
}
else {
if ( $opt == 'optional' ) {
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'name', 'show_full_name' ) || wppa_switch( 'show_full_owner' ) ) $doit = true;
else $doit = false;
}
else $doit = true;
}
if ( $opt == 'description' ) $doit = false;
if ( $doit ) {
wppa_out( '
<div
id="imagetitle-' . wppa( 'mocc' ) . '"
class="wppa-fulltitle imagetitle"
style="padding:3px;width:100%"
>
</div>' );
}
}
function wppa_slide_description( $opt = '' ) {
if ( wppa( 'is_slideonly' ) ) {
if ( wppa( 'desc_on' ) ) $doit = true;
else $doit = false;
}
else {
if ( $opt == 'optional' ) {
if ( wppa_is_item_displayable( wppa( 'start_album' ), 'description', 'show_full_desc' ) ) $doit = true;
else $doit = false;
}
else $doit = true;
}
if ( $opt == 'name' ) $doit = false;
if ( $doit ) {
wppa_out( '
<div
id="imagedesc-' . wppa( 'mocc' ) . '"
class="wppa-fulldesc imagedesc"
style="
padding:3px;
width:100%;
text-align:' . wppa_opt( 'fulldesc_align' ) . '"
>
</div>' );
}
}
function wppa_slide_custom( $opt = '' ) {
if ( $opt == 'optional' && ! wppa_switch( 'custom_on' ) ) return;
if ( wppa( 'is_slideonly' ) ) return; /* Not when slideonly */
if ( is_feed() ) return;
$content = wppa_translate( stripslashes( wppa_opt( 'custom_content' ) ) );
// w#albdesc
if ( wppa_is_int( wppa( 'start_album' ) ) && wppa( 'start_album' ) > 0 ) {
$content = str_replace( 'w#albdesc', wppa_get_album_desc( wppa( 'start_album' ) ), $content );
}
else {
$content = str_replace( 'w#albdesc', '', $content );
}
// w#fotomoto
$f_on_this = false;
if ( function_exists( 'fotomoto_page_enabled' ) ) {
$f_on_this = ! wppa( 'in_widget' ) && fotomoto_page_enabled( wppa_get_the_ID() );
}
if ( wppa_switch( 'fotomoto_on' ) && $f_on_this ) {
$content = str_replace( 'w#fotomoto',
'<div
id="wppa-fotomoto-container-' . wppa( 'mocc' ) . '"
class="wppa-fotomoto-container"
>
</div>
<div
id="wppa-fotomoto-checkout-' . wppa( 'mocc' ) . '"
class="wppa-fotomoto-checkout FotomotoToolbarClass"
style="float:right; clear:none;"
>
<ul
class="FotomotoBar"
style="list-style:none outside none;"
>
<li>
<a onclick="FOTOMOTO.API.checkout(); return false;">' .
__('Checkout', 'wp-photo-album-plus' ) . '
</a>
</li>
</ul>
</div>
<div style="clear:both;"></div>',
$content );
}
else {
$content = str_replace( 'w#fotomoto', '', $content );
}
wppa_out( '
<div
id="wppa-custom-' . wppa( 'mocc' ) . '"
class="wppa-box wppa-custom"
>' .
$content . '
</div>' );
}
function wppa_slide_rating( $opt = '' ) {
if ( wppa_opt( 'rating_max' ) == 1 ) {
wppa_slide_rating_vote_only( $opt );
}
else {
wppa_slide_rating_range( $opt );
}
}
function wppa_slide_rating_vote_only( $opt, $id = 0, $is_lightbox = false ) {
wppa_out( wppa_get_slide_rating_vote_only( $opt, $id, $is_lightbox ) );
}
function wppa_get_slide_rating_vote_only( $opt, $id = 0, $is_lightbox = false ) {
if ( ! $is_lightbox ) {
if ( $opt == 'optional' && ! wppa_is_item_displayable( wppa( 'start_album' ), 'rating', 'rating_on' ) ) return;
if ( wppa( 'is_slideonly' ) ) return ''; /* Not when slideonly */
if ( is_feed() ) return '';
}
$result = '';
// Open the voting box
if ( ! $is_lightbox ) {
$result .= '
<div
id="wppa-rating-' . wppa( 'mocc' ) . '"
class="wppa-box wppa-nav wppa-nav-text"
style="text-align:center;"
>';
}
// Likes
if ( wppa_opt( 'rating_display_type' ) == 'likes' ) {
// Logged in
if ( is_user_logged_in() ) {
$fs = '16';
$pad = '4';
if ( $id ) {
$liketitle = wppa_get_like_title_a( $id );
$my = $liketitle['mine'];
$title = $liketitle['title'];
$display = $liketitle['display'];
}
else {
$my = '';
$title = '';
$display = '';
}
$result .= '
<div
id="wppa-like-imgdiv-' . wppa( 'mocc' ) . '"
style="display:inline"
>
<img' .
( $is_lightbox ? ' id="wppa-like-0"' : ' id="wppa-like-' . wppa( 'mocc' ) . '"' ) .
( $my ? ' src="' . wppa_get_imgdir() . 'thumbdown.png"' : ' src="' . wppa_get_imgdir() . 'thumbup.png"' ) .
( $my ? ' alt="down"' : ' alt="up"' ) . '
style="height:' . $fs . 'px;margin:0 0 -3px 0;padding:0 ' . $pad . 'px;box-shadow:none;display:inline;"
class="no-shadow"' .
( $title ? ' title="' . esc_attr( $title ) . '"' : '' ) . '
onmouseover="jQuery(this).stop().fadeTo(100, 1.0)"
onmouseout="jQuery(this).stop().fadeTo(100, wppaStarOpacity)"' .
( $is_lightbox ? ' onclick="wppaOvlRateIt(\''.wppa_encrypt_photo($id).'\', 1, 0 )"' : ' onclick="wppaRateIt( ' . wppa( 'mocc' ) . ', 1);"' ) . '
onload="jQuery(this).trigger(\'onmouseout\');"
>
</div>';
if ( wppa_switch( 'show_avg_rating' ) ) {
$result .= '
<span' .
( $is_lightbox ? ' id="wppa-liketext-0"' : ' id="wppa-liketext-' . wppa( 'mocc' ) . '"' ) . '
style="cursor:default;"
>' .
$display . '
</span>';
}
}
else {
if ( wppa_switch( 'login_links' ) ) {
/* translators: login link */
$result .= sprintf(__( 'You must <a href="%s">login</a> to vote', 'wp-photo-album-plus' ), wppa_opt( 'login_url' ) );
}
else {
$result .= __( 'You must login to vote', 'wp-photo-album-plus' );
}
}
}
else {
// Logged in
if ( is_user_logged_in() ) {
$cnt = 0;
if ( wppa_switch( 'show_avg_rating' ) ) {
/* translators: seqno, count */
$result .= sprintf( __( 'Number of votes: <span id="wppa-vote-count-%1$d" >%2$d</span> ', 'wp-photo-album-plus' ), wppa( 'mocc' ), $cnt );
}
$result .= '
<input
id="wppa-vote-button-' . wppa( 'mocc' ) . '"
class="wppa-vote-button"
style="margin:0;"
type="button"
onclick="wppa' . ( $is_lightbox ? 'Ovl' : '' ) . 'RateIt(' . wppa( 'mocc' ) . ', 1)"
value="' . wppa_opt( 'vote_button_text' ) . '"
/>';
}
// Must login to vote
else {
if ( wppa_switch( 'login_links' ) ) {
/* translators: login link */
$result .= sprintf( __( 'You must <a href="%s">login</a> to vote' , 'wp-photo-album-plus' ), wppa_opt( 'login_url' ) );
}
else {
$result .= __( 'You must login to vote' , 'wp-photo-album-plus' );
}
}
}
// Close the voting box
if ( ! $is_lightbox ) {
$result .= '</div>';
}
return $result;
}
function wppa_slide_rating_range( $opt ) {
// Not on a feed
if ( is_feed() ) return '';
// Not on a slideonly
if ( wppa( 'is_slideonly' ) ) {
return '';
}
// On a slide: depending on slide visibility settings
if ( $opt == 'optional' && ! wppa_is_item_displayable( wppa( 'start_album' ), 'rating', 'rating_on' ) ) {
return '';
}
$result = wppa_get_rating_range_html();
wppa_out( $result );
}
function wppa_get_rating_range_html( $id = 0, $is_lightbox = false, $class = '' ) {
global $wpdb;
static $cache;
if ( ! is_array( $cache ) ) $cache = array();
// Not on a feed
if ( is_feed() ) return '';
// On lightbox: only if in visibility settings set.
if ( $is_lightbox ) {
if ( ! wppa_switch( 'ovl_rating' ) ) {
return '';
}
}
if ( $id ) {
$wait_text = wppa_get_rating_wait_text( $id );
if ( $wait_text ) {
// if ( $is_lightbox ) {
// return '';
// }
return '<span class="'.$class.'" style="color:red" >'.$wait_text.'</span>';
}
if ( wppa_get_photo_item( $id, 'owner' ) == wppa_get_user() && ! wppa_switch( 'allow_owner_votes' ) ) {
if ( $is_lightbox ) {
return '';
}
return '<span class="'.$class.'" >' . __( 'Sorry, you can not rate your own photos' , 'wp-photo-album-plus' ) . '</span>';
}
if ( isset( $cache[$id] ) ) {
$mylast = $cache[$id];
}
else {
$mylast = wppa_get_var( $wpdb->prepare( "SELECT value FROM $wpdb->wppa_rating WHERE photo = %s AND user = %s ORDER BY id DESC LIMIT 1",
$id,
wppa_get_user() ) );
$cache[$id] = $mylast !== null;
}
if ( $mylast && ! wppa_switch( 'rating_change' ) && ! wppa_switch( 'rating_multi' ) ) {
if ( $is_lightbox ) {
return '';
}
return '<span class="'.$class.'" >' . __( 'Sorry, you can rate a photo only once', 'wp-photo-album-plus' ) . '</span>';
}
}
// Mphoto, xphoto and lightbox use a different js function than slideshow.
// In slideshow the id is not known and retrieved from _wppaCurIdx[mocc].
// There is also a difference in css.
$idorlb = $id || $is_lightbox;
// If on xphoto, reload after
$reload = ( wppa( 'is_xphoto' ) ? 'true' : 'false' );
$result = '';
$fs = wppa_opt( 'fontsize_nav' );
if ( $fs ) $fs += 3; else $fs = 15; // iconsize = fontsize+3, Default to 15
$dh = $fs + '6';
$size = 'font-size:' . ( $fs - 3 ) . 'px;';
// Open the rating box
$result .= '
<div
id="wppa-rating-' . wppa( 'mocc' ) . '"
class="wppa-rating-numeric-box ' . ( $idorlb ? $class : 'wppa-box wppa-nav wppa-nav-text' ) . '"
style="' . $size . 'text-align:center;"
> ';
// Graphic display ?
if ( wppa_opt( 'rating_display_type' ) == 'graphic' || $is_lightbox ) {
if ( wppa_opt( 'rating_max' ) == '5' ) {
$r[1] = __( 'very low', 'wp-photo-album-plus' );
$r['2'] = __( 'low', 'wp-photo-album-plus' );
$r['3'] = __( 'average', 'wp-photo-album-plus' );
$r['4'] = __( 'high', 'wp-photo-album-plus' );
$r['5'] = __( 'very high', 'wp-photo-album-plus' );
}
else for ( $i = 1; $i <= 10; $i++ ) $r[$i] = $i;
$style = 'height:' . wppa_icon_size( $fs.'px;', 2 ) . ' margin:0 0 -3px 0; padding:0; box-shadow:none; display:inline;background-color:transparent;';
$icon = 'star.ico';
$avgrat_label = ( wppa_opt( 'initial_colwidth' ) < wppa_opt( 'mini_treshold' ) ? __( 'Avg.', 'wp-photo-album-plus' ) : __( 'Average rating', 'wp-photo-album-plus' ) );
$myrat_label = ( wppa_opt( 'initial_colwidth' ) < wppa_opt( 'mini_treshold' ) ? __( 'Mine', 'wp-photo-album-plus' ) : __( 'My rating', 'wp-photo-album-plus' ) );
// Display avg rating
if ( wppa_switch( 'show_avg_rating' ) ) {
if ( $id ) {
$avgrat = wppa_get_rating_by_id( $id, 'nolabel' );
$opac = array();
$i = 1;
while ( $i <= wppa_opt( 'rating_max' ) ) {
if ( $avgrat >= $i ) {
$opac[$i] = 'opacity:1;';
}
else if ( $avgrat <= ( $i - 1) ) {
$opac[$i] = 'opacity:0.2;';
}
else {
$opac[$i] = 'opacity:'.(0.2 + 0.8 * ($avgrat-$i+1));
}
$i++;
}
}
$result .= '<span'.
' id="wppa-avg-rat-' . wppa( 'mocc' ) . '"' .
' class="wppa-rating-label"' .
' >' .
$avgrat_label .
'</span> ';
$i = 1;
while ( $i <= wppa_opt( 'rating_max' ) ) {
$result .= '<img' .
' id="wppa-avg-' . wppa( 'mocc' ) . '-' . $i . '"' .
' class="wppa-rating-star wppa-avg-' . wppa( 'mocc' ) . '-' . $i . ' wppa-avg-'.wppa( 'mocc' ).' no-shadow"' .
' style="' .
$style .
( $id ? $opac[$i] : '' ) .
'"' .
' src="' . wppa_get_imgdir() . $icon . '"' .
' alt=" ' . $i . '"' .
' title="'.__('Average rating', 'wp-photo-album-plus' ).': '.$r[$i].'"' .
' />';
$i++;
}
}
$result .= '<img' .
' id="wppa-filler-'.wppa( 'mocc' ).'"' .
' src="'.wppa_get_imgdir().'transp.png"' .
' alt="f"' .
' style="width:'.wppa_opt( 'ratspacing').'px; height:15px; box-shadow:none; padding:0; margin:0; border:none;"' .
' />';
// Display my rating
// Logged in
if ( ! wppa_user_is_basic() && is_user_logged_in() ) {
// Rating on 2 lines?
if ( wppa_switch( 'show_avg_mine_2' ) && wppa_switch( 'show_avg_rating' ) ) {
$result .= '<br>';
}
// Text left if no avg rating OR on 2 lines
if ( ! wppa_switch( 'show_avg_rating' ) || wppa_switch( 'show_avg_mine_2' ) ) {
$result .= '<span' .
' id="wppa-my-rat-'.wppa( 'mocc' ).'" ' .
' class="wppa-rating-label"' .
'>' .
$myrat_label .
'</span> ';
}
// Show dislike icon?
$pad = round( ( wppa_opt( 'ratspacing' ) - $fs ) / 2 );
if ( $pad < 5 ) $pad = '5';
if ( wppa_opt( 'dislike_mail_every' ) ) {
$confirm = esc_attr( str_replace( '"', "'", __('Are you sure you want to mark this image as inappropriate?', 'wp-photo-album-plus' ) ) );
$result .= '<img' .
' id="wppa-dislike-'.wppa( 'mocc' ).'"' .
' title="'.__('Click this if you do NOT like this image!', 'wp-photo-album-plus' ).'"' .
' src="'.wppa_get_imgdir().'thumbdown.png"' .
' alt="d"' .
' style="height:'.wppa_icon_size( $fs.'px;', 2 ).'; margin:0 0 -3px 0; padding:0 '.$pad.'px; box-shadow:none; display:inline;opacity:'.(wppa_opt('star_opacity')/100).'"' .
' class="wppa-rating-thumb no-shadow"' .
' onmouseover="jQuery(this).stop().fadeTo(100, 1.0)"' .
' onmouseout="jQuery(this).stop().fadeTo(100, wppaStarOpacity)"' .
' onclick="';
if ( $idorlb ) {
$result .= 'if (confirm(\'' . $confirm . '\')) { wppaOvlRateIt( \'' . wppa_encrypt_photo($id) . '\', -1, ' . ( $id ? wppa('mocc') : 0 ) . ' ); }';
}
else {
$result .= 'if (confirm(\'' . $confirm . '\')) { wppaRateIt( ' . wppa( 'mocc' ) . ', -1); }';
}
$result .= '"' .
' />';
if ( $idorlb ) {
$mylast = wppa_get_my_last_vote( $id );
if ( $mylast == '-1' ) {
wppa_js( 'jQuery(\'#wppa-dislike-'.wppa( 'mocc' ).'\').css(\'display\', \'none\');' );
}
}
if ( wppa_switch( 'dislike_show_count' ) ) {
$result .= '<span' .
' id="wppa-discount-' . wppa( 'mocc' ) . '"' .
' style="cursor:default"' .
' title="' . __('Number of people who marked this photo as inappropriate', 'wp-photo-album-plus' ) . '"' .
' >' .
'</span>';
}
}
// Display the my rating stars
if ( $id ) {
$myavgrat = wppa_get_my_rating_by_id( $id, 'nolabel' );
$opac = array();
$i = 1;
while ( $i <= wppa_opt( 'rating_max' ) ) {
if ( $myavgrat >= $i ) {
$opac[$i] = 'opacity:1;';
}
else if ( $myavgrat <= ( $i - 1) ) {
$opac[$i] = 'opacity:0.2;';
}
else {
$opac[$i] = 'opacity:'.(0.2 + 0.8 * ($myavgrat-$i+1));
}
$i++;
}
}
$i = 1;
while ( $i <= wppa_opt( 'rating_max' ) ) {
$result .= '<img' .
' id="wppa-rate-' . wppa( 'mocc' ) . '-' . $i . '"' .
' class="wppa-rating-star wppa-rate-' . wppa( 'mocc' ) . '-' . $i . ' wppa-rate-'.wppa( 'mocc' ).' no-shadow"' .
' style="' .
$style .
( $id ? $opac[$i] : '' ) .
'"' .
' src="'.wppa_get_imgdir().$icon.'"' .
' alt="'.$i.'"' .
' title="'.__('My rating', 'wp-photo-album-plus' ).': '.$r[$i].'"' .
// Follow and leave are different for slideshw and lightbox et al
( $id ?
' onmouseover="wppaOvlFollowMe('.wppa( 'mocc' ).', '.$i.', '.$myavgrat.' )"' .
' onmouseout="wppaOvlLeaveMe('.wppa( 'mocc' ).', '.$i.', '.$myavgrat.' )"' :
' onmouseover="wppaFollowMe('.wppa( 'mocc' ).', '.$i.')"' .
' onmouseout="wppaLeaveMe('.wppa( 'mocc' ).', '.$i.')"' ) .
( $idorlb ? ' onclick="wppaOvlRateIt(\''.wppa_encrypt_photo($id).'\', '.$i.', ' . ( $id ? wppa('mocc') : 0 ) . ', ' . $reload . ' )"' :
' onclick="wppaRateIt('.wppa( 'mocc' ).', '.$i.')"' ) .
' />';
$i++;
}
// Text right if avg rating diaplayed AND not on two lines
if ( wppa_switch( 'show_avg_rating' ) && ! wppa_switch( 'show_avg_mine_2' ) ) {
$result .= ' ' .
'<span' .
' id="wppa-my-rat-'.wppa( 'mocc' ).'" ' .
' class="wppa-rating-label"' .
'>' .
$myrat_label .
'</span>';
}
}
elseif ( wppa_user_is_basic() ) {
$result .= __( 'You must upgrade your membership to enter a comment', 'wp-photo-album-plus' );
}
else {
if ( wppa_switch( 'login_links' ) ) {
/* translators: login link */
$result .= sprintf(__( 'You must <a href="%s">login</a> to vote' , 'wp-photo-album-plus' ), wppa_opt( 'login_url' ) );
}
else {
$result .= __( 'You must login to vote' , 'wp-photo-album-plus' );
}
}
}
// display_type = numeric?
elseif ( wppa_opt( 'rating_display_type' ) == 'numeric' ) {
// Display avg rating
if ( wppa_switch( 'show_avg_rating' ) ) {
$result .= __('Average rating', 'wp-photo-album-plus' ).': ' .
'<span id="wppa-numrate-avg-'.wppa( 'mocc' ).'"></span>' .
' •';
}
// Display my rating
// Logged in
if ( is_user_logged_in() ) {
// Show dislike icon?
$pad = round( ( wppa_opt( 'ratspacing' ) - $fs ) / 2 );
if ( $pad < 5 ) $pad = '5';
if ( wppa_opt( 'dislike_mail_every') ) {
$result .= '<div' .
' id="wppa-dislike-imgdiv-'.wppa( 'mocc' ).'"' .
' style="display:inline"' .
' >';
$confirm = esc_attr( str_replace( '"', "'", __('Are you sure you want to mark this image as inappropriate?', 'wp-photo-album-plus' ) ) );
$result .= '<img' .
' id="wppa-dislike-'.wppa( 'mocc' ).'"' .
' title="'.__('Click this if you do NOT like this image!', 'wp-photo-album-plus' ).'"' .
' src="'.wppa_get_imgdir().'thumbdown.png"' .
' alt="d"' .
' style="height:'.wppa_icon_size( $fs.'px;', 2 ).' margin:0 0 -3px 0; padding:0 '.$pad.'px; box-shadow:none; display:inline;"' .
' class="no-shadow"' .
' onmouseover="jQuery(this).stop().fadeTo(100, 1.0)"' .
' onmouseout="jQuery(this).stop().fadeTo(100, wppaStarOpacity)"' .
' onclick="';
if ( $idorlb ) {
$result .= 'if (confirm(\'' . $confirm . '\')) { wppaOvlRateIt( \'' . wppa_encrypt_photo($id) . '\', -1, ' . ( $id ? wppa('mocc') : 0 ) . ' ); }';
}
else {
$result .= 'if (confirm(\'' . $confirm . '\')) { wppaRateIt( ' . wppa( 'mocc' ) . ', -1); }';
}
$result .= '"' .
' />';
$result .= '</div>';
if ( wppa_switch( 'dislike_show_count') ) {
$result .= '<span' .
' id="wppa-discount-'.wppa( 'mocc' ).'"' .
' style="cursor:default"' .
' title="'.__('Number of people who marked this photo as inappropriate', 'wp-photo-album-plus' ).'"' .
' >' .
'</span>';
}
}
$result .= ' <span class="wppa-my-rat-' . wppa( 'mocc' ) . '" >'.__('My rating:', 'wp-photo-album-plus' ).'</span>';
$result .= '<span id="wppa-numrate-mine-' . wppa( 'mocc' ) . '" ></span>';
}
else {
if ( wppa_switch( 'login_links' ) ) {
/* translators: login link */
$result .= sprintf(__( 'You must <a href="%s">login</a> to vote', 'wp-photo-album-plus' ), wppa_opt( 'login_url' ) );
}
else {
$result .= __( 'You must login to vote', 'wp-photo-album-plus' );
}
}
}
// Close rating box
$result .= '</div>';
return $result;
}
function wppa_slide_filmstrip( $thumbs ) {
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
$do_it = false; // Init
if ( is_feed() ) $do_it = true; // feed -> do it to indicate that there is a slideshow
if ( wppa_switch( 'filmstrip' ) ) { // option on
if ( ! wppa( 'is_slideonly' ) ) $do_it = true; // always except slideonly
if ( wppa( 'film_on' ) ) $do_it = true; // explicitly turned on
}
if ( wppa( 'is_slideonlyf' ) ) $do_it = true; // Fix in 9.0.08
if ( ! $do_it ) return; // Don't do it
if ( ! $thumbs || count( $thumbs ) < 1 ) return; // No items
$preambule = wppa_get_preambule();
$width = ( wppa_opt( 'film_thumbsize' ) + wppa_opt( 'tn_margin' ) ) * ( count( $thumbs ) + 2 * $preambule );
$width += wppa_opt( 'tn_margin' ) + 100;
$height = wppa_opt( 'film_thumbsize' ) + wppa_opt( 'tn_margin' );
if ( wppa_opt( 'film_type' ) == 'canvas' ) {
$height = floor( wppa_opt( 'film_thumbsize' ) / wppa_opt( 'film_aspect' ) ) + wppa_opt( 'tn_margin' );
}
$height1 = wppa_opt( 'film_thumbsize' );
$topmarg = $height / 2 - 12;
$marg = wppa_switch( 'film_arrows' ) ? '42' : 0;
$fs = '24';
$fw = '42';
if ( wppa_in_widget() ) {
$width /= 2;
$topmarg /= 2;
$height /= 2;
$height1 /= 2;
$marg = wppa_switch( 'film_arrows' ) ? '21' : 0;
$fs = '12';
$fw = '21';
}
$conw = wppa_get_container_width();
if ( $conw < 1 ) $conw *= 640;
$w = $conw - ( 2*6 + 2*$marg + ( wppa_opt( 'bwidth' ) ? 2*wppa_opt( 'bwidth' ) : 0 ) ); /* 2*padding + 2*arrows + 2*border */
if ( wppa_in_widget() ) $w = $conw - ( 2*6 + 2*$marg + 2*wppa_opt( 'bwidth' ) ); /* 2*padding + 2*arrow + 2*border */
$IE6 = 'width: '.$w.'px;';
$pagsiz = round( $w / ( wppa_opt( 'film_thumbsize' ) + wppa_opt( 'tn_margin' ) ) );
if ( wppa_in_widget() ) $pagsiz = round( $w / ( wppa_opt( 'film_thumbsize' ) / 2 + wppa_opt( 'tn_margin' ) / 2 ) );
wppa_js( 'wppaFilmPageSize[' . wppa( 'mocc' ) . '] = ' . $pagsiz . ';' );
if ( is_feed() ) {
wppa_out( '<div>' );
}
else {
$iconsize = wppa_icon_size( $fs . 'px;' );
wppa_out( '
<div
class="wppa-box wppa-nav wppa-filmstrip-box"
style="text-align:center;height:'.$height.'px;"
>' );
if ( wppa_switch( 'film_arrows' ) ) {
wppa_out( '
<div
class="wppa-fs-arrow-cont-'.wppa( 'mocc' ).'"
style="float:left; text-align:left; cursor:pointer; margin-top:'.$topmarg.'px; width: '.$fw.'px; font-size: '.$fs.'px;"
>
<span
class="wppa-first-'.wppa( 'mocc' ).' wppa-arrow"
style="display:inline-block;"
id="first-film-arrow-'.wppa( 'mocc' ).'"
onclick="wppaFirst('.wppa( 'mocc' ).');"
title="'.__('First', 'wp-photo-album-plus' ).'"
>' .
wppa_get_svghtml( 'Backward-Button', $iconsize, false, false ) . '
</span>
</div>
<div
class="wppa-fs-arrow-cont-'.wppa( 'mocc' ).'"
style="float:right; text-align:right; cursor:pointer; margin-top:'.$topmarg.'px; width: '.$fw.'px; font-size: '.$fs.'px;"
>
<span
class="wppa-last-'.wppa( 'mocc' ).' wppa-arrow"
style="display:inline-block;"
id="last-film-arrow-'.wppa( 'mocc' ).'"
onclick="wppaLast('.wppa( 'mocc' ).');"
title="'.__('Last', 'wp-photo-album-plus' ).'"
>' .
wppa_get_svghtml( 'Forward-Button', $iconsize, false, false ) . '
</span>
</div>' );
}
wppa_out( '
<div
id="filmwindow-'.wppa( 'mocc' ).'"
class="filmwindow"
style="'.$IE6.' position:absolute !important; display: block; height:'.$height.'px; margin: 0 0 0 '.$marg.'px; overflow:hidden"
>
<div
id="wppa-filmstrip-'.wppa( 'mocc' ).'"
class="wppa-filmstrip"
style="height:'.$height1.'px; width:'.$width.'px; max-width:'.$width.'px;margin-left: -100px;margin-bottom:4px;"
>' );
}
$cnt = count( $thumbs );
$start = $cnt - $preambule;
$end = $cnt;
$idx = $start;
// Preambule
while ( $idx < $end ) {
$glue = $cnt == ( $idx + 1 ) ? true : false;
$ix = $idx;
while ( $ix < 0 ) {
$ix += $cnt;
}
if ( isset( $thumbs[$ix] ) ) {
$thumb = $thumbs[$ix];
wppa_do_filmthumb( $thumb['id'], $ix, 'pre', $glue );
}
$idx++;
}
// Real thumbs
$idx = 0;
foreach ( $thumbs as $tt ) {
$thumb = $tt;
$glue = $cnt == ( $idx + 1 ) ? true : false;
wppa_do_filmthumb( $thumb['id'], $idx, '', $glue );
$idx++;
}
// Postambule
$start = 0;
$end = $preambule;
$idx = $start;
while ( $idx < $end ) {
$ix = $idx;
while ( $ix >= $cnt ) $ix -= $cnt;
if ( isset( $thumbs[$ix] ) ) {
$thumb = $thumbs[$ix];
wppa_do_filmthumb( $thumb['id'], $ix, 'post' );
}
$idx++;
}
if ( is_feed() ) {
wppa_out( '</div>' );
}
else {
wppa_out( '
</div>
<div style="clear:both"></div>
</div>
</div>' );
}
}
function wppa_startstop_icons() {
// Do they need us?
if ( ! wppa_switch( 'show_start_stop_icons' ) ) {
return;
}
$iconsize = ( wppa_switch( 'startstop_new' ) ? wppa_icon_size( '60px;', 1 ) : wppa_icon_size( '48px;', 1 ) );
$margin = ( wppa_switch( 'startstop_new' ) ? wppa_icon_size( '60px;', 1, 0.5 ) : wppa_icon_size( '48px;', 1, 0.5 ) );
// Create and output the html
wppa_out( '<div' .
' id="wppa-startstop-icon-' . wppa( 'mocc' ) . '"' .
' style="' .
'position:absolute;' .
'left:50%;' .
'margin-left:-' . $margin .
'top:50%;' .
'margin-top:-' . $margin .
'z-index:90;' .
'width:' . $iconsize .
'opacity:0.8;' .
'cursor:pointer;' .
'box-shadow:none;' .
'"' .
' onmouseover="jQuery(this).stop().fadeTo(200,0.8);"' .
' ontouchstart="jQuery(this).stop().fadeTo(200,0.8);"' .
' onmouseout="jQuery(this).stop().fadeTo(200,0);"' .
' ontouchend="jQuery(this).stop().fadeTo(200,0);"' .
' onclick="wppaStartStop( ' . wppa( 'mocc' ) . ', -1 );"' .
// ' onload="jQuery(this).stop().fadeTo(1000,0);"' .
' >' .
( wppa_switch( 'startstop_new' ) ?
wppa_get_svghtml( 'Play-Button-New', $iconsize, false, true, 0, 0, 0, 0 )
: wppa_get_svghtml( 'Play-Button', $iconsize, false, true, 0, '5', '50', '50' ) ) .
'</div>'
);
wppa_js( 'jQuery(document).ready(jQuery(\'#wppa-startstop-icon-' . wppa( 'mocc' ) . '\').stop().fadeTo(2500,0));' );
}
function wppa_numberbar( $thumbs ) {
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
if ( is_feed() ) return;
$do_it = false;
if ( wppa_switch( 'show_slideshownumbar') && ! wppa( 'is_slideonly' ) ) $do_it = true;
if ( wppa( 'numbar_on' ) ) $do_it = true;
if( ! $do_it ) return;
// get the data
// $thumbs = wppa_get_photos();
if ( empty( $thumbs ) ) return;
// get the sizes
$size_given = is_numeric( wppa_opt( 'fontsize_numbar' ) );
if ( $size_given ) {
$size = wppa_opt( 'fontsize_numbar' );
if ( wppa_in_widget() ) $size /= 2;
}
else {
$size = wppa_in_widget() ? '9' : '12';
}
if ( $size < '9') $size = '9';
$size_2 = floor( $size / 2) ;
$size_4 = floor( $size_2 / 2 );
$size_32 = floor( $size * 3 / 2 );
// make the numbar style
$style = 'position:absolute; bottom:'.$size.'px; right:0; margin-right:'.$size_2.'px; ';
// start the numbar
wppa_out( '<div class="wppa-numberbar" style="'.$style.'">' );
$numid = 0;
// make the elementstyles
$style = 'display:block;' .
'float:left;' .
'padding:0 ' .
$size_4 . 'px;' .
'margin-right:' . $size_2 . 'px;' .
'font-weight:' . wppa_opt( 'fontweight_numbar' ) . ';';
if ( wppa_opt( 'fontfamily_numbar' ) ) {
$style .= 'font-family:' . wppa_opt( 'fontfamily_numbar' ) .';';
}
if ( wppa_opt( 'fontcolor_numbar' ) ) {
$style .= 'color:' . wppa_opt( 'fontcolor_numbar' ) . ';';
}
if ( $size_given ) {
$style .= 'font-size:' . $size . 'px;line-height:' . $size_32 . 'px;';
}
$style_active = $style;
if ( wppa_opt( 'bgcolor_numbar' ) ) {
$style .= 'background-color:' . wppa_opt( 'bgcolor_numbar' ) . ';';
}
if ( wppa_opt( 'bgcolor_numbar_active' ) ) {
$style_active .= 'background-color:' . wppa_opt( 'bgcolor_numbar_active' ) . ';';
}
if ( wppa_opt( 'bcolor_numbar' ) ) {
$style .= 'border:1px solid ' . wppa_opt( 'bcolor_numbar' ) . ';';
}
if ( wppa_opt( 'bcolor_numbar_active' ) ) {
$style_active .= 'border:1px solid ' . wppa_opt( 'bcolor_numbar_active' ) . ';';
}
$count = count( $thumbs );
// do the numbers
foreach ( $thumbs as $tt ) {
/* translators: seqno, count */
$title = sprintf( __( 'Photo %1$d of %2$d', 'wp-photo-album-plus' ), $numid + 1, $count );
wppa_out( '<a' .
' id="wppa-numbar-'.wppa( 'mocc' ).'-'.$numid.'"' .
' title="'.$title.'"' .
' ' . ($numid == 0 ? ' class="wppa-numbar-current" ' : '') .
' style="' . ($numid == 0 ? $style_active : $style) . '"' .
' onclick="wppaGotoKeepState('.wppa( 'mocc' ).',' . $numid . ');return false;"' .
' >' .
( $numid + 1 ) .
'</a>'
);
if ( $numid == 0 ) {
wppa_out( '<span
id="wppa-nbar-' . wppa( 'mocc' ) . '-lodots"
style="float:left;
display:none;
background-color:transparent;
margin-right:6px;
font-weight:bold;"
>...</span>' );
}
if ( $numid == $count - 2 ) {
wppa_out( '<span
id="wppa-nbar-' . wppa( 'mocc' ) . '-hidots"
style="float:left;
display:none;
background-color:transparent;
margin-right:6px;
font-weight:bold;"
>...</span>' );
}
$numid++;
}
wppa_out( '</div>' );
}
function wppa_browsebar( $opt = '' ) {
if ( wppa_get_navigation_type() == 'icons' ) {
wppa_browsebar_icons( $opt );
}
else {
wppa_browsebar_text( $opt );
}
}
function wppa_browsebar_icons( $opt = '' ) {
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
if ( is_feed() ) return;
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) && wppa_switch( 'show_browse_navigation' ) ) $do_it = true;
if ( wppa( 'is_slideonly' ) && wppa( 'browse_on' ) ) $do_it = true;
if ( $do_it ) {
$iconsize = wppa_icon_size( '1.5em;' );
wppa_out( '<div' .
' id="prevnext2-' . wppa( 'mocc' ) . '"' .
' class="wppa-box wppa-nav wppa-nav-text"' .
' style="text-align:center;"' .
' >' .
'<span' .
' id="prev-arrow-' . wppa( 'mocc' ) . '"' .
' class="wppa-prev-' . wppa( 'mocc' ) . ' wppa-nav-text arrow-' . wppa( 'mocc' ) . '"' .
' style="float:left;text-align:left;cursor:pointer"' .
' title="' . __( 'Previous', 'wp-photo-album-plus' ) . '"' .
' onclick="wppaPrev(' . wppa( 'mocc' ) . ')"' .
' >' .
wppa_get_svghtml( 'Prev-Button', $iconsize ) .
'</span>' .
'<span' .
' id="next-arrow-' . wppa( 'mocc' ) . '"' .
' class="wppa-next-' . wppa( 'mocc' ) . ' wppa-nav-text arrow-' . wppa( 'mocc' ) . '"' .
' style="float:right;text-align:right;cursor:pointer"' .
' title="' . __( 'Next', 'wp-photo-album-plus' ) . '"' .
' onclick="wppaNext(' . wppa( 'mocc' ) . ')"' .
' >' .
wppa_get_svghtml( 'Next-Button', $iconsize ) .
'</span>' .
'<span' .
' id="counter-'.wppa( 'mocc' ).'"' .
' class="wppa-nav-text wppa-black"' .
' style="text-align:center;cursor:pointer"' .
' onclick="wppaStartStop('.wppa( 'mocc' ).', -1);"' .
' title="'.__('Click to start/stop', 'wp-photo-album-plus' ).'"' .
' > ' .
'</span>' .
'<div style="clear:both"></div>' .
'</div>'
);
}
}
function wppa_browsebar_text( $opt = '' ) {
// A single image slideshow needs no navigation
if ( wppa( 'is_single' ) ) return;
if ( is_feed() ) return;
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) && wppa_switch( 'show_browse_navigation' ) ) $do_it = true;
if ( wppa( 'is_slideonly' ) && wppa( 'browse_on' ) ) $do_it = true;
if ( $do_it ) {
wppa_out( '<div' .
' id="prevnext2-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-nav wppa-nav-text"' .
' style="text-align: center;"' .
' >' .
'<a' .
' id="prev-arrow-'.wppa( 'mocc' ).'"' .
' class="wppa-prev-'.wppa( 'mocc' ).' wppa-nav-text arrow-'.wppa( 'mocc' ).'"' .
' style="float:left; text-align:left; cursor:pointer"' .
' onclick="wppaPrev('.wppa( 'mocc' ).')"' .
' title="' . __( 'Previous item', 'wp-photo-album-plus' ) . '"' .
' >' .
'</a>' .
'<a' .
' id="next-arrow-'.wppa( 'mocc' ).'"' .
' class="wppa-next-'.wppa( 'mocc' ).' wppa-nav-text arrow-'.wppa( 'mocc' ).'"' .
' style="float:right; text-align:right; cursor:pointer"' .
' onclick="wppaNext('.wppa( 'mocc' ).')"' .
' title="' . __( 'Next item', 'wp-photo-album-plus' ) . '"' .
' >' .
'</a>' .
'<span' .
' id="counter-'.wppa( 'mocc' ).'"' .
' class="wppa-nav-text wppa-black"' .
' style="text-align:center; cursor:pointer"' .
' onclick="wppaStartStop('.wppa( 'mocc' ).', -1);"' .
' title="'.__('Click to start/stop', 'wp-photo-album-plus' ).'"' .
' > ' .
'</span>' .
'</div>'
);
}
}
function wppa_comments( $opt = '' ) {
if ( is_feed() ) {
if ( wppa_switch( 'show_comments' ) ) {
wppa_dummy_bar( __( '- - - Comments box activated - - -', 'wp-photo-album-plus' ) );
return;
}
}
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) && wppa_is_item_displayable( wppa( 'start_album' ), 'comments', 'show_comments' ) && ! wppa_in_widget() ) $do_it = true;
if ( $do_it ) {
wppa_out( '<div' .
' id="wppa-comments-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-comments"' .
' style="text-align: center;"' .
' >' .
'</div>'
);
}
}
function wppa_iptc( $opt = '' ) {
if ( is_feed() ) {
if ( wppa_switch( 'show_iptc' ) ) {
wppa_dummy_bar( __( '- - - IPTC box activated - - -', 'wp-photo-album-plus' ) );
}
return;
}
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) && wppa_switch( 'show_iptc' ) && ! wppa_in_widget() ) $do_it = true;
if ( $do_it ) {
wppa_out( '<div' .
' id="iptc-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-box-text wppa-iptc"' .
' style="text-align: center;"' .
' >' .
'</div>'
);
}
}
function wppa_exif( $opt = '' ) {
if ( is_feed() ) {
if ( wppa_switch( 'show_exif' ) ) {
wppa_dummy_bar( __( '- - - EXIF box activated - - -', 'wp-photo-album-plus' ) );
}
return;
}
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) && wppa_switch( 'show_exif' ) && ! wppa_in_widget() ) $do_it = true;
if ( $do_it ) {
wppa_out( '<div' .
' id="exif-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-box-text wppa-exif"' .
' style="text-align: center;"' .
' >' .
'</div>'
);
}
}
function wppa_share( $opt = '' ) {
if ( is_feed() ) {
return;
}
$do_it = false;
if ( $opt != 'optional' ) $do_it = true;
if ( ! wppa( 'is_slideonly' ) ) {
if ( wppa_switch( 'share_on') && ! wppa_in_widget() ) $do_it = true;
if ( wppa_switch( 'share_on_widget') && wppa_in_widget() ) $do_it = true;
}
if ( $do_it ) {
wppa_out( '<div' .
' id="wppa-share-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-box-text wppa-share"' .
' style="text-align: center;"' .
' >' .
'</div>'
);
}
}
function wppa_errorbox( $text ) {
wppa_out( '<div' .
' id="error-'.wppa( 'mocc' ).'"' .
' class="wppa-box wppa-box-text wppa-nav wppa-errorbox"' .
' style="text-align: center;"' .
' >' .
$text .
'</div>'
);
}