This is an old revision of the document!
On thumbnails list, if you have severals items, you may want to display the navigation bar on the top in addition to the bottom one.
<?php /* Plugin Name: Navbar on top Version: 1.0 Author: Mistic Author URI: http://www.strangeplanet.fr */ add_event_handler('loc_end_index', 'top_navbar'); function top_navbar() { global $template; $template->set_prefilter('index', 'top_navbar_prefilter'); } function top_navbar_prefilter($content, &$smarty) { $search = '{if !empty($CATEGORIES)}{$CATEGORIES}{/if}'; $add = '{if !empty($navbar)}{include file=\'navigation_bar.tpl\'|@get_extent:\'navbar\'}{/if}'; return str_replace($search, $add.$search, $content); } ?>
<?php /* Plugin Name: Remove breadcrumb photocounter Version: 1.0 Author: barbichou */ add_event_handler('loc_end_index', 'no_breadcrumb_counter'); function no_breadcrumb_counter() { global $template; $titre = $template->get_template_vars('TITLE'); $pos = strrpos($titre,"["); if ($pos !== false) { $template->assign('TITLE', substr($titre, 0, $pos)); } } ?>
This plugins displays only the last album name in page title, not the full tree.
<?php /* Plugin Name: One level in page title Version: 1.0 Author:barbichou */ add_event_handler('loc_end_page_header', 'one_level_pagetitle'); function one_level_pagetitle() { global $template, $conf; $titre = $template->get_template_vars('PAGE_TITLE'); $pos = strrpos($titre, $conf['level_separator']); if ($pos!==false) { $template->assign('PAGE_TITLE', substr($titre, $pos+strlen($conf['level_separator']))); } } ?>
This plugin allows to give URL with a additional parameter witch will force the current theme. For exemple : http://mysite.com/picture.php?/246/category/186&temp_theme=Stripped will open this picture page with the theme Stripped whatever is the default theme. Only works for picture page.
<?php /* Plugin Name: Theme Switch From URL Version: 1.0 Author: Mistic Author URI: http://www.strangeplanet.fr */ add_event_handler('user_init', 'theme_controler_lite1'); add_event_handler('init', 'theme_controler_lite2'); function theme_controler_lite1() { global $user; if ( isset($_GET['temp_theme']) and file_exists(PHPWG_THEMES_PATH.$_GET['temp_theme']) ) { $user['theme'] = $_GET['temp_theme']; } } function theme_controler_lite2() { global $template; if ( isset($_GET['temp_theme']) and file_exists(PHPWG_THEMES_PATH.$_GET['temp_theme']) ) { $template->assign('TEMP_THEME', $_GET['temp_theme']); $template->set_prefilter('picture', 'theme_controler_lite_prefilter'); } } function theme_controler_lite_prefilter($content) { global $conf; if ($conf['question_mark_in_urls']==false) { $search = '#(action|href)="([^?"]*)"#'; $replace = '$1="$2?temp_theme={$TEMP_THEME}"'; } else { $search = '#(action|href)="([^"]*)"#'; $replace = '$1="$2&temp_theme={$TEMP_THEME}"'; } return preg_replace($search, $replace, $content); } ?>
This adds a simple button to smoothly scroll the page to the top, the links appears after 100px of scroll down.
<?php /* Plugin Name: Scroll To Top Version: 1.0 Author: Mistic100 */ add_event_handler('loc_end_page_header', 'scroll_to_top'); function scroll_to_top() { global $template; $template->set_prefilter('header', 'scroll_to_top_pref', 100); } function scroll_to_top_pref($content) { $search = '<body id="{$BODY_ID}">'; $scroll = ' {html_style}{literal} .scrollup { width:48px; height:48px; opacity:0.7; position:fixed; border-radius:24px; bottom:50px; right:50px; display:none; text-indent:-9999px; background: rgba(255,255,255,0.8) url("http://cdn4.iconfinder.com/data/icons/cc_mono_icon_set/blacks/48x48/round_and_up.png") no-repeat; } .scrollup:hover { opacity:1; } {/literal}{/html_style} {footer_script}{literal} jQuery(window).scroll(function(){ if (jQuery(this).scrollTop() > 100) { jQuery(".scrollup").fadeIn(); } else { jQuery(".scrollup").fadeOut(); } }); jQuery(".scrollup").click(function(){ jQuery("html, body").animate({ scrollTop: 0 }, 600); return false; }); {/literal}{/footer_script} <a href="#" class="scrollup">Scroll</a>'; return str_replace($search, $search.$scroll, $content); } ?>
More to come…