=====Wiki In A Vacuum===== //How to create a wiki site that doesn't look like a wiki using WikkaWiki// >>Please visit http://www.exatorq.com for my workhorse implementation of these concepts.>>::c:: ====Purpose==== This is an extension of the [[Docs:InvisibleWiki | InvisibleWiki]] process advocated by DarTar. His motto is "Look ma, no source code changes!" My motto is "Look ma, no one can tell that it's a wiki unless they look //really// hard!" Seriously, though: The difference here is one of philosophy. DarTar's goal is to set up a process that creates an "invisible wiki" (a wiki that doesn't look like a wiki to the casual observer) without the need for changes to Wikka's core code. My goal is to make an invisible wiki even more invisible through source code and configuration changes. There will be a couple of hacks here that will require source code changes to do things like get rid of pesky headers and footers, not allow registrations (but do allow logins), and add some new stylesheet elements. This is a work in progress. I can't guarantee this will work on any specific version (I'm using the latest code from trunk), but it should give one a good idea of where code changes need to be made to disable or eliminate the "wikish" elements. ====Examples==== ~-I use an "invisible wiki" for my [[http://www.exatorq.com | business site]]. ====Modifications==== 1) I would suggest initially following the procedures in InvisibleWiki. You might find that the result is adequate for what you need, and there is no reason to modify anything else (other than stylesheets). However, you //might// be interested in the following step even if you choose to stop here. 1) As an alternative to disabling Wikka default pages through the use of manual ACL changes, execute the following SQL commands against your Wikka database. //Note: Use this only if you are working with a fresh install of Wikka!// %%(sql) INSERT INTO wikka_acls (page_tag) SELECT tag FROM wikka_pages; UPDATE wikka_acls set read_acl='!*', write_acl='!*', comment_read_acl='!*', comment_post_acl='!*' WHERE page_tag != 'UserSettings'; %% <""IsAdmin()""##. For example: %% brian@alabaster <10:18 PM>$ diff -u header.php.orig header.php --- header.php.orig Sat Oct 7 23:53:34 2006 +++ header.php Mon Oct 9 01:09:02 2006 @@ -3,7 +3,7 @@ * Generates the page header. * * @package Template - * @version $Id: header.php 189 2006-09-25 08:48:41Z DotMG $ + * @version $Id: header.php,v 1.1 2006/10/09 06:07:54 brian Exp brian $ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License * @filesource * @@ -30,12 +30,16 @@ " /> " /> + IsAdmin()) { ?> " /> + + + GetMethod() != 'edit' && $this->config['enable_rss_autodiscovery'] != 0) { + if ($this->IsAdmin() && $this->GetMethod() != 'edit' && $this->config['enable_rss_autodiscovery'] != 0) { $rsslink = ' '."\n"; $rsslink .= ' '."\n"; echo $rsslink; @@ -44,6 +48,7 @@ >
+IsAdmin()) { ?>

config["wakka_name"] ?> : GetPageTag(); ?>

Link($this->config["root_page"]); ?> :: config["navigation_links"] ? $this->Format($this->config["navigation_links"]) : ""; } ?> +
%% 1) Footer elements in **actions/footer.php** were similarly disabled: %% brian@alabaster <10:21 PM>$ diff -u footer.php.orig footer.php --- footer.php.orig Sun Oct 8 00:37:21 2006 +++ footer.php Mon Oct 9 01:03:28 2006 @@ -24,6 +24,7 @@ /** * i18n */ + if($this->IsAdmin()) { if (!defined('PAGE_EDIT_LINK_TITLE')) define ('PAGE_EDIT_LINK_TITLE', 'Click to edit this page'); if (!defined('PAGE_EDIT_LINK_TEXT')) define ('PAGE_EDIT_LINK_TEXT', 'Edit page'); if (!defined('PAGE_HISTORY_LINK_TITLE')) define ('PAGE_HISTORY_LINK_TITLE', 'Click to view recent edits to this page'); @@ -69,17 +70,26 @@ print("Nobody".($this->GetUser() ? " (href("claim")."\">Take Ownership) ::\n" : " ::\n")); #i18n } } +} ?> -GetUser() ? "Referrers :: " : "") #i18n ?> +IsAdmin()) { + echo ($this->GetUser() ? "Referrers :: " : ""); #i18n +} +?> +IsAdmin()) { ?> Search: -FormClose(); ?> + +IsAdmin()) echo $this->FormClose(); ?> +IsAdmin()) { ?>
Link("http://validator.w3.org/check/referer", "", "Valid XHTML 1.0 Transitional") ?> :: Link("http://jigsaw.w3.org/css-validator/check/referer", "", "Valid CSS") ?> :: Powered by Link("http://wikkawiki.org/", "", "Wikka Wakka Wiki ".$this->GetWakkaVersion()) ?>
+ '; } %% 1) I want to disable new registrations, which are still available via UserSettings. I could have disabled UserSettings, but I also want to be able to log in as an admin. As of 1.1.7, this is easily accomplished by setting 'allow_user_registration' to '0' in ##wikka.config.php##. As an added measure to discourage the most blatant attacks, you might consider renaming UserSettings to something different. This isn't intended as a security measure, but might be useful for keeping the script kiddies at bay. ~~~- With the caveat of some coding issues as seen at http://wush.net/trac/wikka/ticket/236 ... ok, then again, this is per a modification to the 1.1.6.2 version ... and of course, most of that issue may be coded out of the skin anyway .... so perhaps the remark is out of place? (WazoO - 2006-10-13) ---- CategoryDocumentation