From: Jean-François B. <cha...@gm...> - 2011-11-30 09:20:06
|
Header + svn property please. Changi. 2011/11/28 <rob...@us...> > Revision: 39020 > http://tikiwiki.svn.sourceforge.net/tikiwiki/?rev=39020&view=rev > Author: robertplummer > Date: 2011-11-28 15:55:42 +0000 (Mon, 28 Nov 2011) > Log Message: > ----------- > [NEW]Lazytab plugin, where tabs = wiki pages > > Added Paths: > ----------- > trunk/lib/wiki-plugins/wikiplugin_lazytabs.php > > Added: trunk/lib/wiki-plugins/wikiplugin_lazytabs.php > =================================================================== > --- trunk/lib/wiki-plugins/wikiplugin_lazytabs.php > (rev 0) > +++ trunk/lib/wiki-plugins/wikiplugin_lazytabs.php 2011-11-28 > 15:55:42 UTC (rev 39020) > @@ -0,0 +1,141 @@ > +<?php > +if (strpos($_SERVER["SCRIPT_NAME"],basename(__FILE__)) !== false) { > + header("location: index.php"); > + die; > +} > + > +function wikiplugin_lazytabs_help() { > + return "Cutom Tabs Engine"; > +} > + > +function wikiplugin_lazytabs_info() { > + return array( > + 'name' => tra('Lazy Tabs'), > + 'documentation' => tra('PluginLazyTabs'), > + 'description' => tra('Display page content in a set of > tabs'), > + 'prefs' => array( 'wikiplugin_tabs' ), > + 'body' => NULL, > + 'params' => array( > + ), > + ); > +} > + > +function wikiplugin_lazytabs($data, $params) { > + global $tikilib, $smarty, $headerlib, $user; > + $lazyTabs = true; > + > + foreach($tikilib->get_user_groups($user) as $group) { > + if ($group == "NoLazyTabs") { > + $lazyTabs = false; > + } > + } > + > + if ($lazyTabs == true) { > + $headerlib->add_jq_onready(' > + var lazyTabsTable = $("table.lazytabs") > + .hide(); > + > + var tabParent = $("<div id=\'lazyTabContainer\' > />") > + .insertAfter(lazyTabsTable); > + > + var tabMenu = $("<ul id=\'tabMenu\' class=\'tabs\' > />") > + .appendTo(tabParent); > + > + lazyTabsTable > + .find("a").each(function() { > + var a = $(this).clone(); > + > + a.attr("href", > a.attr("href").replace(/tiki-index.php/g, "tiki-index_raw.php")); > + > + $("<li />") > + .append(a) > + .appendTo(tabMenu); > + > + > + }); > + > + $("<img id=\'lazyTabSpinner\' > src=\'img/spinner.gif\' style=\'position: absolute;z-index: 999999999\' />") > + .insertBefore(tabParent) > + .hide(); > + > + tabParent > + .tabs({ > + load: function(e, ui) { > + > $("#lazyTabSpinner").fadeOut(); > + > //(url|#anchor1,anchor2|text) > + $(ui.panel) > + .find(".wikitext > a") > + .each(function() { > + > $(this).attr("href", ($(this).attr("href") + "").replace("_raw", "")); > + }) > + .unbind("click") > + .click(function() { > + var > pageAttr = $(this).attr("href").split("="); > + if > (pageAttr.length < 2) return true; > + > + var page = > pageAttr[1].split("#"); > + > + if > (page.length < 2) return true; > + > + var otherA > = tabMenu.find("[href$=\'" + page[0] + "\']"); > + > + if > (otherA.length < 1) return true; > + > + > otherA.click(); > + > + > tabParent.one( "tabsload", function() { > + > $("#" + page[1]).ready(function() { > + > var aTop = $("#" + page[1]).offset().top; > + > + > $("html, body").scrollTop(aTop); > + }); > + }); > + > + return > false; > + }); > + $("#top").show(); > + }, > + select: function() { > + > $("#lazyTabSpinner").fadeIn(); > + } > + }); > + > + tabParent.find("ul:first li").addClass("tabmark"); > + > + var pageAttr = (document.location + "").split("#"); > + > + if (pageAttr.length > 1) { > + var initTab = pageAttr[1].split("_"); > + var initA = initTab[1]; > + initTab = initTab[0]; > + > + tabMenu.find("[title=\'" + initTab + > "\']").click(); > + > + if (!initA) return; > + > + tabParent.one("tabsload", function() { > + $("#" + initA).ready(function() { > + var aTop = $("#" + > initA).offset().top; > + $("html, > body").scrollTop(aTop); > + }); > + }); > + } > + '); > + > + return "<style> > + #tabMenu { > + width: 100% ! important; > + } > + #top { > + display: none; > + } > + .lazytabs { > + display: none; > + } > + .ui-tabs-panel { > + padding: 0px ! important; > + } > + </style> > + "; > + } > +} > > This was sent by the SourceForge.net collaborative development platform, > the world's largest Open Source development site. > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > Tikiwiki-cvs mailing list > Tik...@li... > https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs > -- Changi -- Tiki Wiki CMS Groupware Project - Infrastructure Team - http://tiki.org |