/** @see WP_Widget::widget */ function widget($args, $instance) { global $wpdb; require_once dirname(__FILE__) . '/wppa-links.php'; require_once dirname(__FILE__) . '/wppa-styles.php'; require_once dirname(__FILE__) . '/wppa-functions.php'; require_once dirname(__FILE__) . '/wppa-thumbnails.php'; require_once dirname(__FILE__) . '/wppa-boxes-html.php'; require_once dirname(__FILE__) . '/wppa-slideshow.php'; wppa_initialize_runtime(); wppa('in_widget', 'topten'); wppa_bump_mocc(); extract($args); $instance = wp_parse_args((array) $instance, array('title' => '', 'sortby' => 'mean_rating', 'title' => '', 'album' => '', 'display' => 'thumbs', 'meanrat' => 'yes', 'ratcount' => 'yes', 'viewcount' => 'yes', 'includesubs' => 'yes', 'medalsonly' => 'no', 'showowner' => 'no', 'showalbum' => 'no')); $widget_title = apply_filters('widget_title', $instance['title']); $page = in_array(wppa_opt('topten_widget_linktype'), wppa('links_no_page')) ? '' : wppa_get_the_landing_page('topten_widget_linkpage', __('Top Ten Photos', 'wp-photo-album-plus')); $albumlinkpage = wppa_get_the_landing_page('topten_widget_album_linkpage', __('Top Ten Photo album', 'wp-photo-album-plus')); $max = wppa_opt('topten_count'); $album = $instance['album']; switch ($instance['sortby']) { case 'mean_rating': $sortby = '`mean_rating` DESC, `rating_count` DESC, `views` DESC'; break; case 'rating_count': $sortby = '`rating_count` DESC, `mean_rating` DESC, `views` DESC'; break; case 'views': $sortby = '`views` DESC, `mean_rating` DESC, `rating_count` DESC'; break; } $display = $instance['display']; $meanrat = $instance['meanrat'] == 'yes'; $ratcount = $instance['ratcount'] == 'yes'; $viewcount = $instance['viewcount'] == 'yes'; $includesubs = $instance['includesubs'] == 'yes'; $albenum = ''; $medalsonly = $instance['medalsonly'] == 'yes'; $showowner = $instance['showowner'] == 'yes'; $showalbum = $instance['showalbum'] == 'yes'; wppa('medals_only', $medalsonly); $likes = wppa_opt('rating_display_type') == 'likes'; // When likes only, mean rating has no meaning, chan to (rating)(like)count if ($likes && $instance['sortby'] == 'mean_rating') { $instance['sortby'] = 'rating_count'; } // Album specified? if ($album) { // All albums ? if ($album == '-2') { $album = '0'; } // Albums of owner is current logged in user or public? if ($album == '-3') { $temp = $wpdb->get_results("SELECT `id` FROM `" . WPPA_ALBUMS . "` WHERE `owner` = '--- public ---' OR `owner` = '" . wppa_get_user() . "' ORDER BY `id`", ARRAY_A); $album = ''; if ($temp) { foreach ($temp as $t) { $album .= '.' . $t['id']; } $album = ltrim($album, '.'); } } // Including subalbums? if ($includesubs) { $albenum = wppa_alb_to_enum_children($album); $albenum = wppa_expand_enum($albenum); $album = str_replace('.', ',', $albenum); } // Doit if ($medalsonly) { $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` " . "WHERE `album` IN (" . $album . ") " . "AND `status` IN ( 'gold', 'silver', 'bronze' ) " . "ORDER BY " . $sortby . " " . "LIMIT " . $max, ARRAY_A); } else { $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` " . "WHERE `album` IN (" . $album . ") " . "ORDER BY " . $sortby . " " . "LIMIT " . $max, ARRAY_A); } } else { if ($medalsonly) { $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` " . "WHERE `status` IN ( 'gold', 'silver', 'bronze' ) " . "ORDER BY " . $sortby . " " . "LIMIT " . $max, ARRAY_A); } else { $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` " . "ORDER BY " . $sortby . " " . "LIMIT " . $max, ARRAY_A); } } $widget_content = "\n" . '<!-- WPPA+ TopTen Widget start -->'; $maxw = wppa_opt('topten_size'); $maxh = $maxw; $lineheight = wppa_opt('fontsize_widget_thumb') * 1.5; $maxh += $lineheight; if ($meanrat) { $maxh += $lineheight; } if ($ratcount) { $maxh += $lineheight; } if ($viewcount) { $maxh += $lineheight; } if ($showowner) { $maxh += $lineheight; } if ($showalbum) { $maxh += $lineheight; } if ($thumbs) { foreach ($thumbs as $image) { $thumb = $image; // Make the HTML for current picture if ($display == 'thumbs') { $widget_content .= "\n" . '<div class="wppa-widget" style="width:' . $maxw . 'px; height:' . $maxh . 'px; margin:4px; display:inline; text-align:center; float:left;">'; } else { $widget_content .= "\n" . '<div class="wppa-widget" >'; } if ($image) { $no_album = !$album; if ($no_album) { $tit = __('View the top rated photos', 'wp-photo-album-plus'); } else { $tit = esc_attr(__(stripslashes($image['description']))); } $compressed_albumenum = wppa_compress_enum($albenum); $link = wppa_get_imglnk_a('topten', $image['id'], '', $tit, '', $no_album, $compressed_albumenum); $file = wppa_get_thumb_path($image['id']); $imgstyle_a = wppa_get_imgstyle_a($image['id'], $file, $maxw, 'center', 'ttthumb'); $imgurl = wppa_get_thumb_url($image['id'], '', $imgstyle_a['width'], $imgstyle_a['height']); $imgevents = wppa_get_imgevents('thumb', $image['id'], true); $title = $link ? esc_attr(stripslashes($link['title'])) : ''; $widget_content .= wppa_get_the_widget_thumb('topten', $image, $album, $display, $link, $title, $imgurl, $imgstyle_a, $imgevents); $widget_content .= "\n\t" . '<div style="font-size:' . wppa_opt('fontsize_widget_thumb') . 'px; line-height:' . $lineheight . 'px;">'; // Display (owner) ? if ($showowner) { $widget_content .= '<div>(' . $image['owner'] . ')</div>'; } // Display (album) ? if ($showalbum) { $href = wppa_convert_to_pretty(wppa_encrypt_url(wppa_get_album_url($image['album'], $albumlinkpage, 'content', '1'))); $widget_content .= '<div>(<a href="' . $href . '" >' . wppa_get_album_name($image['album']) . '</a>)</div>'; } // Display the rating if ($likes) { $lt = wppa_get_like_title_a($image['id']); } switch ($instance['sortby']) { case 'mean_rating': if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($ratcount == 'yes') { $n = wppa_get_rating_count_by_id($image['id']); $widget_content .= '<div>' . sprintf(_n('%d vote', '%d votes', $n, 'wp-photo-album-plus'), $n) . '</div>'; } if ($viewcount == 'yes') { $n = $image['views']; $widget_content .= '<div>' . sprintf(_n('%d view', '%d views', $n, 'wp-photo-album-plus'), $n) . '</div>'; } break; case 'rating_count': if ($ratcount == 'yes') { $n = wppa_get_rating_count_by_id($image['id']); $widget_content .= '<div>' . ($likes ? $lt['display'] : sprintf(_n('%d vote', '%d votes', $n, 'wp-photo-album-plus'), $n)) . '</div>'; } if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($viewcount == 'yes') { $n = $image['views']; $widget_content .= '<div>' . sprintf(_n('%d view', '%d views', $n, 'wp-photo-album-plus'), $n) . '</div>'; } break; case 'views': if ($viewcount == 'yes') { $n = $image['views']; $widget_content .= '<div>' . sprintf(_n('%d view', '%d views', $n, 'wp-photo-album-plus'), $n) . '</div>'; } if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($ratcount == 'yes') { $n = wppa_get_rating_count_by_id($image['id']); $widget_content .= '<div>' . ($likes ? $lt['display'] : sprintf(_n('%d vote', '%d votes', $n, 'wp-photo-album-plus'), $n)) . '</div>'; } break; } $widget_content .= '</div>'; } else { // No image $widget_content .= __('Photo not found', 'wp-photo-album-plus'); } $widget_content .= "\n" . '</div>'; } } else { $widget_content .= __('There are no rated photos (yet)', 'wp-photo-album-plus'); } $widget_content .= '<div style="clear:both"></div>'; $widget_content .= "\n" . '<!-- WPPA+ TopTen Widget end -->'; echo "\n" . $before_widget; if (!empty($widget_title)) { echo $before_title . $widget_title . $after_title; } echo $widget_content . $after_widget; //wppa( 'in_widget', false ); wppa_reset_occurrance(); }
function wppa_get_ss_to_tn_link($page = '0', $id = '0') { global $thumbs; global $thumbs_ids; // Search ? if (wppa('src') && wppa('mocc') == '1' && !wppa('is_related')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-searchstring=' . stripslashes(wppa('searchstring')); } elseif (wppa('is_upldr')) { if (wppa('start_album')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-upldr=' . wppa('is_upldr') . '&wppa-album=' . wppa('start_album'); } else { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-upldr=' . wppa('is_upldr'); } } elseif (wppa('is_topten')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-topten=' . wppa('topten_count') . '&wppa-album=' . wppa('start_album'); } elseif (wppa('is_lasten')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-lasten=' . wppa('lasten_count') . '&wppa-album=' . wppa('start_album'); } elseif (wppa('is_comten')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-comten=' . wppa('comten_count') . '&wppa-album=' . wppa('start_album'); } elseif (wppa('is_featen')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-featen=' . wppa('featen_count') . '&wppa-album=' . wppa('start_album'); } elseif (wppa('is_tag')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-tag=' . wppa('is_tag') . '&wppa-album=' . wppa('start_album'); } elseif (wppa('is_cat')) { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-cat=' . wppa('is_cat') . '&wppa-album=' . wppa('start_album'); } else { $thumbhref = wppa_get_permalink($page) . 'wppa-cover=0&wppa-occur=' . wppa('occur') . '&wppa-album=' . wppa('start_album'); } // $id is the id. See to what page we have to go $page = '1'; $p = wppa_opt('thumb_page_size'); if ($p) { $i = '0'; foreach ($thumbs_ids as $ti) { // $thumbs_ids is setup in function wppa_prepare_slideshow_pagination() if ($id == $ti) { $page = floor($i / $p) + '1'; } $i++; } if ($page > '1') { $thumbhref .= '&wppa-page=' . $page; } } // Make sure the clicked photos thumb is highligted $thumbhref .= '&wppa-hilite=' . $id; $thumbhref = wppa_convert_to_pretty(wppa_trim_wppa_($thumbhref)); return $thumbhref; }
function wppa_get_thumb_masonry($id) { global $wpdb; // Init if (!$id) { wppa_dbg_msg('Please check file wppa-theme.php or any other php file that calls wppa_thumb_masonry(). Argument 1: photo id is missing!', 'red', 'force'); die('Please check your configuration'); } $result = ''; $cont_width = wppa_get_container_width(); $count_cols = ceil($cont_width / wppa_opt('thumbsize')); // Get the photo info $thumb = wppa_cache_thumb($id); // Get the album info $album = wppa_cache_album($thumb['album']); // Get photo info $is_video = wppa_is_video($id); $has_audio = wppa_has_audio($id); $imgsrc = wppa_fix_poster_ext(wppa_get_thumb_path($id), $id); if (!wppa_is_video($id) && !is_file($imgsrc)) { $result .= '<div' . ' class=""' . ' style="' . 'font-size:10px;' . 'color:red;' . 'width:' . wppa_opt('thumbsize') . 'px;' . 'position:static;' . 'float:left;' . '"' . ' >' . sprintf(__('Missing thumbnail image #%s', 'wp-photo-album-plus'), $id) . '</div>'; return $result; } $alt = $album['alt_thumbsize'] == 'yes' ? '_alt' : ''; $imgattr_a = wppa_get_imgstyle_a($id, $imgsrc, wppa_opt('thumbsize' . $alt), 'optional', 'thumb'); // Verical style ? if (wppa_opt('thumbtype') == 'masonry-v') { $imgwidth = wppa_opt('thumbsize'); $imgheight = $imgwidth * wppa_get_thumbratioyx($id); $imgstyle = 'width:100%; height:auto; margin:0; position:relative; box-sizing:border-box;'; $frame_h = ''; } else { $imgheight = wppa_opt('thumbsize'); $imgwidth = $imgheight * wppa_get_thumbratioxy($id); $imgstyle = 'height:100%;' . 'width:auto;' . 'margin:0;' . 'position:relative;' . 'box-sizing:border-box;' . ''; $frame_h = 'height:100%; '; } // Mouseover effect? if (wppa_switch('use_thumb_opacity')) { $opac = wppa_opt('thumb_opacity'); $imgstyle .= ' opacity:' . $opac / 100 . '; filter:alpha( opacity=' . $opac . ' );'; } // Padding if (wppa_is_int(wppa_opt('tn_margin') / 2)) { $imgstyle .= ' padding:' . wppa_opt('tn_margin') / 2 . 'px;'; } else { $p1 = floor(wppa_opt('tn_margin') / 2); $p2 = ceil(wppa_opt('tn_margin') / 2); $imgstyle .= ' padding:' . $p1 . 'px ' . $p2 . 'px ' . $p2 . 'px ' . $p1 . 'px;'; } // Cursor $cursor = $imgattr_a['cursor']; // Popup ? if (wppa_switch('use_thumb_popup')) { // Landscape? if ($imgwidth > $imgheight) { $popwidth = wppa_opt('popupsize'); $popheight = round($popwidth * $imgheight / $imgwidth); } else { $popheight = wppa_opt('popupsize'); $popwidth = round($popheight * $imgwidth / $imgheight); } } else { $popwidth = $imgwidth; $popheight = $imgheight; } $imgurl = wppa_fix_poster_ext(wppa_get_thumb_url($id, '', $popwidth, $popheight), $id); $events = wppa_get_imgevents('thumb', $id); $imgalt = wppa_get_imgalt($id); // returns something like ' alt="Any text" ' $title = esc_attr(wppa_get_masonry_title($id)); // esc_attr( wppa_get_photo_name( $id ) ); // Feed ? if (is_feed()) { $imgattr_a = wppa_get_imgstyle_a($id, $imgsrc, '100', '4', 'thumb'); $style = $imgattr_a['style']; $result .= '<a href="' . get_permalink() . '">' . '<img' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' style="' . $style . '"' . ' />' . '</a>'; return; } // Get the image link if (wppa('is_topten')) { $no_album = !wppa('start_album'); if ($no_album) { $tit = __('View the top rated photos', 'wp-photo-album-plus'); } else { $tit = esc_attr(__(stripslashes($thumb['description']))); } $link = wppa_get_imglnk_a('thumb', $id, '', $tit, '', $no_album); } else { $link = wppa_get_imglnk_a('thumb', $id); } // voor parent uplr // Open the thumbframe // Add class wppa-mas-h-{mocc} for ie if horizontal $is_ie_or_chrome = strpos($_SERVER["HTTP_USER_AGENT"], 'Trident') || strpos($_SERVER["HTTP_USER_AGENT"], 'Chrome'); $result .= ' <div' . ' id="thumbnail_frame_masonry_' . $id . '_' . wppa('mocc') . '"' . ($is_ie_or_chrome && wppa_opt('thumbtype') == 'masonry-h' ? ' class="wppa-mas-h-' . wppa('mocc') . '"' : '') . ' style="' . $frame_h . 'position:static;' . 'float:left;' . 'font-size:12px;' . 'line-height:8px;' . 'overflow:hidden;' . 'box-sizing:content-box;' . '" >'; // The medals $result .= wppa_get_medal_html_a(array('id' => $id, 'size' => 'M', 'where' => 'top')); // See if ajax possible if ($link) { if ($link['is_url']) { // is url if (wppa_switch('allow_ajax') && wppa_opt('thumb_linktype') == 'photo' && wppa_opt('thumb_linkpage') == '0' && !wppa_switch('thumb_blank') && !(wppa_switch('thumb_overrule') && $thumb['linkurl']) && !wppa('is_topten') && !wppa('is_lasten') && !wppa('is_comten') && !wppa('is_featen') && !wppa('is_tag') && !wppa('is_upldr') && !wppa('src') && !wppa('supersearch') && (wppa_is_int(wppa('start_album')) || wppa('start_album') == '')) { // Ajax possible // The a img ajax $p = wppa('calendar') ? '' : '&wppa-photo=' . $id; $onclick = 'wppaDoAjaxRender( ' . wppa('mocc') . ', \'' . wppa_get_slideshow_url_ajax(wppa('start_album'), '0') . '&wppa-photo=' . $id . '\', \'' . wppa_convert_to_pretty(wppa_get_slideshow_url(wppa('start_album'), '0') . $p) . '\' )'; // old $onclick = "wppaDoAjaxRender( ".wppa( 'mocc' ).", '".wppa_get_slideshow_url_ajax( wppa( 'start_album' ), '0' ).'&wppa-photo='.$id."', '".wppa_convert_to_pretty( wppa_get_slideshow_url( wppa( 'start_album' ), '0' )."&wppa-photo=".$id )."' )"; $result .= '<a style="position:static;" class="thumb-img" id="x-' . $id . '-' . wppa('mocc') . '">'; if ($is_video) { // $result .= '<video preload="metadata" onclick="'.$onclick.'" id="i-'.$id.'-'.wppa( 'mocc' ).'" '.$imgalt.' title="'.$title.'" style="'.$imgstyle.' cursor:pointer;" '.$events.' >'.wppa_get_video_body( $id ).'</video>'; $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => 'cursor:pointer;', 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => $onclick, 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' onclick="' . $onclick . '"' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' style="' . $imgstyle . ' cursor:pointer;"' . ' ' . $events . ' />'; } $result .= '</a>'; } else { // non ajax // The a img non ajax $result .= '<a style="position:static;" href="' . $link['url'] . '" target="' . $link['target'] . '" class="thumb-img" id="x-' . $id . '-' . wppa('mocc') . '">'; if ($is_video) { // $result .= '<video preload="metadata" id="i-'.$id.'-'.wppa( 'mocc' ).'" '.$imgalt.' title="'.$title.'" width="'.$imgwidth.'" height="'.$imgheight.'" style="'.$imgstyle.' cursor:pointer;" '.$events.' >'.wppa_get_video_body( $id ).'</video>'; $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => 'cursor:pointer;', 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => '', 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' style="' . $imgstyle . 'cursor:pointer;"' . ' ' . $events . ' />'; } $result .= '</a>'; } } elseif ($link['is_lightbox']) { // The a img $title = wppa_get_lbtitle('thumb', $id); $result .= '<a href="' . $link['url'] . '"' . ' target="' . $link['target'] . '"' . ($is_video ? ' data-videohtml="' . esc_attr(wppa_get_video_body($id)) . '"' . ' data-videonatwidth="' . wppa_get_videox($id) . '"' . ' data-videonatheight="' . wppa_get_videoy($id) . '"' : '') . ($has_audio ? ' data-audiohtml="' . esc_attr(wppa_get_audio_body($id)) . '"' : '') . ' ' . wppa('rel') . '="' . wppa_opt('lightbox_name') . '[occ' . wppa('mocc') . ']"' . ($title ? ' ' . wppa('lbtitle') . '="' . $title . '"' : '') . ' class="thumb-img"' . ' id="x-' . $id . '-' . wppa('mocc') . '">'; // The image $title = wppa_zoom_in($id); // Video? if ($is_video) { $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => $cursor, 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => '', 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' style="' . $imgstyle . $cursor . '"' . ' ' . $events . ' />'; } $result .= '</a>'; } else { // The div img $result .= '<div onclick="' . $link['url'] . '" class="thumb-img" id="x-' . $id . '-' . wppa('mocc') . '" style="height:100%;" >'; // Video? if ($is_video) { $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => 'cursor:pointer;', 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => '', 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' style="' . $imgstyle . 'cursor:pointer;"' . ' ' . $events . ' />'; } $result .= '</div>'; $result .= '<script type="text/javascript">'; $result .= '/* <![CDATA[ */'; $result .= 'wppaPopupOnclick[' . $id . '] = "' . $link['url'] . '";'; $result .= '/* ]]> */'; $result .= '</script>'; } } else { // no link if (wppa_switch('use_thumb_popup')) { $result .= '<div id="x-' . $id . '-' . wppa('mocc') . '" style="height:100%" >'; if ($is_video) { $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => '', 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => '', 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' width="' . $imgwidth . '"' . ' height="' . $imgheight . '"' . ' style="' . $imgstyle . '"' . ' ' . $events . ' />'; } $result .= '</div>'; } else { if ($is_video) { // $result .= '<video preload="metadata" '.$imgalt.' title="'.$title.'" width="'.$imgwidth.'" height="'.$imgheight.'" style="'.$imgstyle.'" '.$events.' >'.wppa_get_video_body( $id ).'</video>'; $result .= wppa_get_video_html(array('id' => $id, 'controls' => false, 'margin_top' => '0', 'margin_bottom' => '0', 'tagid' => 'i-' . $id . '-' . wppa('mocc'), 'cursor' => '', 'events' => $events, 'title' => $title, 'preload' => 'metadata', 'onclick' => '', 'lb' => false, 'class' => '', 'style' => $imgstyle, 'use_thumb' => true)); } else { $result .= '<img' . ' id="i-' . $id . '-' . wppa('mocc') . '"' . ' src="' . $imgurl . '"' . ' ' . $imgalt . ($title ? ' title="' . $title . '"' : '') . ' width="' . $imgwidth . '"' . ' height="' . $imgheight . '"' . ' style="' . $imgstyle . '" ' . $events . ' />'; } } } // The audio when no popup if (wppa_switch('thumb_audio') && wppa_has_audio($id)) { $result .= '<div style="position:relative;z-index:11;">'; // $is_safari = strpos( $_SERVER["HTTP_USER_AGENT"], 'Safari' ); // $cont_h = $is_safari ? 16 : 28; // $audiotop = $imgattr_a['height'] + $imgattr_a['margin-top'] - $cont_h; // if ( ! is_file( $imgsrc ) ) { // Audio without image // $audiotop = wppa_get_audio_control_height(); // $imgwidth = wppa_opt( 'tf_width' ); // $imgheight = wppa_get_audio_control_height(); // } $result .= wppa_get_audio_html(array('id' => $id, 'tagid' => 'a-' . $id . '-' . wppa('mocc'), 'style' => 'width:100%;position:absolute;bottom:0;margin:0;padding:' . wppa_opt('tn_margin') / 2 . 'px;left:0;border:none;z-index:10;')); $result .= '</div>'; } // The medals $result .= wppa_get_medal_html_a(array('id' => $id, 'size' => 'M', 'where' => 'bot')); // Close the thumbframe $result .= '</div>'; return $result; }
function wppa_bcitem($value = '', $href = '', $title = '', $class = '', $ajax = '') { static $sep; // Convert url to pretty $href = wppa_convert_to_pretty($href); // Has content? if (!$value) { return; } // No content if ($href) { wppa_out('<a' . ($ajax && wppa_switch('allow_ajax') ? ' onclick="wppaDoAjaxRender(' . wppa('mocc') . ', \'' . $ajax . '\', \'' . $href . '\' );"' : ' href="' . $href . '"') . ' class="wppa-nav-text ' . $class . '"' . ' style="' . __wcs('wppa-nav-text') . '"' . ' title="' . esc_attr($title) . '" >' . $value . '</a>'); } else { // No link, its the last item wppa_out('<span' . ' id="bc-pname-' . wppa('mocc') . '"' . ' class="wppa-nav-text ' . $class . '"' . ' style="' . ($title ? 'cursor:pointer;' : '') . __wcs('wppa-nav-text') . '"' . ' title="' . esc_attr($title) . '"' . ' >' . $value . '</span>'); return; } // Add seperator if (!$sep) { // Compute the seperator $temp = wppa_opt('bc_separator'); switch ($temp) { case 'url': $size = wppa_opt('fontsize_nav'); if ($size == '') { $size = '12'; } $style = 'height:' . $size . 'px;'; $sep = ' ' . '<img' . ' src="' . wppa_opt('bc_url') . '"' . ' class="no-shadow"' . ' style="' . $style . '"' . ' />' . ' '; break; case 'txt': $sep = ' ' . html_entity_decode(stripslashes(wppa_opt('bc_txt')), ENT_QUOTES) . ' '; break; default: $sep = ' &' . $temp . '; '; } } wppa_out('<span' . ' class="wppa-nav-text ' . $class . '"' . ' style="' . __wcs('wppa-nav-text') . '"' . ' >' . $sep . '</span>'); }
function wppa_get_slide_info($index, $id, $callbackid = '') { global $wpdb; static $user; // Make sure $thumb contains our image data $thumb = wppa_cache_thumb($id); if (!$user) { $user = wppa_get_user(); } $photo = wppa_get_get('photo'); $ratingphoto = wppa_get_get('rating-id'); if (!$callbackid) { $callbackid = $id; } // Process a comment if given for this photo $comment_request = wppa_get_post('commentbtn') && $id == $photo; $comment_allowed = !wppa_switch('comment_login') || is_user_logged_in(); if (wppa_switch('show_comments') && $comment_request && $comment_allowed) { wppa_do_comment($id); } // Find rating if (wppa_switch('rating_on') && !wppa('is_slideonly') && !wppa('is_filmonly')) { // Find my ( avg ) rating $rats = $wpdb->get_results($wpdb->prepare("SELECT `value` FROM `" . WPPA_RATING . "` " . "WHERE `photo` = %s AND `user` = %s AND `status` = 'publish'", $id, $user), ARRAY_A); wppa_dbg_q('Q33v'); if ($rats) { $n = 0; $accu = 0; foreach ($rats as $rat) { $accu += $rat['value']; $n++; } $myrat = $accu / $n; $i = wppa_opt('rating_prec'); $j = $i + '1'; $myrat = sprintf('%' . $j . '.' . $i . 'f', $myrat); } else { $myrat = '0'; } // Find the avg rating $avgrat = wppa_get_rating_by_id($id, 'nolabel'); if (!$avgrat) { $avgrat = '0'; } $avgrat .= '|' . wppa_get_rating_count_by_id($id); // Find the dislike count $discount = $wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM `" . WPPA_RATING . "` WHERE `photo` = %s AND `value` = -1 AND `status` = %s", $id, 'publish')); } else { // Rating off $myrat = '0'; $avgrat = '0'; $discount = '0'; } // Find comments $comment = wppa_switch('show_comments') && !wppa('is_filmonly') && !wppa('is_slideonly') ? wppa_comment_html($id, $comment_allowed) : ''; // Get the callback url. if (wppa_switch('rating_on')) { $url = wppa_get_slide_callback_url($callbackid); $url = str_replace('&', '&', $url); // js use } else { $url = ''; } // Find link url, link title and link target if (wppa_in_widget() == 'ss') { $link = wppa_get_imglnk_a('sswidget', $id); } else { $link = wppa_get_imglnk_a('slideshow', $id); } $linkurl = $link['url']; $linktitle = $link['title']; $linktarget = $link['target']; // Find full image style and size if (wppa('is_filmonly')) { $style_a['style'] = ''; $style_a['width'] = ''; $style_a['height'] = ''; } else { $style_a = wppa_get_fullimgstyle_a($id); } // Find image url if (wppa_switch('fotomoto_on') && !wppa_is_stereo($id)) { $photourl = wppa_get_hires_url($id); } elseif (wppa_use_thumb_file($id, $style_a['width'], $style_a['height']) && !wppa_is_stereo($id)) { $photourl = wppa_get_thumb_url($id, '', $style_a['width'], $style_a['height']); } else { $photourl = wppa_get_photo_url($id, '', $style_a['width'], $style_a['height']); } if (wppa_has_audio($id)) { $photourl = wppa_fix_poster_ext($photourl, $id); } // Find iptc data $iptc = wppa_switch('show_iptc') && !wppa('is_slideonly') && !wppa('is_filmonly') ? wppa_iptc_html($id) : ''; // Find EXIF data $exif = wppa_switch('show_exif') && !wppa('is_slideonly') && !wppa('is_filmonly') ? wppa_exif_html($id) : ''; // Lightbox subtitle $doit = false; if (wppa_opt('slideshow_linktype') == 'lightbox' || wppa_opt('slideshow_linktype') == 'lightboxsingle') { $doit = true; } // For fullsize if (wppa_switch('filmstrip') && wppa_opt('film_linktype') == 'lightbox') { // For filmstrip? if (!wppa('is_slideonly')) { $doit = true; } // Film below fullsize if (wppa('film_on')) { $doit = true; } // Film explicitly on ( slideonlyf ) } if ($doit) { $lbtitle = wppa_get_lbtitle('slide', $id); } else { $lbtitle = ''; } // Name if (wppa('is_filmonly')) { $name = ''; $fullname = ''; } else { $name = esc_js(wppa_get_photo_name($id)); if (!$name) { $name = ' '; } $fullname = wppa_get_photo_name($id, wppa_switch('show_full_owner'), true, true, wppa_switch('wppa_show_full_name')); if (!$fullname) { $fullname = ' '; } } // Shareurl if (wppa('is_filmonly') || wppa('is_slideonly')) { $shareurl = ''; } else { $shareurl = wppa_get_image_page_url_by_id($id, false, wppa('start_album')); $shareurl = wppa_convert_to_pretty($shareurl); $shareurl = str_replace('&', '&', $shareurl); } // Make photo desc, filtered $desc = ''; if ((!wppa('is_slideonly') || wppa('desc_on')) && !wppa('is_filmonly')) { $desc .= wppa_get_photo_desc($id, wppa_switch('allow_foreign_shortcodes'), 'do_geo'); // Foreign shortcodes is handled here // Run wpautop on description? if (wppa_switch('run_wpautop_on_desc')) { $desc = wpautop($desc); } // And format $desc = wppa_html(esc_js(stripslashes($desc))); // Remove extra space created by other filters like wpautop if (wppa_switch('allow_foreign_shortcodes') && wppa_switch('clean_pbr')) { $desc = str_replace(array("<p>", "</p>", "<br>", "<br/>", "<br />"), " ", $desc); } if (!$desc) { $desc = ' '; } } // Edit photo link $editlink = ''; $dellink = ''; if (!wppa('is_filmonly') && !wppa('is_slideonly')) { if (!wppa_is_user_blacklisted()) { if (wppa_user_is('administrator') || current_user_can('wppa_moderate') || wppa_get_user() == wppa_get_photo_owner($id) && wppa_switch('upload_edit')) { $editlink = ' <div style="float:right; margin-right:6px;" >' . '<a' . ' style="color:green;"' . ' onclick="_wppaStop( ' . wppa('mocc') . ' );wppaEditPhoto( ' . wppa('mocc') . ', ' . $thumb['id'] . ' ); return false;"' . ' >' . __('Edit', 'wp-photo-album-plus') . '</a>' . '</div>'; $dellink = ' <div style="float:right; margin-right:6px;" >' . '<a' . ' style="color:red;"' . ' onclick="' . '_wppaStop( ' . wppa('mocc') . ' );' . esc_attr('if ( confirm( "' . __('Are you sure you want to remove this photo?', 'wp-photo-album-plus') . '" ) ) ' . 'wppaAjaxRemovePhoto( ' . wppa('mocc') . ', ' . $thumb['id'] . ', true ); return false;') . '"' . '>' . __('Delete', 'wp-photo-album-plus') . '</a>' . '</div>'; } } } if ($editlink || $dellink) { $desc = $editlink . $dellink . '<div style="clear:both"></div>' . $desc; } if (in_array($thumb['status'], array('pending', 'scheduled'))) { $desc .= wppa_html(esc_js(wppa_moderate_links('slide', $id))); } // Share HTML $sharehtml = wppa('is_filmonly') || wppa('is_slideonly') ? '' : wppa_get_share_html($id); // Og Description $ogdsc = wppa_switch('facebook_comments') && !wppa_in_widget() ? strip_shortcodes(wppa_strip_tags(wppa_html(wppa_get_photo_desc($id)), 'all')) : ''; $ogdsc = esc_js($ogdsc); // Hires url $hiresurl = esc_js(wppa_fix_poster_ext(wppa_get_hires_url($id), $id)); // Video html $videohtml = wppa_get_video_body($id); // Audio html $audiohtml = wppa_get_audio_body($id); // Produce final result $result = "'" . wppa('mocc') . "','"; $result .= $index . "','"; $result .= $photourl . "','"; $result .= $style_a['style'] . "','"; $result .= ($videohtml ? wppa_get_videox($id) : $style_a['width']) . "','"; $result .= ($videohtml ? wppa_get_videoy($id) : $style_a['height']) . "','"; $result .= $fullname . "','"; $result .= $name . "','"; $result .= $desc . "','"; $result .= $id . "','"; $result .= $avgrat . "','"; $result .= $discount . "','"; $result .= $myrat . "','"; $result .= $url . "','"; $result .= $linkurl . "','" . $linktitle . "','" . $linktarget . "','"; $result .= wppa('in_widget_timeout') . "','"; $result .= $comment . "','"; $result .= $iptc . "','"; $result .= $exif . "','"; $result .= $lbtitle . "','"; $result .= $shareurl . "','"; // Used for history.pushstate() $result .= $sharehtml . "','"; // The content of the SM ( share ) box $result .= $ogdsc . "','"; $result .= $hiresurl . "','"; $result .= $videohtml . "','"; $result .= $audiohtml . "'"; // This is an ingenious line of code that is going to prevent us from very much trouble. // Created by OpaJaap on Jan 15 2012, 14:36 local time. Thanx. // Make sure there are no linebreaks in the result that would screw up Javascript. return str_replace(array("\r\n", "\n", "\r"), " ", $result); // return $result; }
function wppa_bcitem($value = '', $href = '', $title = '', $class = '') { global $wppa; static $sep; // Convert url to pretty $href = wppa_convert_to_pretty($href); // Has content? if (!$value) { return; } // No content if ($href) { $wppa['out'] .= '<a href="' . $href . '" class="wppa-nav-text ' . $class . '" style="' . __wcs('wppa-nav-text') . '" title="' . esc_attr($title) . '" >' . $value . '</a>'; } else { // No link, its the last item $wppa['out'] .= '<span id="bc-pname-' . $wppa['mocc'] . '" class="wppa-nav-text ' . $class . '" style="' . __wcs('wppa-nav-text') . '" title="' . esc_attr($title) . '" >' . $value . '</span>'; return; } // Add seperator if (!$sep) { // Compute the seperator $temp = wppa_opt('wppa_bc_separator'); switch ($temp) { case 'url': $size = wppa_opt('wppa_fontsize_nav'); if ($size == '') { $size = '12'; } $style = 'height:' . $size . 'px;'; $sep = ' <img src="' . wppa_opt('wppa_bc_url') . '" class="no-shadow" style="' . $style . '" /> '; break; case 'txt': $sep = ' ' . html_entity_decode(stripslashes(wppa_opt('wppa_bc_txt')), ENT_QUOTES) . ' '; break; default: $sep = ' &' . $temp . '; '; } } $wppa['out'] .= '<span class="wppa-nav-text ' . $class . '" style="' . __wcs('wppa-nav-text') . '" >' . $sep . '</span>'; }
function wppa_add_to_cart($atts) { global $post; $thumb = wppa('current_photo'); extract(shortcode_atts(array('name' => wppa_get_photo_name($thumb['id']), 'price' => 0.01, 'qty_field' => '', 'b_title' => __('Buy now', 'wp-photo-album-plus'), 'options' => '', 'options_name' => '', 'qty_field' => '', 'fshipping' => '', 'weight' => ''), $atts)); $cart =& $_SESSION['wfcart']; // load the cart from the session $scabn_options = get_option('scabn_options'); $currency = apply_filters('scabn_display_currency_symbol', NULL); // Slideshow? if (wppa('is_slide')) { $action_url = wppa_get_slide_callback_url($thumb['id']); $item_url = $action_url . '&wppa-single=1'; $action_url = wppa_convert_to_pretty($action_url); $item_url = wppa_convert_to_pretty($item_url); } else { $action_url = wppa_get_thumb_callback_url(); if (!strpos($action_url, '&')) { $action_url = str_replace('&', '&', $action_url); } $item_url = wppa_get_slide_callback_url($thumb['id']) . '&wppa-single=1'; $action_url = wppa_convert_to_pretty($action_url); $item_url = wppa_convert_to_pretty($item_url); } $output = ' <div class="wppa-addtocart"> <form method="post" class="wppa-cartform ' . $name . '" action="' . $action_url . '"> ' . wp_nonce_field('add_to_cart', 'scabn-add', false, false) . ' <input type="hidden" value="add_item" name="action" /> <input type="hidden" class="item_url" value="' . $item_url . '" name="item_url" /> <input type="hidden" value="' . $cart->random() . '" name="randomid" /> <input type="hidden" value="' . $name . '" name="item_id" /> <input type="hidden" class="item_name" value="' . $name . '" name="item_name" /> <input type="hidden" class="item_price" value="' . $price . '" name="item_price" />'; if ($fshipping) { $output .= ' <input type="hidden" class="item_shipping" value="' . $fshipping . '" name="item_shipping" />'; } if ($weight) { $output .= ' <input type="hidden" class="item_weight" value="' . $weight . '" name="item_weight" />'; } if ($options) { if ($options_name) { $output .= $options_name . ': '; } $output .= ' <input type="hidden" value="' . $options_name . '" name="item_options_name" class="item_options_name" />'; $item_options = explode(',', $options); $output .= ' <select style="max-width:200px; margin:0" name="item_options" class="item_options" >'; foreach ($item_options as $option) { $info = explode(':', $option); if (count($info) == 1) { $output .= ' <option value="' . $info[0] . '">' . $info[0] . ' (' . $currency . number_format($price, 2) . ')</option>'; } else { $output .= ' <option value="' . $info[0] . ':' . $info[1] . '">' . $info[0] . ' (' . $currency . number_format($info[1], 2) . ')</option>'; } } $output .= ' </select>'; } else { $output .= sprintf(__('Unit Price: %s each', 'wp-photo-album-plus'), $currency . number_format($price, 2)) . ' '; } if ($qty_field) { $output .= __('Qty:', 'wp-photo-album-plus') . ' <input type="text" style="max-width:50px; margin:0;" class="item_qty" value="1" size="2" name="item_qty" />'; } else { $output .= '<input type="hidden" class="item_qty" value="1" size="2" name="item_qty" />'; } $output .= ' <input type="submit" id="' . $name . '" class="add" name="add" value="' . $b_title . '"/> </form> </div>'; return $output; }
/** @see WP_Widget::widget */ function widget($args, $instance) { global $wpdb; require_once dirname(__FILE__) . '/wppa-links.php'; require_once dirname(__FILE__) . '/wppa-styles.php'; require_once dirname(__FILE__) . '/wppa-functions.php'; require_once dirname(__FILE__) . '/wppa-thumbnails.php'; require_once dirname(__FILE__) . '/wppa-boxes-html.php'; require_once dirname(__FILE__) . '/wppa-slideshow.php'; wppa_initialize_runtime(); wppa('in_widget', 'topten'); wppa_bump_mocc(); extract($args); $instance = wp_parse_args((array) $instance, array('title' => '', 'sortby' => 'mean_rating', 'title' => '', 'album' => '', 'display' => 'thumbs', 'meanrat' => 'yes', 'ratcount' => 'yes', 'viewcount' => 'yes', 'includesubs' => 'yes', 'showowner' => 'no', 'showalbum' => 'no')); $widget_title = apply_filters('widget_title', $instance['title']); $page = in_array(wppa_opt('topten_widget_linktype'), wppa('links_no_page')) ? '' : wppa_get_the_landing_page('wppa_topten_widget_linkpage', __('Top Ten Photos', 'wp-photo-album-plus')); $albumlinkpage = wppa_get_the_landing_page('wppa_topten_widget_album_linkpage', __('Top Ten Photo album', 'wp-photo-album-plus')); $max = wppa_opt('topten_count'); $album = $instance['album']; switch ($instance['sortby']) { case 'mean_rating': $sortby = '`mean_rating` DESC, `rating_count` DESC, `views` DESC'; break; case 'rating_count': $sortby = '`rating_count` DESC, `mean_rating` DESC, `views` DESC'; break; case 'views': $sortby = '`views` DESC, `mean_rating` DESC, `rating_count` DESC'; break; } $display = $instance['display']; $meanrat = $instance['meanrat'] == 'yes'; $ratcount = $instance['ratcount'] == 'yes'; $viewcount = $instance['viewcount'] == 'yes'; $includesubs = $instance['includesubs'] == 'yes'; $albenum = ''; $showowner = $instance['showowner'] == 'yes'; $showalbum = $instance['showalbum'] == 'yes'; if ($album) { if ($album == '-2') { $album = '0'; } if ($includesubs) { $albenum = wppa_alb_to_enum_children($album); $albenum = wppa_expand_enum($albenum); $album = str_replace('.', ',', $albenum); } $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` WHERE `album` IN (" . $album . ") ORDER BY " . $sortby . " LIMIT " . $max, ARRAY_A); //wppa_log('dbg', "SELECT * FROM `".WPPA_PHOTOS."` WHERE `album` IN (".$album.") ORDER BY " . $sortby . " LIMIT " . $max); } else { $thumbs = $wpdb->get_results("SELECT * FROM `" . WPPA_PHOTOS . "` ORDER BY " . $sortby . " LIMIT " . $max, ARRAY_A); } $widget_content = "\n" . '<!-- WPPA+ TopTen Widget start -->'; $maxw = wppa_opt('topten_size'); $maxh = $maxw; $lineheight = wppa_opt('fontsize_widget_thumb') * 1.5; $maxh += $lineheight; if ($meanrat) { $maxh += $lineheight; } if ($ratcount) { $maxh += $lineheight; } if ($viewcount) { $maxh += $lineheight; } if ($showowner) { $maxh += $lineheight; } if ($showalbum) { $maxh += $lineheight; } if ($thumbs) { foreach ($thumbs as $image) { $thumb = $image; // Make the HTML for current picture if ($display == 'thumbs') { $widget_content .= "\n" . '<div class="wppa-widget" style="width:' . $maxw . 'px; height:' . $maxh . 'px; margin:4px; display:inline; text-align:center; float:left;">'; } else { $widget_content .= "\n" . '<div class="wppa-widget" >'; } if ($image) { $no_album = !$album; if ($no_album) { $tit = __('View the top rated photos', 'wp-photo-album-plus'); } else { $tit = esc_attr(__(stripslashes($image['description']))); } $compressed_albumenum = wppa_compress_enum($albenum); $link = wppa_get_imglnk_a('topten', $image['id'], '', $tit, '', $no_album, $compressed_albumenum); $file = wppa_get_thumb_path($image['id']); $imgstyle_a = wppa_get_imgstyle_a($image['id'], $file, $maxw, 'center', 'ttthumb'); $imgurl = wppa_get_thumb_url($image['id'], '', $imgstyle_a['width'], $imgstyle_a['height']); $imgevents = wppa_get_imgevents('thumb', $image['id'], true); $title = $link ? esc_attr(stripslashes($link['title'])) : ''; $widget_content .= wppa_get_the_widget_thumb('topten', $image, $album, $display, $link, $title, $imgurl, $imgstyle_a, $imgevents); $widget_content .= "\n\t" . '<div style="font-size:' . wppa_opt('fontsize_widget_thumb') . 'px; line-height:' . $lineheight . 'px;">'; // Display (owner) ? if ($showowner) { $widget_content .= '<div>(' . $image['owner'] . ')</div>'; } // Display (album) ? if ($showalbum) { $href = wppa_convert_to_pretty(wppa_get_album_url($image['album'], $albumlinkpage, 'content', '1')); $widget_content .= '<div>(<a href="' . $href . '" >' . wppa_get_album_name($image['album']) . '</a>)</div>'; } $rating = wppa_get_rating_by_id($image['id']); switch ($instance['sortby']) { case 'mean_rating': if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($ratcount == 'yes') { $widget_content .= '<div>' . sprintf(__('%s Votes', 'wp-photo-album-plus'), wppa_get_rating_count_by_id($image['id'])) . '</div>'; } if ($viewcount == 'yes' && $image['views']) { $widget_content .= '<div>' . sprintf(__('Views: %s times', 'wp-photo-album-plus'), $image['views']) . '</div>'; } break; case 'rating_count': if ($ratcount == 'yes') { $widget_content .= '<div>' . sprintf(__('%s Votes', 'wp-photo-album-plus'), wppa_get_rating_count_by_id($image['id'])) . '</div>'; } if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($viewcount == 'yes' && $image['views']) { $widget_content .= '<div>' . sprintf(__('Views: %s times', 'wp-photo-album-plus'), $image['views']) . '</div>'; } break; case 'views': if ($viewcount == 'yes' && $image['views']) { $widget_content .= '<div>' . sprintf(__('Views: %s times', 'wp-photo-album-plus'), $image['views']) . '</div>'; } if ($meanrat == 'yes') { $widget_content .= '<div>' . wppa_get_rating_by_id($image['id']) . '</div>'; } if ($ratcount == 'yes') { $widget_content .= '<div>' . sprintf(__('%s Votes', 'wp-photo-album-plus'), wppa_get_rating_count_by_id($image['id'])) . '</div>'; } break; } $widget_content .= '</div>'; } else { // No image $widget_content .= __('Photo not found.', 'wp-photo-album-plus'); } $widget_content .= "\n" . '</div>'; } } else { $widget_content .= 'There are no rated photos (yet).'; } $widget_content .= '<div style="clear:both"></div>'; $widget_content .= "\n" . '<!-- WPPA+ TopTen Widget end -->'; echo "\n" . $before_widget; if (!empty($widget_title)) { echo $before_title . $widget_title . $after_title; } echo $widget_content . $after_widget; wppa('in_widget', false); }
function wppa_bestof_html($args, $widget = true) { // Copletify args $args = wp_parse_args((array) $args, array('page' => '0', 'count' => '1', 'sortby' => 'maxratingcount', 'display' => 'photo', 'period' => 'thisweek', 'maxratings' => 'yes', 'meanrat' => 'yes', 'ratcount' => 'yes', 'linktype' => 'none', 'size' => wppa_opt('widget_width'), 'fontsize' => wppa_opt('fontsize_widget_thumb'), 'lineheight' => wppa_opt('fontsize_widget_thumb') * 1.5, 'height' => '200')); // Make args into seperate vars extract($args); // Validate args if (!in_array($sortby, array('maxratingcount', 'meanrating', 'ratingcount'))) { wppa_dbg_msg('Invalid arg sortby "' . $sortby . '" must be "maxratingcount", "meanrating" or "ratingcount"', 'red', 'force'); } if (!in_array($display, array('photo', 'owner'))) { wppa_dbg_msg('Invalid arg display "' . $display . '" must be "photo" or "owner"', 'red', 'force'); } if (!in_array($period, array('lastweek', 'thisweek', 'lastmonth', 'thismonth', 'lastyear', 'thisyear'))) { wppa_dbg_msg('Invalid arg period "' . $period . '" must be "lastweek", "thisweek", "lastmonth", "thismonth", "lastyear" or "thisyear"', 'red', 'force'); } if (!$widget) { $size = $height; } $result = ''; $data = wppa_get_the_bestof($count, $period, $sortby, $display); if ($display == 'photo') { if (is_array($data)) { foreach (array_keys($data) as $id) { $thumb = wppa_cache_thumb($id); if ($thumb) { $imgsize = array(wppa_get_photox($id), wppa_get_photoy($id)); if ($widget) { $maxw = $size; $maxh = round($maxw * $imgsize['1'] / $imgsize['0']); } else { $maxh = $size; $maxw = round($maxh * $imgsize['0'] / $imgsize['1']); } $totalh = $maxh + $lineheight; if ($maxratings == 'yes') { $totalh += $lineheight; } if ($meanrat == 'yes') { $totalh += $lineheight; } if ($ratcount == 'yes') { $totalh += $lineheight; } if ($widget) { $clear = 'clear:both; '; } else { $clear = ''; } $result .= "\n" . '<div' . ' class="wppa-widget"' . ' style="' . $clear . 'width:' . $maxw . 'px; height:' . $totalh . 'px; margin:4px; display:inline; text-align:center; float:left;"' . ' >'; // The medal if at the top $result .= wppa_get_medal_html_a(array('id' => $id, 'size' => 'M', 'where' => 'top')); // The link if any if ($linktype != 'none') { switch ($linktype) { case 'owneralbums': $href = wppa_get_permalink($page) . 'wppa-cover=1&wppa-owner=' . $thumb['owner'] . '&wppa-occur=1'; $title = __('See the authors albums', 'wp-photo-album-plus'); break; case 'ownerphotos': $href = wppa_get_permalink($page) . 'wppa-cover=0&wppa-owner=' . $thumb['owner'] . '&photos-only&wppa-occur=1'; $title = __('See the authors photos', 'wp-photo-album-plus'); break; case 'upldrphotos': $href = wppa_get_permalink($page) . 'wppa-cover=0&wppa-upldr=' . $thumb['owner'] . '&wppa-occur=1'; $title = __('See all the authors photos', 'wp-photo-album-plus'); break; } $result .= '<a href="' . wppa_convert_to_pretty($href) . '" title="' . $title . '" >'; } // The image $result .= '<img' . ' style="height:' . $maxh . 'px; width:' . $maxw . 'px;"' . ' src="' . wppa_fix_poster_ext(wppa_get_photo_url($id, '', $maxw, $maxh), $id) . '"' . ' ' . wppa_get_imgalt($id) . ' />'; // The /link if ($linktype != 'none') { $result .= '</a>'; } // The medal if near the bottom $result .= wppa_get_medal_html_a(array('id' => $id, 'size' => 'M', 'where' => 'bot')); // The subtitles $result .= "\n\t" . '<div style="font-size:' . $fontsize . 'px; line-height:' . $lineheight . 'px; position:absolute; width:' . $maxw . 'px; ">'; $result .= sprintf(__('Photo by: %s', 'wp-photo-album-plus'), $data[$id]['user']) . '<br />'; if ($maxratings == 'yes') { $n = $data[$id]['maxratingcount']; $result .= sprintf(_n('%d max rating', '%d max ratings', $n, 'wp-photo-album-plus'), $n) . '<br />'; } if ($ratcount == 'yes') { $n = $data[$id]['ratingcount']; $result .= sprintf(_n('%d vote', '%d votes', 'wp-photo-album-plus'), $n) . '<br />'; } if ($meanrat == 'yes') { $m = $data[$id]['meanrating']; $result .= sprintf(__('Rating: %4.2f.', 'wp-photo-album-plus'), $m) . '<br />'; } $result .= '</div>'; $result .= '<div style="clear:both" ></div>'; $result .= "\n" . '</div>'; } else { // No image $result .= '<div>' . sprintf(__('Photo %s not found.', 'wp-photo-album-plus'), $id) . '</div>'; } } } else { $result .= $data; // No array, print message } } else { // Display = owner if (is_array($data)) { $result .= '<ul>'; foreach (array_keys($data) as $author) { $result .= '<li>'; // The link if any if ($linktype != 'none') { switch ($linktype) { case 'owneralbums': $href = wppa_get_permalink($page) . 'wppa-cover=1&wppa-owner=' . $data[$author]['owner'] . '&wppa-occur=1'; $title = __('See the authors albums', 'wp-photo-album-plus'); break; case 'ownerphotos': $href = wppa_get_permalink($page) . 'wppa-cover=0&wppa-owner=' . $data[$author]['owner'] . '&photos-only&wppa-occur=1'; $title = __('See the authors photos', 'wp-photo-album-plus'); break; case 'upldrphotos': $href = wppa_get_permalink($page) . 'wppa-cover=0&wppa-upldr=' . $data[$author]['owner'] . '&wppa-occur=1'; $title = __('See all the authors photos', 'wp-photo-album-plus'); break; } $result .= '<a href="' . $href . '" title="' . $title . '" >'; } // The name $result .= $author; // The /link if ($linktype != 'none') { $result .= '</a>'; } $result .= '<br/>'; // The subtitles $result .= "\n" . '<div style="font-size:' . wppa_opt('fontsize_widget_thumb') . 'px; line-height:' . $lineheight . 'px; ">'; if ($maxratings == 'yes') { $n = $data[$author]['maxratingcount']; $result .= sprintf(_n('%d max rating', '%d max ratings', $n, 'wp-photo-album-plus'), $n) . '<br />'; } if ($ratcount == 'yes') { $n = $data[$author]['ratingcount']; $result .= sprintf(_n('%d vote', '%d votes', 'wp-photo-album-plus'), $n) . '<br />'; } if ($meanrat == 'yes') { $m = $data[$author]['meanrating']; $result .= sprintf(__('Mean value: %4.2f.', 'wp-photo-album-plus'), $m) . '<br />'; } $result .= '</div>'; $result .= '</li>'; } $result .= '</ul>'; } else { $result .= $data; // No array, print message } } return $result; }
function wppa_subalbumlinks_html($id, $top = true) { global $wpdb; // Do they need us? Anything to display? if (wppa_opt('cover_sublinks_display') == 'none') { return; } // Display type $display_type = wppa_opt('cover_sublinks_display'); // Link type $link_type = wppa_opt('cover_sublinks'); // Init $is_list = $display_type == 'list' || $display_type == 'recursivelist'; $is_recursive = $display_type == 'recursivelist'; $first = true; // Get the children $subs = $wpdb->get_results("SELECT * FROM `" . WPPA_ALBUMS . "` WHERE `a_parent` = " . $id . " " . wppa_get_album_order($id), ARRAY_A); // Only if there are sub-albums if (!empty($subs)) { wppa_out('<div>'); // Local css if ($top) { if ($is_list) { wppa_out('<style scoped="scoped" >' . 'ul, li { margin:0; }' . 'ul {' . 'list-style-type:disc;' . 'list-style-position:inside;' . 'padding:0 0 0 24px;' . '}' . 'li { cursor:pointer; }' . '</style>'); } if ($display_type == 'microthumbs') { wppa_out('<style scoped="scoped" >' . 'img {' . 'max-width:100px;' . 'max-height:50px;' . 'padding:1px;' . 'margin:1px;' . 'background-color:' . wppa_opt('bgcolor_img') . ';' . 'float:left;' . '}' . '</style>'); } } // Start list if required if ($is_list) { wppa_out('<ul class="wppa-cover-sublink-list" style="clear:both;" >'); } else { wppa_out('<div style="clear:both;" ></div>'); } // Process the sub-albums foreach ($subs as $album) { // What is the albums title linktype $linktype = $album['cover_linktype']; if (!$linktype) { $linktype = 'content'; } // Default // What is the albums title linkpage $linkpage = $album['cover_linkpage']; if ($linkpage == '-1') { $linktype = 'none'; } // for backward compatibility // Find the content 'View' link $albumid = $album['id']; $photocount = wppa_get_photo_count($albumid, 'use_treecounts'); // Thumbnails and covers, show sub-album covers // in case slideshow is requested on an empty album if (wppa_opt('cover_sublinks') == 'content' || !$photocount) { if (wppa_switch('allow_ajax') && !$linkpage) { $href_content = ''; $onclick_content = "wppaDoAjaxRender( " . wppa('mocc') . ", '" . wppa_get_album_url_ajax($albumid, $linkpage) . "', '" . wppa_convert_to_pretty($href_content) . "' )"; } else { $href_content = wppa_convert_to_pretty(wppa_get_album_url($albumid, $linkpage)); $onclick_content = ''; } } else { if (wppa_switch('allow_ajax') && !$linkpage) { $href_content = ''; $onclick_content = "wppaDoAjaxRender( " . wppa('mocc') . ", '" . wppa_get_slideshow_url_ajax($albumid, $linkpage) . "', '" . wppa_convert_to_pretty($href_content) . "' )"; } else { $href_content = wppa_convert_to_pretty(wppa_get_slideshow_url($albumid, $linkpage)); $onclick_content = ''; } } // Do the output $title = esc_attr(__('View the album', 'wp-photo-album-plus') . ': ' . wppa_get_album_name($album['id'])); switch ($display_type) { case 'list': case 'recursivelist': if ($link_type == 'none') { wppa_out('<li>' . wppa_get_album_name($album['id']) . '</li>'); } else { wppa_out('<li>' . '<a' . ($href_content ? ' href="' . $href_content . '"' : '') . ($onclick_content ? ' onclick="' . $onclick_content . '"' : '') . ' title="' . $title . '"' . ' >' . wppa_get_album_name($album['id']) . '</a>' . '</li>'); } break; case 'enum': if (!$first) { wppa_out(', '); } if ($link_type == 'none') { wppa_out(wppa_get_album_name($album['id'])); } else { wppa_out('<a' . ($href_content ? ' href="' . $href_content . '"' : '') . ($onclick_content ? ' onclick="' . $onclick_content . '"' : '') . ' title="' . $title . '"' . ' >' . wppa_get_album_name($album['id']) . '</a>'); } $first = false; break; case 'microthumbs': $coverphoto_id = wppa_get_coverphoto_id($album['id']); $src = wppa_fix_poster_ext(wppa_get_thumb_url($coverphoto_id), $coverphoto_id); if ($link_type == 'none') { wppa_out('<img' . ' class="wppa-cover-sublink-img"' . ' src="' . $src . '"' . ' alt="' . wppa_get_album_name($album['id']) . '"' . ' />'); } else { wppa_out('<a' . ($href_content ? ' href="' . $href_content . '"' : '') . ($onclick_content ? ' onclick="' . $onclick_content . '"' : '') . ' title="' . $title . '"' . ' >' . '<img' . ' class="wppa-cover-sublink-img"' . ' src="' . $src . '"' . ' alt="' . wppa_get_album_name($album['id']) . '"' . ' />' . '</a>'); } break; } // Go deeper for grandchildren if ($is_recursive) { wppa_subalbumlinks_html($album['id'], false); } } // End list if ($is_list) { wppa_out('</ul>'); } wppa_out('</div>'); } }
function wppa_get_album_title_attr_a($albumid, $linktype, $linkpage, $has_content, $coverphoto, $photocount) { global $wppa; $album = wppa_cache_album($albumid); // Init $href_title = ''; $onclick_title = ''; $title_title = ''; // Dispatch on linktype when page is not current if ($linkpage > 0) { switch ($linktype) { case 'content': case 'thumbs': case 'albums': if ($has_content) { $href_title = wppa_get_album_url($albumid, $linkpage, $linktype); } else { $href_title = get_page_link($album['cover_linkpage']); } break; case 'slide': if ($has_content) { $href_title = wppa_get_slideshow_url($albumid, $linkpage); } else { $href_title = get_page_link($album['cover_linkpage']); } break; case 'page': $href_title = get_page_link($album['cover_linkpage']); break; case 'none': break; default: } $href_title = wppa_convert_to_pretty($href_title); $title_title = __a('Link to'); $title_title .= ' ' . __(get_the_title($album['cover_linkpage'])); } elseif ($has_content) { switch ($linktype) { case 'content': case 'thumbs': case 'albums': $href_title = wppa_convert_to_pretty(wppa_get_album_url($albumid, $linkpage, $linktype)); if (wppa_switch('wppa_allow_ajax')) { $onclick_title = "wppaDoAjaxRender( " . $wppa['mocc'] . ", '" . wppa_get_album_url_ajax($albumid, $linkpage, $linktype) . "', '" . $href_title . "' )"; $href_title = "#"; } break; case 'slide': $href_title = wppa_convert_to_pretty(wppa_get_slideshow_url($albumid, $linkpage)); if (wppa_switch('wppa_allow_ajax')) { $onclick_title = "wppaDoAjaxRender( " . $wppa['mocc'] . ", '" . wppa_get_slideshow_url_ajax($albumid, $linkpage, $linktype) . "', '" . $href_title . "' )"; $href_title = "#"; } break; case 'none': break; default: } $title_title = __a('View the album') . ' ' . esc_attr(wppa_qtrans(stripslashes($album['name']))); } else { // No content on current page/post if ($photocount > '0') { // coverphotos only if ($coverphoto) { $href_title = wppa_convert_to_pretty(wppa_get_image_page_url_by_id($coverphoto)); } else { $href_title = '#'; } if (wppa_switch('wppa_allow_ajax')) { if ($coverphoto) { $onclick_title = "wppaDoAjaxRender( " . $wppa['mocc'] . ", '" . wppa_get_image_url_ajax_by_id($coverphoto) . "', '" . $href_title . "' )"; } else { $onclick_title = ''; } $href_title = "#"; } if ($photocount == '1') { $title_title = __a('View the cover photo'); } else { $title_title = __a('View the cover photos'); } } } $title_attr['href'] = $href_title; $title_attr['onclick'] = $onclick_title; $title_attr['title'] = $title_title; return $title_attr; }
function wppa_bcitem($value = '', $href = '', $title = '', $class = '', $ajax = '', $hash = '#wppa-container-') { static $sep; // Encrypt if ($href) { $href = wppa_encrypt_url($href); } if ($ajax) { $ajax = wppa_encrypt_url($ajax); } // Convert url to pretty if ($href) { $href = wppa_convert_to_pretty($href) . $hash . wppa('mocc'); } // Has content? if (!$value) { return; } // No content // If in ajax modal dialog, distinguish from original bc for update during slideshow $bc_pname = 'bc-pname-'; if (wppa('ajax') && wppa_switch('ajax_render_modal')) { $bc_pname = 'bc-pname-modal-'; } if ($href) { wppa_out('<a' . ($ajax && wppa_switch('allow_ajax') ? ' onclick="wppaDoAjaxRender(' . wppa('mocc') . ', \'' . $ajax . '\', \'' . $href . '\' );"' : ' href="' . $href . '"') . ' class="wppa-nav-text ' . $class . '"' . ' style="cursor:pointer;' . __wcs('wppa-nav-text') . '"' . ' title="' . esc_attr($title) . '" >' . $value . '</a>'); } else { // No link, its the last item wppa_out('<span' . ' id="' . $bc_pname . wppa('mocc') . '"' . ' class="wppa-nav-text ' . $class . '"' . ' style="' . ($title ? 'cursor:pointer;' : '') . __wcs('wppa-nav-text') . '"' . ' title="' . esc_attr($title) . '"' . ' >' . $value . '</span>'); return; } // Add seperator if (!$sep) { // Compute the seperator $temp = wppa_opt('bc_separator'); switch ($temp) { case 'url': $size = wppa_opt('fontsize_nav'); if ($size == '') { $size = '12'; } $style = 'height:' . $size . 'px;'; $sep = ' ' . '<img' . ' src="' . wppa_opt('bc_url') . '"' . ' class="no-shadow"' . ' style="' . $style . '"' . ' />' . ' '; break; case 'txt': $sep = ' ' . html_entity_decode(stripslashes(wppa_opt('bc_txt')), ENT_QUOTES) . ' '; break; default: $sep = ' &' . $temp . '; '; } } wppa_out('<span' . ' class="wppa-nav-text ' . $class . '"' . ' style="' . __wcs('wppa-nav-text') . '"' . ' >' . $sep . '</span>'); }