moved qdb here because matt is lazy
This commit is contained in:
parent
fb02a3f4c5
commit
2ee07a1396
22
pub/qdb/.htaccess
Normal file
22
pub/qdb/.htaccess
Normal file
@ -0,0 +1,22 @@
|
||||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine On
|
||||
RewriteRule ^([0-9]+|0x[0-9A-Fa-f]+|0b[01]+)$ index.cgi?id=$1 [L]
|
||||
RewriteRule ^(rss|atom)$ %{REQUEST_URI}/qotw [L,R=301]
|
||||
RewriteRule ^(rss|atom)/([a-z_]+)$ index.cgi?action=$2&output=$1 [L]
|
||||
RewriteRule ^ms/([a-z_]+)$ index.cgi?action=$1&output=ms [L]
|
||||
RewriteRule ^search/(.+) index.cgi?action=search&query=$1 [L]
|
||||
RewriteRule ^tags/([^\ ]+)$ index.cgi?action=search&query=tag:$1 [L]
|
||||
RewriteRule ^([a-z_]+)(/([a-z_]*))?$ index.cgi?action=$1&admin_action=$3 [L,QSA]
|
||||
</IfModule>
|
||||
|
||||
<IfModule mod_access.c>
|
||||
<Files chirpy.ini>
|
||||
order deny,allow
|
||||
deny from all
|
||||
</Files>
|
||||
</IfModule>
|
||||
|
||||
AuthType WebAuth
|
||||
require valid-user
|
||||
|
||||
AddHandler cgi-script .cgi
|
BIN
pub/qdb/.install.txt.swp
Normal file
BIN
pub/qdb/.install.txt.swp
Normal file
Binary file not shown.
111
pub/qdb/changelog.txt
Normal file
111
pub/qdb/changelog.txt
Normal file
@ -0,0 +1,111 @@
|
||||
_____________________________________________________________________________
|
||||
/ \
|
||||
| Chirpy! v0.3 2007-02-09 |
|
||||
\_____________________________________________________________________________/
|
||||
|
||||
* Added statistics page
|
||||
* Users can now revert their vote if, for example, they accidentally clicked
|
||||
on the wrong link
|
||||
* Now keeping (and displaying) vote counts per quote
|
||||
* Radically changed order of top and bottom quotes, by introducing quote
|
||||
scores: score = (positive votes + 1) / (negative votes + 1), as suggested by
|
||||
sp3000 at irc.mozilla.org #bs on 2006-10-28
|
||||
* Added metadata-based logging, including search
|
||||
* Made rating and reporting links use POST instead of GET and added
|
||||
intermediate confirmation page for non-AJAX users
|
||||
* Added microsummaries
|
||||
* You can now edit quotes before approving them
|
||||
* Added wildcard searching
|
||||
* Made tag cloud ignore unapproved quotes
|
||||
* Tag cloud can now use logarithmic calculation, to make tag use distribution
|
||||
appear more even
|
||||
* Added dynamic tag cloud pruning based on number of quotes
|
||||
* Administrative interface now only displays tabs that are available
|
||||
* Improved and simplified captcha support; added preliminary support for
|
||||
GD::SecurityImage as an alternative for Authen::Captcha; to enable captchas,
|
||||
simply webapp.captcha_provider=Authen_Captcha should suffice
|
||||
* Made pages point to their own feeds instead of QotW (where applicable)
|
||||
* Added description field in chirpy.ini, for use in feeds
|
||||
* Made quote titles in feeds more meaningful
|
||||
* Put page title in feed title instead of subtitle
|
||||
* Improved feed modification detection
|
||||
* Made templates use HTML::Template's caching feature, which is pretty fast
|
||||
* Template parameters are now global, which means you can include parameters
|
||||
from outside a loop
|
||||
* Renamed template parameters for search form; they are now always available
|
||||
and the default theme includes a search form with search results
|
||||
* Optimized template parsing a little
|
||||
* Moved administration-related subs to a separate class, speeding up non-admin
|
||||
pages somewhat
|
||||
* Extended quick style linking method: <> is now omitted and link text can be
|
||||
changed by separating it from URL by whitespace, e.g.
|
||||
Surf to <http://chirpy.sourceforge.net/ The Chirpy! web site>!
|
||||
* Simplified RSS feed: using HTML in <description> and removing
|
||||
<content:encoded> and <xhtml:body>, making feedvalidator.org like it more
|
||||
* Added tags as categories in feeds
|
||||
* Made check for expired sessions a lot faster
|
||||
* News body on start page is now divided into paragraphs; opening and closing
|
||||
tag are included, so update your templates
|
||||
* Bugfix: live rating no longer throws a JavaScript error in IE
|
||||
* Bugfix: quote rating up log entry now includes quote ID (#1493589)
|
||||
* Just for fun, quote IDs can now be in binary and hex notation too, as per
|
||||
<http://quotes.burntelectrons.org/844>
|
||||
|
||||
_____________________________________________________________________________
|
||||
/ \
|
||||
| Chirpy! v0.2 2006-05-02 |
|
||||
\_____________________________________________________________________________/
|
||||
|
||||
* Fixed SQL injection vulnerabilities
|
||||
* Fixed logging of author when editing or removing news items (#1289047)
|
||||
* Added on-the-fly gzip compression to Chirpy::UI::WebApp--webapp.enable_gzip=1
|
||||
in your configuration file enables it
|
||||
* Added optional captcha image to Chirpy::UI::WebApp's quote submission page
|
||||
* Added quote tagging
|
||||
* Made search query Google-style and added tag: prefix for searching for quotes
|
||||
with a certain tag
|
||||
* Made top and bottom quotes browsable
|
||||
* Added periodic update check (site owners only)
|
||||
* Made ui.quotes_per_page apply to random, top and bottom quotes instead of
|
||||
individual setting per page type
|
||||
* Added webapp.quotes_per_feed to set maximum number of quotes in feeds
|
||||
individually
|
||||
* Made Atom 1.0 feed valid by adding feed ID and webmaster name. Webmaster name
|
||||
must be configured as webapp.webmaster_name
|
||||
* Added quote_count method to Chirpy::DataManager and APPROVED_QUOTE_COUNT,
|
||||
UNAPPROVED_QUOTE_COUNT, and TOTAL_QUOTE_COUNT to templates
|
||||
* Added mass quote approval and unflagging to Chirpy::UI::WebApp's
|
||||
administration section
|
||||
* Changed Chirpy::DataManager's API so add_* methods set IDs
|
||||
* Added option to automatically turn URLs and e-mail addresses in quotes into
|
||||
hyperlinks
|
||||
* Made Chirpy::UI::WebApp escape all e-mail addresses to prevent spam
|
||||
* Made Chirpy::UI::WebApp replace sequences of whitespaces with   instead
|
||||
of , so the Atom feed remains valid
|
||||
* Made quote reporting require session information to prevent false positives
|
||||
from crawlers
|
||||
* Fixed sub account_count in Chirpy::DataManager::MySQL; removing accounts now
|
||||
works again
|
||||
* Optimized fetching single quote in Chirpy::DataManager::MySQL
|
||||
* Made Chirpy::UI::WebApp::Session automatically remove expired sessions every
|
||||
24 hours; util/remove_expired_sessions.pl is now obsolete
|
||||
* Fixed US English (and Dutch) locale: quote_submission_thanks_administrator is
|
||||
now quote_submission_thanks_no_approval
|
||||
* Extended feed templates with a couple of variables and added rating and
|
||||
report URLs as well as notes to the default templates
|
||||
* Replaced feed templates' CSS with legacy HTML
|
||||
* Cosmetic fixes to Chirpy::UI::WebApp's live rating system
|
||||
* Mentioned Chirpy::UI::WebApp::Session::DataManager in Chirpy::DataManager's
|
||||
documentation
|
||||
* Cosmetic fix in Account Manager: space after New Account
|
||||
* Replaced table for vertical split on start page with divs
|
||||
* No longer overriding old onunload function in style switcher
|
||||
* Added some debugging features
|
||||
* Added changelog.txt
|
||||
|
||||
_____________________________________________________________________________
|
||||
/ \
|
||||
| Chirpy! v0.1 2005-09-12 |
|
||||
\_____________________________________________________________________________/
|
||||
|
||||
* First official release
|
42
pub/qdb/chirpy.ini
Normal file
42
pub/qdb/chirpy.ini
Normal file
@ -0,0 +1,42 @@
|
||||
[general]
|
||||
title=CSC Quote Database
|
||||
description=Quotes from the CSC
|
||||
base_path=./src
|
||||
locale=en-US
|
||||
rating_limit_count=60
|
||||
rating_limit_time=60
|
||||
update_check=1
|
||||
|
||||
[data]
|
||||
type=MySQL
|
||||
mysql.hostname=localhost
|
||||
mysql.port=3306
|
||||
mysql.username=mimcpher
|
||||
mysql.password=oq5VuqPtNfLTFRZozDsH
|
||||
mysql.database=mimcpher
|
||||
mysql.prefix=qdb_
|
||||
|
||||
[ui]
|
||||
type=WebApp
|
||||
date_time_format=%Y-%m-%d %H:%M GMT
|
||||
date_format=%Y-%m-%d
|
||||
time_format=%H:%M GMT
|
||||
use_gmt=1
|
||||
quotes_per_page=30
|
||||
recent_news_item=3
|
||||
moderation_queue_public=1
|
||||
tac_cloud_logarithmic=1
|
||||
webapp.webmaster_name=Calum T. Dalek
|
||||
webapp.webmaster_email=calum@csclub.uwaterloo.ca
|
||||
webapp.site_url=https://csclub.uwaterloo.ca/~j3parker/pub/qdb/
|
||||
webapp.resources_url=https://csclub.uwaterloo.ca/~j3parker/pub/qdb/res
|
||||
webapp.theme=default
|
||||
webapp.welcome_text_file=welcome.html
|
||||
webapp.cookie_domain=csclub.uwaterloo.ca
|
||||
webapp.cookie_path=/~j3parker/pub/qdb
|
||||
webapp.session_expiry=+3d
|
||||
webapp.enable_short_urls=0
|
||||
webapp.enable_feeds=1
|
||||
webapp.quotes_per_feed=50
|
||||
webapp.enable_gzip=0
|
||||
webapp.enable_autolink=1
|
60
pub/qdb/index.cgi
Executable file
60
pub/qdb/index.cgi
Executable file
@ -0,0 +1,60 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# index.cgi #
|
||||
# Initialization script #
|
||||
###############################################################################
|
||||
# $Id:: index.cgi 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use CGI::Carp qw(fatalsToBrowser set_message);
|
||||
|
||||
BEGIN {
|
||||
unshift @INC, 'src/modules';
|
||||
set_message(sub {
|
||||
my $msg = shift;
|
||||
print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"', $/,
|
||||
'"http://www.w3.org/TR/html4/strict.dtd">', $/,
|
||||
'<html>', $/,
|
||||
'<head>', $/,
|
||||
'<meta http-equiv="Content-Type"', $/,
|
||||
'content="text/html; charset=UTF-8">', $/,
|
||||
'<title>An Error Occurred</title>', $/,
|
||||
'</head>', $/,
|
||||
'<body>', $/,
|
||||
'<h1>An Error Occurred</h1>', $/,
|
||||
'<blockquote><pre>', $msg, '</pre></blockquote>', $/,
|
||||
'<p><em>Powered by <a', $/,
|
||||
'href="http://chirpy.sourceforge.net/">Chirpy!</a></em></p>', $/,
|
||||
'</body>', $/,
|
||||
'</html>';
|
||||
exit;
|
||||
});
|
||||
}
|
||||
|
||||
use Chirpy 0.3;
|
||||
|
||||
chirpy('./chirpy.ini');
|
||||
|
||||
###############################################################################
|
533
pub/qdb/install.txt
Normal file
533
pub/qdb/install.txt
Normal file
@ -0,0 +1,533 @@
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# INSTALLATION INSTRUCTIONS #
|
||||
###############################################################################
|
||||
|
||||
|
||||
CONTENTS
|
||||
========
|
||||
|
||||
1. INTRODUCTION
|
||||
|
||||
2. REQUIREMENTS
|
||||
|
||||
3. INSTALLATION
|
||||
3.1. Copy files
|
||||
3.2. Configure
|
||||
3.2.1. The [general] Section
|
||||
3.2.2. The [data] Section
|
||||
3.2.3. The [ui] Section
|
||||
3.3. Setup
|
||||
3.4. Import
|
||||
|
||||
4. UPGRADING
|
||||
|
||||
5. RUN CHIRPY!
|
||||
|
||||
6. NEXT STEPS
|
||||
6.1. Your Own Theme
|
||||
6.2. Your Own Locale
|
||||
6.3. Your Own Data Manager
|
||||
6.4. Your Own User Interface
|
||||
|
||||
|
||||
1. INTRODUCTION
|
||||
===============
|
||||
|
||||
Thank you for trying this Chirpy! beta version. Note that, while every feature
|
||||
contained in this product is functional unless stated otherwise, you may very
|
||||
well run into problems here and there. However, in most cases, there's probably
|
||||
an easy fix. You may find the following URLs helpful:
|
||||
|
||||
* Trackers (Bugs, Support, Feature Requests)
|
||||
http://sourceforge.net/tracker/?group_id=147270
|
||||
|
||||
* Chirpy! web site
|
||||
http://chirpy.sourceforge.net/
|
||||
|
||||
* API Specification (mainly for developers)
|
||||
http://chirpy.sourceforge.net/pod/
|
||||
|
||||
|
||||
2. REQUIREMENTS
|
||||
===============
|
||||
|
||||
To install Chirpy!, you'll need web space that gives you access to Perl 5.8 and
|
||||
a SQL server running MySQL 4.1 or higher. Those version numbers are expected
|
||||
to drop a little in an upcoming version.
|
||||
|
||||
In addition, you'll need these Perl modules:
|
||||
|
||||
Carp Data::Dumper HTML::Template
|
||||
Digest::MD5 DBD::mysql HTTP::Date
|
||||
Encode DBI URI::Escape
|
||||
POSIX Storable
|
||||
|
||||
It seems like a long list, but most of them are common and come with standard
|
||||
distributions of Perl. Other modules will need to be installed separately; you
|
||||
should probably ask your host about that. If any of these modules are missing,
|
||||
Chirpy! will not work.
|
||||
|
||||
In addition, Chirpy! uses the CGI::Carp module for verbose error reporting,
|
||||
which makes problems easier to trace. While this module is also really common,
|
||||
you can drop the dependency by removing statements containing "CGI::Carp" or
|
||||
"set_message" from the scripts.
|
||||
|
||||
|
||||
3. INSTALLATION
|
||||
===============
|
||||
|
||||
If all the requirements are met, you are ready to begin the installation of
|
||||
Chirpy!. Let's go!
|
||||
|
||||
3.1. Copy files
|
||||
---------------
|
||||
|
||||
Since you're reading this file, we'll assume that you've already extracted the
|
||||
entire installation package.
|
||||
|
||||
First, we'll take a quick look at the contents of the package. You should have
|
||||
the following directories and files in the root:
|
||||
|
||||
res/ The resources directory. Resources are public files that
|
||||
are required by themes, such as images and style sheets.
|
||||
src/ The source directory. Contains all the necessary files to
|
||||
run Chirpy!, including its modules, locales, templates and
|
||||
configuration file.
|
||||
util/ Contains some utilities that you may find useful while
|
||||
installing or using Chirpy!.
|
||||
.htaccess Has some directives that enable short URLs. Covered later
|
||||
in this document.
|
||||
changelog.txt All the stuff that's changed between Chirpy! releases.
|
||||
index.cgi The main script. Will be the only URL that is accessed
|
||||
directly by visitors.
|
||||
install.txt This document.
|
||||
license.txt The GNU General Public License, under which Chirpy! is
|
||||
distributed.
|
||||
|
||||
Now, we're going the copy the files to a public path on the web server. This is
|
||||
usually done using an FTP client.
|
||||
|
||||
As for the files in the package root directory, the only one you really need is
|
||||
index.cgi. Since this is a Perl script, it has to be inside a path where the
|
||||
server allows execution of scripts. Most servers these days will allow that
|
||||
anywhere, but yours might require that you put it inside a cgi-bin/ directory,
|
||||
which may even be outside the document root on the FTP server. This is no
|
||||
problem--just make sure it wants to execute it and not display the contents.
|
||||
|
||||
The index.cgi file needs some attributes. This is done by issueing a SITE CHMOD
|
||||
command on the FTP server. If you use a graphical FTP client, you can probably
|
||||
right-click on the file and tick off the necessary attributes. They are:
|
||||
|
||||
Owner READ WRITE EXECUTE
|
||||
Group READ - EXECUTE
|
||||
Others READ - EXECUTE
|
||||
|
||||
This translates to the string representation "rwxr-xr-x" or, numerically, 755
|
||||
on UNIX systems. On most systems, this step is essential. You will get an error
|
||||
page if you fail to change the file's attributes. Also, if you are using an FTP
|
||||
client, make sure you have uploaded index.cgi in ASCII (text) mode, not image
|
||||
(binary).
|
||||
|
||||
You may want to copy the .htaccess file from the package root as well. Make
|
||||
sure you don't confuse it with the one in the src/ directory! The one covered
|
||||
here allows you to use short URLs, which are easy to remember, using the
|
||||
mod_rewrite Apache module. To use that option, you will need to run Chirpy! on
|
||||
an Apache web server that has the mod_rewrite module. Note that, while short
|
||||
URLs will not work if mod_rewrite is not enabled, it should be safe to have the
|
||||
.htaccess file there anyway, since it checks for the module first. Moreover, it
|
||||
also attempts to block access to the configuration file, so you might want to
|
||||
have it anyway; we will cover that configuration file in a moment.
|
||||
|
||||
The res/ directory only holds static files and should reside in a public path
|
||||
on the server, like <http://www.yourserver.com/chirpy/res>. You can upload it
|
||||
anywhere, even on a different server. We'll need the URL later for the
|
||||
configuration.
|
||||
|
||||
Next up: the src/ directory. This one does not have to be publicly accessible
|
||||
and for security reasons, it really shouldn't be either. Chirpy! takes some
|
||||
precautions to disallow access to it by placing a .htaccess file in it, that
|
||||
holds code specific to the Apache web server. However, placing the directory
|
||||
outside the document root (if possible) is a MUCH safer choice.
|
||||
Alternatively, you can keep chirpy.ini, the configuration file, which we will
|
||||
cover later in this document, outside the document root and the src/ directory.
|
||||
|
||||
Inside the src/ directory, you will find a directory called cache/. Make sure
|
||||
it is empty. Also, it needs to be world-writable, i.e. its attributes must be
|
||||
set to "rwxrwxrwx" or 777.
|
||||
|
||||
The util/ directory should NOT be uploaded. You are however likely to need the
|
||||
setup.pl script inside it, but we'll get to that in a moment.
|
||||
|
||||
That covers uploading the files--almost. We'll need to upload a configuration
|
||||
file at the end of the next step.
|
||||
|
||||
3.2. Configure
|
||||
--------------
|
||||
|
||||
Chirpy! stores its configuration in a standard .INI file, a basic format which
|
||||
is common on Windows systems. In this step, we'll create such a configuration
|
||||
file.
|
||||
|
||||
By default, Chirpy! looks for chirpy.ini in the working directory (which is
|
||||
where you put index.cgi) and inside the src/ directory if it is directly inside
|
||||
the working directory. Otherwise, you will have to edit index.cgi. As explained
|
||||
above, that little bit of editing is recommended, so your configuration file
|
||||
resides outside the public domain. After all, it will contain your MySQL server
|
||||
password, and we don't want visitors to read that, now, do we?
|
||||
|
||||
Right, let's create that chirpy.ini file now. Here is a basic example:
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
[general]
|
||||
title=My Little QDB
|
||||
description=A place for my quotes
|
||||
base_path=./src
|
||||
locale=en-US
|
||||
rating_limit_count=2
|
||||
rating_limit_time=60
|
||||
update_check=1
|
||||
|
||||
[data]
|
||||
type=MySQL
|
||||
mysql.hostname=localhost
|
||||
mysql.port=3306
|
||||
mysql.username=my_username
|
||||
mysql.password=my_password
|
||||
mysql.database=my_database
|
||||
mysql.prefix=chirpy_
|
||||
|
||||
[ui]
|
||||
type=WebApp
|
||||
date_time_format=%Y-%m-%d %H:%M GMT
|
||||
date_format=%Y-%m-%d
|
||||
time_format=%H:%M GMT
|
||||
use_gmt=1
|
||||
quotes_per_page=10
|
||||
recent_news_items=3
|
||||
moderation_queue_public=1
|
||||
tag_cloud_logarithmic=1
|
||||
webapp.webmaster_name=John Doe
|
||||
webapp.webmaster_email=you@yourserver.com
|
||||
webapp.site_url=http://www.yourserver.com/cgi-bin/chirpy
|
||||
webapp.resources_url=http://www.yourserver.com/chirpy/res
|
||||
webapp.theme=default
|
||||
webapp.welcome_text_file=welcome.html
|
||||
webapp.cookie_domain=yourserver.com
|
||||
webapp.cookie_path=/cgi-bin/chirpy
|
||||
webapp.session_expiry=+3d
|
||||
webapp.enable_short_urls=0
|
||||
webapp.enable_feeds=0
|
||||
webapp.quotes_per_feed=50
|
||||
webapp.enable_gzip=0
|
||||
webapp.enable_autolink=0
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
A lot of the values don't look very interesting right now, but we'll have to
|
||||
change some of the others.
|
||||
|
||||
3.2.1. The [general] Section
|
||||
----------------------------
|
||||
|
||||
title Change this value to the title you want your QDB to have.
|
||||
description Enter a brief description of the purpose of your QDB.
|
||||
base_path Enter the absolute or relative path to the src/ directory
|
||||
here. When using relative paths, this is again relative to
|
||||
the directory where index.cgi is.
|
||||
update_check Set this to 1 to tell Chirpy! to automatically check for
|
||||
updates periodically. Only site owners will be informed of
|
||||
available updates. This feature requires that libwww-perl
|
||||
(LWP) be installed; if it is not, Chirpy! will just show
|
||||
you an informative error message.
|
||||
|
||||
3.2.2. The [data] Section
|
||||
-------------------------
|
||||
|
||||
mysql.hostname Enter the name of the MySQL server here. Usually, this will
|
||||
be "localhost".
|
||||
mysql.port Enter the port the MySQL server uses. The default is 3306.
|
||||
mysql.username Enter your MySQL username. This is not necessarily the same
|
||||
as your regular username.
|
||||
mysql.password Enter your MySQL password. This is not necessarily the same
|
||||
as your regular password.
|
||||
mysql.database Enter the name of the MySQL database Chirpy! should use. If
|
||||
it does not exist, you need to create it first. Do not
|
||||
create any tables; Chirpy! will do that for you.
|
||||
mysql.prefix If you only have one MySQL database, Chirpy! can make its
|
||||
tables easy to find by prefixing their names with the text
|
||||
you enter here. The default "chirpy_" is a wise choice.
|
||||
|
||||
3.2.3. The [ui] Section
|
||||
-----------------------
|
||||
|
||||
webapp.webmaster_name
|
||||
Your name.
|
||||
webapp.webmaster_email
|
||||
Your e-mail address. Don't worry about spam, Chirpy! will
|
||||
use some fancy tricks to hide it.
|
||||
webapp.site_url The URL where you put index.cgi.
|
||||
webapp.resources_url
|
||||
The URL where you put the res/ directory.
|
||||
webapp.cookie_domain
|
||||
Essentially the domain name (without the www prefix) from
|
||||
your site's URL. This will be used to store cookies.
|
||||
webapp.cookie_path The part that comes after the domain in the site URL. This
|
||||
will also be used to store cookies.
|
||||
webapp.enable_short_urls
|
||||
Change this to 1 to enable the short URLs feature described
|
||||
above. If you get "Not Found" errors while browsing the QDB
|
||||
later, you should turn it off.
|
||||
webapp.enable_feeds Chirpy! can offer an RSS 2.0 feed and an Atom 1.0 feed of
|
||||
the Quotes of the Week, so visitors can syndicate them. If
|
||||
you want to enable those, set this to 1.
|
||||
webapp.quotes_per_feed
|
||||
This is the maximum number of quotes to include in a feed.
|
||||
In theory, Chirpy! can provide a content feed for any page,
|
||||
and since feeds do not offer "Previous"/"Next" links, this
|
||||
should be a sensible number. The default is 50.
|
||||
webapp.enable_gzip Chirpy! can greatly decrease bandwidth usage by compressing
|
||||
output on the fly if the browser supports it. Set this to 1
|
||||
to enable that. It requires the Compress::Zlib Perl module.
|
||||
webapp.enable_autolink
|
||||
Change this to 1 to automatically turn URLs and e-mail
|
||||
addresses in quote bodies into hyperlinks. This feature is
|
||||
still sort of experimental, but should work fine.
|
||||
webapp.captcha_provider
|
||||
If you wish to prevent malicious users from spamming the
|
||||
quote submission page, you will want to use captcha images.
|
||||
This parameter sets the captcha provider, which will be
|
||||
Authen_Captcha in most cases. Then Authen_Captcha provider
|
||||
relies on Authen::Captcha being installed.
|
||||
|
||||
You may want to turn the captcha feature off at first, so you can test-drive
|
||||
Chirpy!'s other features. Configuring the captcha feature should be easy in the
|
||||
case of Authen_Captcha. The alternative is to use GD_SecurityImage. Support for
|
||||
that one is preliminary for now. If you are interested in using it, please
|
||||
consult the appropriate documentation.
|
||||
|
||||
That covers the configuration file. Save it as chirpy.ini and, as stressed
|
||||
before, try to store it at a location on the server which cannot be accessed
|
||||
using a Web browser.
|
||||
|
||||
Now, we'll have to modify index.cgi a little to tell it where to find the
|
||||
configuration file. Again, it looks for chirpy.ini in the working directory and
|
||||
inside src/, but hopefully, it won't be there. So we'll just open index.cgi in
|
||||
a text editor and change the line
|
||||
|
||||
chirpy;
|
||||
|
||||
to the following:
|
||||
|
||||
chirpy('/path/to/chirpy.ini');
|
||||
|
||||
Again, you can use either an absolute path or a path relative to the working
|
||||
directory. You'll also need this path in the next step.
|
||||
|
||||
While we're editing index.cgi, there are two more things you might have to
|
||||
change. The first is the path to the modules/ directory inside src/. This path
|
||||
is stored like:
|
||||
|
||||
unshift @INC, 'src/modules';
|
||||
|
||||
If you have not placed the src/ directory in the same directory as index.cgi,
|
||||
update the path so Perl can find the Chirpy! modules.
|
||||
|
||||
The other thing you might have to change is the path to Perl itself. Most
|
||||
servers have it at /usr/bin/perl, but if yours doesn't, change the first line
|
||||
of index.cgi to "#!" followed by the exact path to Perl.
|
||||
|
||||
3.3. Setup
|
||||
----------
|
||||
|
||||
Now that all the files are there, we'll grab setup.pl from the util/ directory
|
||||
and open it in a text editor. Look for the line that reads
|
||||
|
||||
my $ch = new Chirpy();
|
||||
|
||||
and change that to
|
||||
|
||||
my $ch = new Chirpy('/path/to/chirpy.ini');
|
||||
|
||||
using the same path you entered in index.cgi. In addition, you will have to
|
||||
update the path to src/modules/ and Perl itself again, if you had to do so for
|
||||
index.cgi.
|
||||
|
||||
Now, upload setup.pl to the directory where index.cgi resides and change its
|
||||
attributes so they are the same as index.cgi's; as described above, they should
|
||||
be rwxr-xr-x (755). Again, since this is a Perl script, upload in ASCII mode!
|
||||
|
||||
Now, we're going to call your Web browser into action. Open it and surf to the
|
||||
URL where setup.pl should be now, e.g.
|
||||
|
||||
http://www.yourserver.com/cgi-bin/chirpy/setup.pl
|
||||
|
||||
That should give you a basic page, welcoming you to the setup procedure. If
|
||||
not, let's go over a few common problems ...
|
||||
|
||||
- If you get the source code of setup.pl or maybe a download window, the server
|
||||
doesn't allow execution of Perl scripts in that directory. You'll probably
|
||||
need to use the cgi-bin directory instead.
|
||||
|
||||
- If you get a Forbidden error, you probably didn't change the script's
|
||||
attributes properly, as described above.
|
||||
|
||||
- If you get a fairly verbose error that has line numbers and lots of weird
|
||||
characters and other stuff that confuses you in it, the server executed the
|
||||
script, but it crashed somewhere along the way. Something may have gone wrong
|
||||
with the upload of one or more files; upload them again. If that doesn't do
|
||||
any good, paste the error message at the Support Tracker, to which you can
|
||||
find the URL at the start of this document.
|
||||
|
||||
- If you get a generic "Internal Server Error" page, the server most likely
|
||||
failed to execute the script at an earlier stage. Some files may have gotten
|
||||
corrupted in the upload process; try uploading them again. If that doesn't
|
||||
help, go over the text above to see if you didn't miss anything. If problems
|
||||
persist, your host can give you a copy of the server's error log, which may
|
||||
tell you more. If you can get an error message from the log, you can post
|
||||
that at the Support Tracker; without it, the error will be nearly impossible
|
||||
to trace.
|
||||
|
||||
Assuming you've reached the setup page now, you get to decide if you want to
|
||||
keep your existing installation if any. If you're installing Chirpy! for the
|
||||
first time, you should choose to keep data, since it's faster. That should give
|
||||
you a page with a basic event log for the setup procedure. If it tells you the
|
||||
setup procedure has been completed, you can go to the next step now. If not,
|
||||
take a look at the error and see if you can fix things. If not, try the Support
|
||||
Tracker for assistance.
|
||||
|
||||
3.4. Import
|
||||
-----------
|
||||
|
||||
This step is optional. It only applies if you have the Rash Quote Management
|
||||
System installed and you want to migrate its data to Chirpy!. If you have no
|
||||
idea what this is about, just skip this step.
|
||||
|
||||
To import Rash's data, grab chirpy_rqms_import.php from the util/ directory.
|
||||
Open it in a text editor and edit the configuration values at the start of the
|
||||
script. Then place it in the directory where you installed Rash, so it can find
|
||||
config.php. Surf to chirpy_rqms_import.php and everything should be clear from
|
||||
there. If anything goes wrong, try the Support Tracker.
|
||||
|
||||
|
||||
4. UPGRADING
|
||||
============
|
||||
|
||||
If you are upgrading from Chirpy! version 0.1 or 0.2, you should just move the
|
||||
updated setup.pl script from the "util" directory into Chirpy!'s root directory
|
||||
for a second, make it executable, and surf to it. Chirpy! will then ask you if
|
||||
you want to perform a fresh installation or an upgrade. Now, DO *NOT* CLICK ON
|
||||
"FRESH INSTALLATION," because you would lose all your quotes, accounts, etc.
|
||||
Instead, click the "UPGRADE" button, wait for the page to load, watch Chirpy!
|
||||
inform you of the successful upgrade, and remove setup.pl again.
|
||||
|
||||
Additionally, as Chirpy! 0.3 offers quite a couple of new features, you will
|
||||
probably want to play with those. Most of them just come down to adding a line
|
||||
in the configuration file. For captchas, you will need to create a couple of
|
||||
directories; just scroll back to section 3.2, where the configuration file is
|
||||
explained--it's all there. Enjoy!
|
||||
|
||||
|
||||
5. RUN CHIRPY!
|
||||
==============
|
||||
_____________________________________________________________________________
|
||||
| |
|
||||
| !!! DON'T FORGET TO REMOVE THE SETUP SCRIPT FROM THE SERVER FIRST !!! |
|
||||
|_____________________________________________________________________________|
|
||||
|
||||
By now, the setup script should have directed you to your brand new Chirpy!
|
||||
installation already. If not, append /index.cgi to your site URL and open that
|
||||
URL. That should give you a cute little start page. You should be able to leave
|
||||
off index.cgi in the URL now--try it. If it doesn't work, you should definitely
|
||||
turn short URLs off. If something else goes wrong, you should try the Support
|
||||
Tracker; the URL is at the beginning of this file.
|
||||
|
||||
Now, you're pretty much finished. Except that you should change the default
|
||||
password. Surf to the administration section, log in as "superuser" with the
|
||||
password "password" (if you didn't poke at setup.pl already) and click on the
|
||||
"Manage Accounts" option. Select the "superuser" account and modify it.
|
||||
|
||||
That concludes the installation of Chirpy!. I hope you'll enjoy it. If you run
|
||||
into a problem or you'd like to see a new feature in the next release, surf to
|
||||
the Trackers.
|
||||
|
||||
Congratulations on a successful installation!
|
||||
|
||||
|
||||
6. NEXT STEPS
|
||||
=============
|
||||
|
||||
Now that you've got a working Chirpy! installation, you can tweak it to your
|
||||
liking. Most of this is done from the configuration file. If you want to change
|
||||
the welcome message, you just edit the file welcome.html in the src/ directory,
|
||||
which is actually a template.
|
||||
|
||||
As Chirpy! is a work in progress, you can expect a lot more documentation on
|
||||
customizing it in future releases. In the mean time, if you want to do more
|
||||
advanced tweaking, here are a few possible scenarios:
|
||||
|
||||
6.1. Your Own Theme
|
||||
-------------------
|
||||
|
||||
The easiest way to do this is to copy the existing "default" theme and modify
|
||||
it, after which you change webapp.theme in the configuration file to use the
|
||||
new theme. A theme is nothing but two directories named after it: the one in
|
||||
src/themes/ holds the templates for the theme, the one in res/ holds its
|
||||
resources. The template filenames are predefined, so you need to keep those
|
||||
intact. The templates are parsed by the HTML::Template Perl module, so you will
|
||||
probably have to look at its documentation for a second--or you could just
|
||||
learn to use it by looking at the default theme's source code. The manual page
|
||||
for HTML::Template can be found at
|
||||
|
||||
http://search.cpan.org/dist/HTML-Template/Template.pm
|
||||
|
||||
6.2. Your Own Locale
|
||||
--------------------
|
||||
|
||||
You might want Chirpy! in your own language, and you can have it too. If you
|
||||
look in the src/locales/ directory, you'll see that locales are actually just
|
||||
INI files. Each locale string, along with some basic instructions for locale
|
||||
creation, is documented in the POD, located at the URL at the start of this
|
||||
document.
|
||||
|
||||
6.3. Your Own Data Manager
|
||||
--------------------------
|
||||
|
||||
Chirpy! is extremely modular. If you'd rather have it store its data in your
|
||||
choice of database, you are free to implement the Chirpy::DataManager class.
|
||||
Its API is explained in the POD, which is available at the start of this
|
||||
document or by typing "perldoc Chirpy::DataManager" from a console or command
|
||||
prompt, if you have Perl installed.
|
||||
|
||||
6.4. Your Own User Interface
|
||||
----------------------------
|
||||
|
||||
Apart from creating a backend, you can also write your own frontend class. This
|
||||
class should implement Chirpy::UI. Unfortunately, the API documentation for it
|
||||
is not yet available. Note that if your UI would be a web site, you should
|
||||
probably just create a Chirpy::UI::WebApp theme as described in 5.1.
|
||||
|
||||
If you've created a theme, a locale, a data manager or a UI, please share your
|
||||
work with the community! E-mail it to me at ceetee@users.sourceforge.net and it
|
||||
might be included in the next Chirpy! release by default. Obviously, you would
|
||||
get credit for it.
|
||||
|
||||
|
||||
###############################################################################
|
340
pub/qdb/license.txt
Normal file
340
pub/qdb/license.txt
Normal file
@ -0,0 +1,340 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 2 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, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
34
pub/qdb/readme.txt
Normal file
34
pub/qdb/readme.txt
Normal file
@ -0,0 +1,34 @@
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
Installation instructions can be found in the install.txt file, which came with
|
||||
Chirpy!. For anything else, please consult http://chirpy.sourceforge.net/.
|
||||
|
||||
Many thanks go out to the guys over at irc.mozilla.org #bs for helping me test
|
||||
and giving me lots of useful feedback, to jX for hosting the irc.mozilla.org
|
||||
QDB, the first real Chirpy! web site, and to F2O.org for providing their free
|
||||
developer webspace, ideal for testing. Peace to you all. --ct
|
||||
|
||||
Chirpy! includes the projects listed below. Please consult their documentation,
|
||||
which is also supplied with Chirpy!.
|
||||
|
||||
* ExplorerCanvas <http://excanvas.sourceforge.net/>
|
||||
* WebFX Slider <http://webfx.eae.net/dhtml/slider/slider.html>
|
||||
|
||||
###############################################################################
|
39
pub/qdb/res/.htaccess
Normal file
39
pub/qdb/res/.htaccess
Normal file
@ -0,0 +1,39 @@
|
||||
###############################################################################
|
||||
# This file adds support for compressing static text content, such as CSS and #
|
||||
# JavaScript files, in order to reduce traffic. To use it, you must perform #
|
||||
# the following steps: #
|
||||
# #
|
||||
# 1. Move gzip.pl from the util/ directory to the root directory. If you had #
|
||||
# to move index.cgi, e.g. because it had to be inside a cgi-bin, then move #
|
||||
# gzip.pl there too. #
|
||||
# 2. Modify the line use constant CACHE_DIR => '...'; in gzip.pl, setting the #
|
||||
# cache directory to a writable path, where it can keep compressed files. #
|
||||
# By default, this is a directory called "gzip" in your already present #
|
||||
# "cache" directory. However, the path must be relative to the directory #
|
||||
# where you puth gzip.pl! #
|
||||
# 3. Change gzip.pl's attributes to rwxr-xr-x (755), like index.cgi. #
|
||||
# 4. Comment out the lines below by removing the # in front of them. #
|
||||
# 5. If gzip.pl is not in the root directory, modify its path in the line #
|
||||
# that calls it below. #
|
||||
# 6. Test! Obtain a tool that allows you to view HTTP headers and look at the #
|
||||
# HTTP headers for a .js or .css file inside the res/ directory. If the #
|
||||
# headers contain the line "Content-Encoding: gzip," the installation was #
|
||||
# successful. No luck? Here are some common explanations: #
|
||||
# a. Got an Internal Server Error? Verify that you uploaded gzip.pl in #
|
||||
# ASCII mode and that you set its attributes. If you did, obtain an #
|
||||
# error log from your host and see what that tells you. #
|
||||
# b. If the server redirected the request to the same URL, with "?nogzip" #
|
||||
# appended to it, the gzip.pl script did run, but decided compression #
|
||||
# was not possible because of an incompatibility. #
|
||||
# c. If the server neither compressed the file, nor redirected, then #
|
||||
# gzip.pl didn't get invoked at all. The server might not support the #
|
||||
# Rewrite module, or had trouble interpreting the directives below. #
|
||||
###############################################################################
|
||||
|
||||
#<IfModule mod_rewrite.c>
|
||||
#RewriteEngine On
|
||||
#RewriteCond %{HTTP:Accept-Encoding} \bgzip\b
|
||||
#RewriteCond %{QUERY_STRING} =""
|
||||
#RewriteCond %{REQUEST_FILENAME} -s
|
||||
#RewriteRule \.(css|js)$ ../gzip.pl?filename=%{REQUEST_FILENAME}&uri=%{REQUEST_URI}
|
||||
#</IfModule>
|
1
pub/qdb/res/captcha/.htaccess
Normal file
1
pub/qdb/res/captcha/.htaccess
Normal file
@ -0,0 +1 @@
|
||||
Options -Indexes
|
BIN
pub/qdb/res/themes/default/cite.ico
Normal file
BIN
pub/qdb/res/themes/default/cite.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
1104
pub/qdb/res/themes/default/css/default.css
Normal file
1104
pub/qdb/res/themes/default/css/default.css
Normal file
File diff suppressed because it is too large
Load Diff
66
pub/qdb/res/themes/default/css/styles/default.css
Normal file
66
pub/qdb/res/themes/default/css/styles/default.css
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# default.css #
|
||||
# "Default" color theme for the default theme #
|
||||
###############################################################################
|
||||
# $Id:: default.css 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
*/
|
||||
|
||||
a:hover, a:active {
|
||||
color: #F63;
|
||||
}
|
||||
|
||||
h1 a, h1 a:link, h1 a:visited {
|
||||
background: #CFB;
|
||||
border-top-color: #D6FFC6;
|
||||
border-bottom-color: #C9F9B9;
|
||||
}
|
||||
|
||||
ul#navigation li a:hover, ul#navigation li a:active,
|
||||
ul.tabbed-pane-header li a:hover, ul.tabbed-pane-header li a:active {
|
||||
background: #FDA;
|
||||
border-color: #F0D0A0;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover h3.quote-header {
|
||||
background: #FEC;
|
||||
border-color: #FFE9C9;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-container {
|
||||
background: #FFFCEC;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-footer, ul.quote-list li:hover .quote-tags a {
|
||||
color: #BA9;
|
||||
border-color: #FFE9C9;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-header li a.active-tab {
|
||||
background: #ECF6EC;
|
||||
border-top-color: #C0F0B0;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-contents {
|
||||
border: 1px solid #ECF6EC;
|
||||
}
|
66
pub/qdb/res/themes/default/css/styles/fish_tank.css
Normal file
66
pub/qdb/res/themes/default/css/styles/fish_tank.css
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# fish_tank.css #
|
||||
# "Fish Tank" color theme for the default theme #
|
||||
###############################################################################
|
||||
# $Id:: fish_tank.css 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
*/
|
||||
|
||||
a:hover, a:active {
|
||||
color: #3F6;
|
||||
}
|
||||
|
||||
h1 a, h1 a:link, h1 a:visited {
|
||||
background: #BCF;
|
||||
border-top-color: #C6D6FF;
|
||||
border-bottom-color: #B9C9F9;
|
||||
}
|
||||
|
||||
ul#navigation li a:hover, ul#navigation li a:active,
|
||||
ul.tabbed-pane-header li a:hover, ul.tabbed-pane-header li a:active {
|
||||
background: #AFD;
|
||||
border-color: #A0F0D0;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover h3.quote-header {
|
||||
background: #CFE;
|
||||
border-color: #C9FFE9;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-container {
|
||||
background: #ECFFFC;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-footer, ul.quote-list li:hover .quote-tags a {
|
||||
color: #9BA;
|
||||
border-color: #C9FFE9;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-header li a.active-tab {
|
||||
background: #ECECF6;
|
||||
border-top-color: #B0C0F0;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-contents {
|
||||
border: 1px solid #ECECF6;
|
||||
}
|
66
pub/qdb/res/themes/default/css/styles/grayscale.css
Normal file
66
pub/qdb/res/themes/default/css/styles/grayscale.css
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# grayscale.css #
|
||||
# "Grayscale" color theme for the default theme #
|
||||
###############################################################################
|
||||
# $Id:: grayscale.css 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
*/
|
||||
|
||||
a:hover, a:active {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
h1 a, h1 a:link, h1 a:visited {
|
||||
background: #ECECEC;
|
||||
border-top-color: #F3F3F3;
|
||||
border-bottom-color: #E9E9E9;
|
||||
}
|
||||
|
||||
ul#navigation li a:hover, ul#navigation li a:active,
|
||||
ul.tabbed-pane-header li a:hover, ul.tabbed-pane-header li a:active {
|
||||
background: #F3F3F3;
|
||||
border-color: #ECECEC;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover h3.quote-header {
|
||||
background: #F6F6F6;
|
||||
border-color: #F0F0F0;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-container {
|
||||
background: #FCFCFC;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-footer, ul.quote-list li:hover .quote-tags a {
|
||||
color: #BBB;
|
||||
border-color: #F0F0F0;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-header li a.active-tab {
|
||||
background: #E9E9E9;
|
||||
border-top-color: #CCC;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-contents {
|
||||
border: 1px solid #E9E9E9;
|
||||
}
|
66
pub/qdb/res/themes/default/css/styles/nineties.css
Normal file
66
pub/qdb/res/themes/default/css/styles/nineties.css
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# nineties.css #
|
||||
# "Nineties" color theme for the default theme #
|
||||
###############################################################################
|
||||
# $Id:: nineties.css 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
*/
|
||||
|
||||
a:hover, a:active {
|
||||
color: #69C;
|
||||
}
|
||||
|
||||
h1 a, h1 a:link, h1 a:visited {
|
||||
background: #CEF;
|
||||
border-top-color: #D6F6FF;
|
||||
border-bottom-color: #C9E9F9;
|
||||
}
|
||||
|
||||
ul#navigation li a:hover, ul#navigation li a:active,
|
||||
ul.tabbed-pane-header li a:hover, ul.tabbed-pane-header li a:active {
|
||||
background: #FDA;
|
||||
border-color: #F0D0A0;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover h3.quote-header {
|
||||
background: #CEF;
|
||||
border-color: #C9E9FF;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-container {
|
||||
background: #ECFCFF;
|
||||
}
|
||||
|
||||
ul.quote-list li:hover .quote-footer, ul.quote-list li:hover .quote-tags a {
|
||||
color: #9AB;
|
||||
border-color: #C9E9FF;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-header li a.active-tab {
|
||||
background: #E9E9E9;
|
||||
border-top-color: #CCC;
|
||||
}
|
||||
|
||||
ul.tabbed-pane-contents {
|
||||
border: 1px solid #E9E9E9;
|
||||
}
|
66
pub/qdb/res/themes/default/css/styles/spring.css
Normal file
66
pub/qdb/res/themes/default/css/styles/spring.css
Normal file
@ -0,0 +1,66 @@
|
||||
/*
|
||||
###############################################################################
|
||||
# Chirpy! 0.3, a quote management system #
|
||||
# Copyright (C) 2005-2007 Tim De Pauw <ceetee@users.sourceforge.net> #
|
||||
###############################################################################
|
||||
# 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 2 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, write to the Free Software Foundation, Inc., 51 #
|
||||
# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
|
||||
###############################################################################
|
||||
|
||||
###############################################################################
|
||||
# spring.css #
|
||||
# "Spring" color theme for the default theme #
|
||||
###############################################################################
|
||||
# $Id:: spring.css 291 2007-02-05 21:24:46Z ceetee $ #
|
||||
###############################################################################
|
||||
*/
|
||||
|
||||
a:hover, a:active {
|
||||
color: #36F;
|
||||
}
|
||||
|
||||
h1 a, h1 a:link, h1 a:visited {
|
||||
background: #BFC;
|
||||
border-top-color: #C6FFD6;
|
||||
border-bottom-color: #B9F9C9;
|
||||
}
|
||||
|
||||
ul#navigation li a:hover, ul#navigation li a:active,
|
||||
ul.tabbed-pane-header li a:hover, ul.tabbed-pane-header li a:active {
|
||||
background: #ADF;
|
||||