summaryrefslogtreecommitdiffstats
path: root/colophon/oddmuse-config.md
diff options
context:
space:
mode:
Diffstat (limited to 'colophon/oddmuse-config.md')
-rw-r--r--colophon/oddmuse-config.md232
1 files changed, 0 insertions, 232 deletions
diff --git a/colophon/oddmuse-config.md b/colophon/oddmuse-config.md
deleted file mode 100644
index 802358ad..00000000
--- a/colophon/oddmuse-config.md
+++ /dev/null
@@ -1,232 +0,0 @@
-## config
-
-<pre><code class="perl">
-# -*- mode: perl -*-
-use utf8; # this file contains utf8 strings.
-do "$ENV{OMHOME}/omecp.pl";
-
-$CookieName = 'ECwiki';
-$SiteName = 'EmacsConf';
-$HomePage = 'main';
-$RCName = "recent_changes";
-$FullUrl = 'https://emacsconf.org';
-$ScriptName = "$FullUrl";
-# $LogoUrl = '/s/emacsconf-logo1-64.png';
-$StyleSheet = '/s/ecom.css';
-$UploadAllowed = 1;
-
-#$SurgeProtectionTime = 10;
-#$SurgeProtectionViews = 50;
-
-# As we're now behind a caching proxy, the environment variable
-# REMOTE_ADDR is no longer what we want. We now want
-# HTTP_X_FORWARDED_FOR.
-$ENV{REMOTE_ADDR} = $ENV{HTTP_X_FORWARDED_FOR};
-
-$HtmlHeaders .= '<link rel="icon" href="/s/emacsconf-logo1-256.png" type="image/png"/>'
- . '<meta name=viewport content="width=device-width, initial-scale=0.86, maximum-scale=3.0, minimum-scale=0.86"/>';
-
-$SmartTitlesBrowserTitle = '%s - %s - %s';
-$SmartTitlesBrowserTitleWithoutSubtitle = '%s - %s';
-
-$FooterNote = '<p>Permission is granted to copy, distribute and/or
-modify this document under the terms of the
-<a href="https://www.gnu.org/licenses/fdl-1.3-standalone.html">GNU Free Documentation License</a>,
-Version 1.3 or any later version published by the
-<a href="https://www.fsf.org/">Free Software Foundation</a>.</p>
-<p style="font-size:70%"><a href="https://emacsconf.org/colophon">Colophon</a></p>';
-
-$UrlProtocols .= "|data|xmpp";
-
-@UserGotoBarPages = ($RCName);
-# $UserGotoBar = '<a class="local" href="https://emacsconf.org/2019/">2019</a>';
-
-$UserGotoBarPrev = '<a class="local" href="https://emacsconf.org">EmacsConf</a>';
-sub GetGotoBar {
- my $id = shift;
- return $q->span({-class=>'gotobar bar'},
- $UserGotoBarPrev,
- (map { GetPageLink($_) } @UserGotoBarPages),
- $UserGotoBar);
-}
-
-# Allow namespaces starting with a digit
-# From https://github.com/kensanata/oddmuse/issues/19#issuecomment-503984930
-$InterSitePattern = '[\p{Uppercase}\d][\w_ ]*';
-# Redefine these as well if you change $InterSitePattern since InitLinkPatterns is called before InitConfig!
-$InterLinkPattern = "($InterSitePattern:[-a-zA-Z0-9\x{0080}-\x{fffd}_=!?#\$\@~`\%&*+\\/:;.,]*[-a-zA-Z0-9\x{0080}-\x{fffd}_=#\$\@~`\%&*+\\/])$QDelim";
-$FreeInterLinkPattern = "($InterSitePattern:[-a-zA-Z0-9\x{0080}-\x{fffd}_=!?#\$\@~`\%&*+\\/:;.,()' ]+)";
-
-# Link to author page at the root namespace
-# From https://github.com/kensanata/oddmuse/issues/20#issuecomment-500402339
-sub GetAuthorLink {
- my ($username, $host) = @_;
- $username = FreeToNormal($username);
- $username =~ s/^(?:$InterSitePattern:)?$FreeLinkPattern/$1/;
- my $name = NormalToFree($username);
- if (ValidId($username) ne '') { # ValidId() returns error string
- $username = ''; # Just pretend it isn't there.
- }
- if ($username) {
- local $ScriptName = $NamespacesRoot;
- return ScriptLink(UrlEncode($username), $name, 'author');
- }
- return T('Anonymous') if $host eq 'Anonymous';
- return ColorCode($host);
-}
-
-# Fix visiting Main:X if the page doesn't exist but namespace X does.
-# Redirect!
-# From https://github.com/kensanata/oddmuse/issues/19#issuecomment-513640039
-push(@MyInitVariables, \&MyNamespacesFix);
-sub MyNamespacesFix {
- if (not GetParam('title', '')
- and GetParam('action', 'browse') eq 'browse') {
- my $id = FreeToNormal(GetId());
- if (not $NamespaceCurrent
- and (not $IndexHash{$id}
- or OpenPage($id) and PageMarkedForDeletion())
- and $Namespaces{$id}) {
- print GetRedirectPage("$id/", NormalToFree($id));
- exit;
- }
- }
-};
-
-@QuestionaskerQuestions =
- (['Please say HELLO.' => sub {
- shift =~ /^\s*(hello*|hewo*|hi*|h(i|e)ya*)!*\s*$/i }],
- );
-
-# If enabling Markdown, to allow users to switch between Creole and Markdown
-# see https://oddmuse.org/wiki/Creole_or_Markdown
-
-$CommentsPrefix = 'comments_on_';
-
-# Add 'Back to ' prefix to the link back to the article
-# with adaptation from https://oddmuse.org/wiki/Comments_on_Comment_Pages
-*MyOldGetFooterLinks = *GetFooterLinks;
-*GetFooterLinks = *MyNewGetFooterLinks;
-
-sub MyNewGetFooterLinks {
- my $html = MyOldGetFooterLinks(@_);
- my ($id, $rev) = @_;
- if ($id and $rev ne 'history' and $rev ne 'edit'
- and $CommentsPrefix) {
- if ($id =~ /^$CommentsPrefix(.*)/o) {
- my $from = NormalToFree($1);
- my $to = T('Back to ') . $from;
- $html =~ s/>$from</ accesskey="a">$to</;
- } else {
- my $from = NormalToFree($CommentsPrefix);
- my $to = T('Comments on ');
- $html =~ s/$from/$to/;
- }
- }
- # $html =~ s!</div>! <a class="local" href="https://emacsconf.org/colophon">Colophon</a></div>!;
- return $html;
-}
-
-# [[vid:addr]] rule for embedding videos
-push(@MyRules, \&VidRule);
-
-sub VidRule{
- if (/\G\[\[vid:(\d+\/[a-z0-9-_\.]*)\]\]/cgi) {
- my $vid = $1;
- return qq{
-<video controls preload="metadata">
- <source src="/videos/$vid" type="video/mp4">
-</video><br/>
-<a href="/videos/$vid" download>Download</a>};
- }
- return;
-}
-
-# [[vidlink:addr]] rule for linking to videos
-push(@MyRules, \&VidLinkRule);
-
-sub VidLinkRule{
- if (/\G\[\[vidlink:(\d+\/[a-z0-9-_\.]*)\|(.*)\]\]/cgi) {
- my ($vid, $cap) = ($1, $2);
- return qq{<a href="/videos/$vid">$cap</a>};
- }
- return;
-}
-</code></pre>
-
-## server.conf
-
-```conf
-{
- hypnotoad => {
- listen => ['http://127.0.0.1:11937'],
- workers => 10
- }
-};
-```
-
-## server.pl
-
-```perl
-#!/usr/bin/env perl
-
-# Copyright (C) 2015-2016 Alex Schroeder <alex@gnu.org>
-
-# This program is free software: you can redistribute it and/or modify it under
-# the terms of the GNU General Public License as published by the Free Software
-# Foundation, either version 3 of the License, or (at your option) any later
-# version.
-#
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program. If not, see <http://www.gnu.org/licenses/>.
-
-use Mojolicious::Lite;
-
-# This needs to be in a different section, sometimes?
-plugin CGI => {
- support_semicolon_in_query_string => 1,
-};
-
-plugin CGI => {
- # route => '/wiki',
- route => '/',
- # We need this for older versions of Mojolicious::Plugin::CGI
- script => 'wiki.pl',
- run => \&OddMuse::DoWikiRequest,
- before => sub {
- no warnings;
- $OddMuse::RunCGI = 0;
- # The default data directory is determined by the environment variable
- # WikiDataDir and falls back to the following
- # $OddMuse::DataDir = '/tmp/oddmuse';
- use warnings;
- require './build/wiki.pl' unless defined &OddMuse::DoWikiRequest;
- },
- env => {
- "OMHOME" => "/home/omec"
- },
- # path to where STDERR from cgi script goes
- errlog => ($ENV{WikiDataDir} || '/tmp/oddmuse')
- . "/wiki.log",
-};
-
-#plugin SetUserGroup => {user => "omec", group => "omec"};
-
-#get '/' => sub {
-# my $self = shift;
-# $self->redirect_to('/wiki');
-#};
-
-app->plugin('Config');
-app->start;
-```
-
-## ~/omecp.pl
-
-```perl
-$AdminPass = 'redacted';
-```