diff options
author | Louise Crow <louise.crow@gmail.com> | 2014-06-13 17:20:46 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2014-06-13 17:20:46 +0100 |
commit | b015f34f1fbd9592c5839e5e311136f272df41fa (patch) | |
tree | a495330bdd03f8f935d97275ef31b6554d20849c | |
parent | 869688c6e1a0fb8c2511a3846107ddedb4c4dea6 (diff) |
Move docs content under docs/
-rw-r--r-- | _layouts/page.html | 44 | ||||
-rw-r--r-- | community.md | 22 | ||||
-rw-r--r-- | docs/customising/config.md (renamed from customising/config.md) | 12 | ||||
-rw-r--r-- | docs/customising/index.md (renamed from customising/index.md) | 10 | ||||
-rw-r--r-- | docs/customising/themes.md (renamed from customising/themes.md) | 16 | ||||
-rw-r--r-- | docs/customising/translation.md (renamed from customising/translation.md) | 0 | ||||
-rw-r--r-- | docs/developers/api.md (renamed from developers/api.md) | 0 | ||||
-rw-r--r-- | docs/developers/directory_structure.md (renamed from developers/directory_structure.md) | 4 | ||||
-rw-r--r-- | docs/developers/index.md (renamed from developers/index.md) | 24 | ||||
-rw-r--r-- | docs/developers/overview.md (renamed from developers/overview.md) | 0 | ||||
-rw-r--r-- | docs/getting_started.md (renamed from getting_started.md) | 18 | ||||
-rw-r--r-- | docs/glossary.md (renamed from glossary.md) | 129 | ||||
-rw-r--r-- | docs/installing/ami.md (renamed from installing/ami.md) | 6 | ||||
-rw-r--r-- | docs/installing/deploy.md (renamed from installing/deploy.md) | 30 | ||||
-rw-r--r-- | docs/installing/email.md (renamed from installing/email.md) | 28 | ||||
-rw-r--r-- | docs/installing/index.md (renamed from installing/index.md) | 24 | ||||
-rw-r--r-- | docs/installing/macos.md (renamed from installing/macos.md) | 16 | ||||
-rw-r--r-- | docs/installing/manual_install.md (renamed from installing/manual_install.md) | 52 | ||||
-rw-r--r-- | docs/installing/script.md (renamed from installing/script.md) | 4 | ||||
-rw-r--r-- | docs/running/admin_manual.md (renamed from running/admin_manual.md) | 24 | ||||
-rw-r--r-- | docs/running/index.md (renamed from running/index.md) | 8 | ||||
-rw-r--r-- | docs/running/server.md (renamed from running/server.md) | 44 | ||||
-rw-r--r-- | docs/running/states.md (renamed from running/states.md) | 12 | ||||
-rw-r--r-- | docs/running/states_informatazyrtare.md (renamed from running/states_informatazyrtare.md) | 22 | ||||
-rw-r--r-- | index.md | 20 |
25 files changed, 285 insertions, 284 deletions
diff --git a/_layouts/page.html b/_layouts/page.html index 495a7cd93..f82e2170d 100644 --- a/_layouts/page.html +++ b/_layouts/page.html @@ -13,41 +13,41 @@ layout: default <li> <gcse:searchbox-only></gcse:searchbox-only> </li> - <li><a href="{{ site.baseurl }}">Documentation</a> + <li><a href="{{ site.baseurl }}docs/">Documentation</a> <ul> - <li><a href="{{ site.baseurl }}glossary">Glossary</a></li> + <li><a href="{{ site.baseurl }}docs/glossary">Glossary</a></li> </uL> </li> - <li><a href="{{ site.baseurl }}getting_started">Getting Started</a></li> - <li><a href="{{ site.baseurl }}installing/">Installing</a> + <li><a href="{{ site.baseurl }}docs/getting_started">Getting Started</a></li> + <li><a href="{{ site.baseurl }}docs/installing/">Installing</a> <ul> - <li><a href="{{ site.baseurl }}installing/deploy">Deploying</a></li> - <li><a href="{{ site.baseurl }}installing/script">Install script</a></li> - <li><a href="{{ site.baseurl }}installing/ami">Alaveteli AMI for EC2</a></li> - <li><a href="{{ site.baseurl }}installing/manual_install">Installing by hand</a></li> - <li><a href="{{ site.baseurl }}installing/macos">MacOS X</a></li> - <li><a href="{{ site.baseurl }}installing/email">MTA (email)</a></li> + <li><a href="{{ site.baseurl }}docs/installing/deploy">Deploying</a></li> + <li><a href="{{ site.baseurl }}docs/installing/script">Install script</a></li> + <li><a href="{{ site.baseurl }}docs/installing/ami">Alaveteli AMI for EC2</a></li> + <li><a href="{{ site.baseurl }}docs/installing/manual_install">Installing by hand</a></li> + <li><a href="{{ site.baseurl }}docs/installing/macos">MacOS X</a></li> + <li><a href="{{ site.baseurl }}docs/installing/email">MTA (email)</a></li> </ul> </li> - <li><a href="{{ site.baseurl }}customising/">Customising</a> + <li><a href="{{ site.baseurl }}docs/customising/">Customising</a> <ul> - <li><a href="{{ site.baseurl }}customising/config">Configuration</a></li> - <li><a href="{{ site.baseurl }}customising/themes">Themes</a></li> - <li><a href="{{ site.baseurl }}customising/translation">Translation</a></li> + <li><a href="{{ site.baseurl }}docs/customising/config">Configuration</a></li> + <li><a href="{{ site.baseurl }}docs/customising/themes">Themes</a></li> + <li><a href="{{ site.baseurl }}docs/customising/translation">Translation</a></li> </ul> </li> - <li><a href="{{ site.baseurl }}running/">Running</a> + <li><a href="{{ site.baseurl }}docs/running/">Running</a> <ul> - <li><a href="{{ site.baseurl }}running/admin_manual">Admin manual</a></li> - <li><a href="{{ site.baseurl }}running/server">Server checklist</a></li> - <li><a href="{{ site.baseurl }}running/states">Request states</a></li> + <li><a href="{{ site.baseurl }}docs/running/admin_manual">Admin manual</a></li> + <li><a href="{{ site.baseurl }}docs/running/server">Server checklist</a></li> + <li><a href="{{ site.baseurl }}docs/running/states">Request states</a></li> </ul> </li> - <li><a href="{{ site.baseurl }}developers/">For developers</a> + <li><a href="{{ site.baseurl }}docs/developers/">For developers</a> <ul> - <li><a href="{{ site.baseurl }}developers/overview">High-level overview</a></li> - <li><a href="{{ site.baseurl }}developers/directory_structure">Directory structure</a></li> - <li><a href="{{ site.baseurl }}developers/api">API</a></li> + <li><a href="{{ site.baseurl }}docs/developers/overview">High-level overview</a></li> + <li><a href="{{ site.baseurl }}docs/developers/directory_structure">Directory structure</a></li> + <li><a href="{{ site.baseurl }}docs/developers/api">API</a></li> </ul> </li> <li><a href="{{ site.baseurl }}community/">Community</a></li> diff --git a/community.md b/community.md index 2b24b6529..f6bca85fc 100644 --- a/community.md +++ b/community.md @@ -7,12 +7,12 @@ The Alaveteli Community ==================== <p class="lead"> - If you are running an Alaveteli installation — or are thinking of setting one up — let the community help. + If you are running an Alaveteli installation — or are thinking of setting one up — let the community help. </p> We actively help people set up and run Alaveteli instances all around the world. Alaveteli is more than just software, it's also a community of people -who care enough about <a href="{{ site.baseurl}}glossary/#foi" +who care enough about <a href="{{ site.baseurl}}docs/glossary/#foi" class="glossary">Freedom of Information</a> to build and run sites to benefit the public. @@ -20,10 +20,10 @@ If you're just starting out, or you've already got your site up and running, this page points you at the places you can find out more, ask questions, or just say hi. -<!-- +<!-- direct email and twitter? - <li>Louise Crow (project lead): <a href="mailto:louise@mysociety.org">email</a>, <a href="http://twitter.com/crowbot">twitter</a></li> + <li>Louise Crow (project lead): <a href="mailto:louise@mysociety.org">email</a>, <a href="http://twitter.com/crowbot">twitter</a></li> --> @@ -37,7 +37,7 @@ The archives are a good source of information too. If you've got a problem, it's always worth checking to see if someone has already solved it. It you're just starting out, saying hello on the mailing list is a great way to -begin <img src="http://www.alaveteli.org/wp-includes/images/smilies/icon_smile.gif" alt=":-)"> +begin <img src="http://www.alaveteli.org/wp-includes/images/smilies/icon_smile.gif" alt=":-)"> ## IRC @@ -51,23 +51,23 @@ the mySociety developers can be found on IRC in `#mschat` on ### irc.freenode.net #alaveteli **`#alaveteli`** — -there's an `#alaveteli` channel on -[Freenode](http://freenode.net) (`irc.freenode.net`) ...although that channel can be rather quiet +there's an `#alaveteli` channel on +[Freenode](http://freenode.net) (`irc.freenode.net`) ...although that channel can be rather quiet <img src="http://www.alaveteli.org/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley"> -## Alaveteli commit messages (code) +## Alaveteli commit messages (code) -To keep an eye on activity on the repo, join the +To keep an eye on activity on the repo, join the <a href="https://groups.google.com/group/alaveteli-commits/">Alaveteli push messages mailing list</a> (one a day). ## Code and issues on github -The [Alaveteli software is on github](https://github.com/mysociety/alaveteli) and we actively use +The [Alaveteli software is on github](https://github.com/mysociety/alaveteli) and we actively use [github's issues](https://github.com/mysociety/alaveteli) — sometimes there's discussion on specific issues in there too, which can be handy (especially if it's an issue you've raised). ## Documentation -Although asking a human is great, often what you want to know can be +Although asking a human is great, often what you want to know can be found in the documentation: * [this documentation]({{ site.baseurl }}) — always the first place to look diff --git a/customising/config.md b/docs/customising/config.md index ef3cb720d..2528adefc 100644 --- a/customising/config.md +++ b/docs/customising/config.md @@ -14,7 +14,7 @@ title: Configuration The alaveteli code ships with an example configuration file: `config/general.yml-example`. -As part of the [installation process]({{ site.baseurl }}installing ), the +As part of the [installation process]({{ site.baseurl }}docs/installing ), the example file gets copied to `config/general.yml`. You **must** edit this file to suit your needs. @@ -372,7 +372,7 @@ indentation correct. If in doubt, look at the examples already in the file, and <a name="theme_urls"><code>THEME_URLS</code></a> </dt> <dd> - URLs of <a href="{{ site.baseurl }}customising/themes">themes</a> to download and use + URLs of <a href="{{ site.baseurl }}docs/customising/themes">themes</a> to download and use (when running the <code>rails-post-deploy</code> script). The earlier in the list means the templates have a higher priority. <div class="more-info"> @@ -392,7 +392,7 @@ THEME_URLS: <a name="theme_branch"><code>THEME_BRANCH</code></a> </dt> <dd> - When <code>rails-post-deploy</code> installs the <a href="{{ site.baseurl }}customising/themes">themes</a>, + When <code>rails-post-deploy</code> installs the <a href="{{ site.baseurl }}docs/customising/themes">themes</a>, it will try the theme branch first, but only if you've set <code>THEME_BRANCH</code> to be true. If the branch doesn't exist it will fall back to using a tagged version specific to your installed alaveteli version, and if that doesn't exist it will @@ -638,9 +638,9 @@ THEME_URLS: </dt> <dd> Is this a - <a href="{{site.baseurl}}glossary/#staging" class="glossary">staging</a> or - <a href="{{site.baseurl}}glossary/#development" class="glossary">development</a> site? - If not, it's a live <a href="{{site.baseurl}}glossary/#production" class="glossary">production</a> + <a href="{{site.baseurl}}docs/glossary/#staging" class="glossary">staging</a> or + <a href="{{site.baseurl}}docs/glossary/#development" class="glossary">development</a> site? + If not, it's a live <a href="{{site.baseurl}}docs/glossary/#production" class="glossary">production</a> site. This setting controls whether or not the <code>rails-post-deploy</code> script will create the file <code>config/rails_env.rb</code> file to force Rails into production environment. diff --git a/customising/index.md b/docs/customising/index.md index db1f5321f..4b8cf9fda 100644 --- a/customising/index.md +++ b/docs/customising/index.md @@ -15,7 +15,7 @@ title: Customising ## Configuration settings You can customise much of Alaveteli's behaviour just by editing the configuration -file. This [complete list of Alaveteli's config settings]({{ site.baseurl }}customising/config) +file. This [complete list of Alaveteli's config settings]({{ site.baseurl }}docs/customising/config) shows the sort of things you can control in this way. <!-- TODO key settings --> @@ -24,7 +24,7 @@ shows the sort of things you can control in this way. It's common to want to change the basic appearance of the site. Although you can simply edit the default templates and CSS to do this, we **strongly -recommend** that you [create a theme]({{ site.baseurl }}customising/themes). +recommend** that you [create a theme]({{ site.baseurl }}docs/customising/themes). Themes do not need to be especially complex, but they allow your changes to work alongside the core code, which you can then update (when new releases or @@ -32,13 +32,13 @@ updates become available). ## Need Alaveteli in a different language? -No problem! See the [information about translating Alaveteli]({{ site.baseurl }}customising/translation). +No problem! See the [information about translating Alaveteli]({{ site.baseurl }}docs/customising/translation). ## Complex changes If you are a developer (or you have a team of programmers available) you can add any customisation that you want. But it's important to do this without breaking the core code, so that you can accept new releases with updates. -There's more detail in the [page about themes]({{ site.baseurl }}customising/themes). +There's more detail in the [page about themes]({{ site.baseurl }}docs/customising/themes). -See also the [documentation for developers]({{ site.baseurl }}developers). +See also the [documentation for developers]({{ site.baseurl }}docs/developers). diff --git a/customising/themes.md b/docs/customising/themes.md index 63417123f..65410ece2 100644 --- a/customising/themes.md +++ b/docs/customising/themes.md @@ -13,7 +13,7 @@ title: Themes </p> When you customise your Alaveteli site, there is a lot you can change just -by editing the [config settings]({{ site.baseurl }}customising/config). +by editing the [config settings]({{ site.baseurl }}docs/customising/config). But if you want to change the way the site looks, or add more specific behaviour, you'll need to make a **theme**. @@ -49,7 +49,7 @@ code. We try to encapsulate all site-specific functionality in one of these places: -* Site [configuration]({{ site.baseurl }}customising/config) +* Site [configuration]({{ site.baseurl }}docs/customising/config) (e.g., the name of your site, the available languages, and so on — all in `config/general.yml`) * Data (e.g. the public bodies to whom requests should be addressed) @@ -59,7 +59,7 @@ This document is about what you can do in a theme. By default, the sample theme ("alavetelitheme") has already been installed. See the setting -[`THEME_URLS`]({{ site.baseurl }}customising/config/#theme_urls) +[`THEME_URLS`]({{ site.baseurl }}docs/customising/config/#theme_urls) in `general.yml` for an explanation. You can also install the sample theme by hand, by running: @@ -107,14 +107,14 @@ instead of the core "about us" file. ### Changing the logo Alaveteli uses Rails' [asset pipeline](http://guides.rubyonrails.org/asset_pipeline.html) to convert and compress stylesheets written in -<a href="{{ site.baseurl }}glossary/#sass" class="glossary">Sass</a>, +<a href="{{ site.baseurl }}docs/glossary/#sass" class="glossary">Sass</a>, the css extension language, to minified concatenated css. Assets are stored in core Alaveteli under `app/assets` - in `fonts`, `images`, `javascripts` and `stylesheets`. The default theme has corresponding asset directories in `alavetelitheme/assets` Asset files placed in these directories will override those in the core directories. As with templates, a file at `lib/themes/alavetelitheme/assets/images/logo.png` will appear on the site instead of the logo from `app/assets/images/logo.png`. ### Changing the colour scheme -Alaveteli uses a set of basic -<a href="{{ site.baseurl }}glossary/#sass" class="glossary">Sass</a> +Alaveteli uses a set of basic +<a href="{{ site.baseurl }}docs/glossary/#sass" class="glossary">Sass</a> modules to define the layout for the site on different device sizes, and some basic styling. These modules are in `app/assets/stylesheets/responsive`. The colours and fonts are added in the theme - alavetelitheme defines them in `lib/themes/alavetelitheme/assets/stylesheets/responsive/custom.scss`. Colours used in the theme are defined as variables at the top of this file and you can edit them here. ### Changing other styling @@ -137,10 +137,10 @@ locale you support. ## Customising the request states As mentioned above, if you can possibly live with the -[default Alaveteli request statuses]({{ site.baseurl }}running/states), +[default Alaveteli request statuses]({{ site.baseurl }}docs/running/states), it would be good to do so. Note that you can set how many days counts as "overdue" in the main site config file — -see [`REPLY_LATE_AFTER_DAYS`]({{ site.baseurl }}customising/config/#reply_late_after_days). +see [`REPLY_LATE_AFTER_DAYS`]({{ site.baseurl }}docs/customising/config/#reply_late_after_days). If you can't live with the states as they are, there's a very basic way to add to them (which will get improved over time). There's not diff --git a/customising/translation.md b/docs/customising/translation.md index 4f3c39270..4f3c39270 100644 --- a/customising/translation.md +++ b/docs/customising/translation.md diff --git a/developers/api.md b/docs/developers/api.md index cbd4c7c85..cbd4c7c85 100644 --- a/developers/api.md +++ b/docs/developers/api.md diff --git a/developers/directory_structure.md b/docs/developers/directory_structure.md index 6abbd2e4b..e073a96ce 100644 --- a/developers/directory_structure.md +++ b/docs/developers/directory_structure.md @@ -13,7 +13,7 @@ directories.</p> Alaveteli -- this is really more useful if you're a developer planning on making more substantive changes to the code. You don't need to be familiar with Ruby to install or make basic [customisations to your -installation](/customising). +installation](/docs/customising). <!-- (and if you do, remember to read the page about [feeding your changes back](/feeding-back)).--> @@ -254,4 +254,4 @@ website](http://guides.rubyonrails.org/getting_started.html). </dl> We've missed out some of the less important subdirectories here just to keep -things clear.
\ No newline at end of file +things clear. diff --git a/developers/index.md b/docs/developers/index.md index 85ed3f80f..4b90c9232 100644 --- a/developers/index.md +++ b/docs/developers/index.md @@ -6,7 +6,7 @@ title: For developers # Information for developers <p class="lead"> - Alaveteli is an open source project. Full-time mySociety developers together with devs from all around the world actively contribute to the codebase. These notes and links will help you if you want to help too. + Alaveteli is an open source project. Full-time mySociety developers together with devs from all around the world actively contribute to the codebase. These notes and links will help you if you want to help too. </p> * The software is written in **Ruby on Rails 3.x**. We support postgresql as @@ -16,10 +16,10 @@ title: For developers reasons, we recommend the use of [Varnish](https://www.varnish-cache.org). * To help you understand what the code is doing, read this [high-level - overview]({{ site.baseurl }}developers/overview), which includes a diagram of + overview]({{ site.baseurl }}docs/developers/overview), which includes a diagram of the models and how they are related. -* See the [API documentation]({{ site.baseurl }}developers/api) for how to get +* See the [API documentation]({{ site.baseurl }}docs/developers/api) for how to get data into or out of Alaveteli. * If you need to change or add strings in the interface, see our [guidelines @@ -39,17 +39,17 @@ title: For developers * Installing the software is a little involved, though it's getting easier. If you stick to Debian or Ubuntu, it should be possible to get a running version - within a few hours. If you've got your own server, run the - [installation script]({{ site.baseurl }}installing/script/), or follow the - instructions for a - [manual installation]({{ site.baseurl }}installing/manual_install/). - Alternatively, there's an [Alaveteli EC2 AMI]({{ site.baseurl }}installing/ami/) - that might help you get up and running quickly. + within a few hours. If you've got your own server, run the + [installation script]({{ site.baseurl }}docs/installing/script/), or follow the + instructions for a + [manual installation]({{ site.baseurl }}docs/installing/manual_install/). + Alternatively, there's an [Alaveteli EC2 AMI]({{ site.baseurl }}docs/installing/ami/) + that might help you get up and running quickly. [Get in touch](http://www.alaveteli.org/contact/) on the project mailing list or IRC for help. * A standard initial step for customising your deployment is [writing a - theme]({{ site.baseurl }}customising/themes). **If you only read one thing, + theme]({{ site.baseurl }}docs/customising/themes). **If you only read one thing, it should be this!** * Like many Ruby on Rails sites, the software is not hugely performant (see @@ -60,7 +60,7 @@ title: For developers * There's a number of [proposals for enhancements](https://github.com/mysociety/alaveteli/wiki/Proposals-for-enhancements), such as more user-focused features, but see also... - + * ...the [github issues](https://github.com/mysociety/alaveteli/issues). We mark issues with the label **suitable for volunteers** if we think they are especially suitable for diving into if you're just looking for something @@ -77,7 +77,7 @@ title: For developers past](http://www.mysociety.org/2009/09/17/whatdotheyknow-growing-pains-and-rub y-memory-leaks/) might be useful. -* If you're coding on a mac, see these [MacOS X installation notes]({{ site.baseurl }}installing/macos). <!-- [[OS X Quickstart]] --> +* If you're coding on a mac, see these [MacOS X installation notes]({{ site.baseurl }}docs/installing/macos). <!-- [[OS X Quickstart]] --> * We try to adhere to similar good practice across all our projects: see [mysociety.github.io](http://mysociety.github.io/) for things like our diff --git a/developers/overview.md b/docs/developers/overview.md index ca2d27985..ca2d27985 100644 --- a/developers/overview.md +++ b/docs/developers/overview.md diff --git a/getting_started.md b/docs/getting_started.md index 2911aecf3..4bfd9eb24 100644 --- a/getting_started.md +++ b/docs/getting_started.md @@ -6,8 +6,8 @@ title: Getting started # Getting started with Alaveteli <p class="lead"> - This guide is aimed at people who are thinking about setting up their own - Alaveteli website in a new jurisdiction. + This guide is aimed at people who are thinking about setting up their own + Alaveteli website in a new jurisdiction. </p> For inspiration, take a look at some of the existing Alaveteli websites, like @@ -34,7 +34,7 @@ need to think about how you will run the website; a successful Alaveteli requires lots of ongoing effort to moderate and publicise (see Step 6 and Step 7, below). -Here are the steps we suggest you follow in order to get started. +Here are the steps we suggest you follow in order to get started. * [Step zero: assemble your initial team](#step-0) * [Step one: get a working, uncustomised version running](#step-1) @@ -112,11 +112,11 @@ with this. The minimum spec for running a low traffic website is 512MB RAM and a 20GB disk. 2GB RAM would be ideal. We recommend Debian Squeeze as the operating system, though any sort of Linux should do. Rackspace offer suitable cloud servers, which start out at around $25 / month. Then your tech person -should follow the [installation documentation]({{ site.baseurl }}installing). +should follow the [installation documentation]({{ site.baseurl }}docs/installing). Alternatively, you could use Amazon Web Services. This has the added advantage that you can use our preconfigured [Alaveteli EC2 -AMI]({{ site.baseurl }}installing/ami) to get you +AMI]({{ site.baseurl }}docs/installing/ami) to get you started almost instantly. However, it's more expensive than Rackspace, especially if you want more RAM. @@ -187,7 +187,7 @@ custom homepage, different fonts, etc; however, the more you customise the site, the harder it is to upgrade in the future; and you'll need a developer and/or designer to help do these customisations. We call the custom set of colours, fonts, logos etc a "theme"; there are some notes for developers about -[writing a theme]({{ site.baseurl }}customising/themes/). You +[writing a theme]({{ site.baseurl }}docs/customising/themes/). You might spend anywhere between 1 and 15 days on this. ### Legislative differences @@ -236,7 +236,7 @@ that you'll be sending out in response to common user queries and administrative tasks -- for example, an email that you send to IT departments asking them to whitelist emails from your Alaveteli website (if your emails are being marked as spam). See the -[Administrator's Manual]({{ site.baseurl }}running/admin_manual/) for details +[Administrator's Manual]({{ site.baseurl }}docs/running/admin_manual/) for details on some of the common administrative tasks. There is a list of the standard emails used by WhatDoTheyKnow on the [FOI Wiki](http://foiwiki.com/foiwiki/index.php/Common_WhatDoTheyKnow_support_responses). @@ -310,7 +310,7 @@ review the untranslated strings. ## Step five: Test drive the site For launch, the tech person should review the [Production Server Best -Practices]({{ site.baseurl }}running/server). +Practices]({{ site.baseurl }}docs/running/server). A low-key launch, where you tell just a few trusted people about the site, is a very good idea. You can then track how things work, and gauge the responses of @@ -370,7 +370,7 @@ website is. To ensure its success, you should be doing things like: * Recruiting volunteers to help with the site * Categorising uncategorised requests -See also the [Administrator's Manual](/running/admin_manual), which describes +See also the [Administrator's Manual](/docs/running/admin_manual), which describes some of the typical tasks you'll need to perform when your site is up and running. diff --git a/glossary.md b/docs/glossary.md index 6aa273be8..8d2f815f9 100644 --- a/glossary.md +++ b/docs/glossary.md @@ -7,8 +7,8 @@ Glossary ==================== <p class="lead"> - Glossary of terms for Alaveteli, mySociety's freedom of information - platform. + Glossary of terms for Alaveteli, mySociety's freedom of information + platform. </p> Definitions @@ -51,7 +51,7 @@ Definitions by <a href="http://www.mysociety.org">mySociety</a> for submitting, managing and archiving Freedom of Information requests. <p> - It grew from the successful FOI UK project + It grew from the successful FOI UK project <a href="http://www.whatdotheyknow.com">WhatDoTheyKnow</a>. We use the name <em>Alaveteli</em> to distinguish the software that runs the platform from any specific website that it is powering. @@ -63,9 +63,9 @@ Definitions The Alaveteli website is at <a href="http://www.alaveteli.org">www.alaveteli.org</a> </li> <li> - The name "Alaveteli" comes from + The name "Alaveteli" comes from <a href="http://en.wikipedia.org/wiki/Alaveteli,_Finland">Alaveteli in Finland</a> - where + where <a href="http://en.wikipedia.org/wiki/Anders_Chydenius">an early FOI campaigner</a> once worked. </li> @@ -77,13 +77,13 @@ Definitions <a name="agnostic">asker agnostic</a> </dt> <dd> - <a href="#foi" class="glossary">Freedom of Information</a> (FoI) law typically considers - the <a href="#response" class="glossary">responses</a> given by the + <a href="#foi" class="glossary">Freedom of Information</a> (FoI) law typically considers + the <a href="#response" class="glossary">responses</a> given by the <a href="#authority" class="glossary">authorities</a> to be <strong>asker agnostic</strong>. This means - that the reply should not be any different depending on <em>who</em> asked for the + that the reply should not be any different depending on <em>who</em> asked for the information. One consequence of this is that the response can be <a href="#publish" class="glossary">published</a>, because in theory <em>everyone</em> - could ask for it and expect, by law, to receive the same information. + could ask for it and expect, by law, to receive the same information. <p> Despite this, it's still very common all around the world for authorities to reply to FoI requests privately, instead of publishing their responses themselves. One of the @@ -97,7 +97,7 @@ Definitions <a name="authority">authority</a> </dt> <dd> - An <strong>authority</strong> is the term we use for any of the bodies, organisations, + An <strong>authority</strong> is the term we use for any of the bodies, organisations, departments, or companies to which users can send <a href="#request" class="glossary">requests</a>. <div class="more-info"> <p>More information:</p> @@ -129,13 +129,13 @@ Definitions <p>More information:</p> <ul> <li> - Use the config setting - <code><a href="{{site.baseurl}}customising/config/#blackhole_prefix">BLACKHOLE_PREFIX</a></code> - to specify what this email address looks like. + Use the config setting + <code><a href="{{site.baseurl}}docs/customising/config/#blackhole_prefix">BLACKHOLE_PREFIX</a></code> + to specify what this email address looks like. </li> <li> - Conversely, see - <code><a href="{{site.baseurl}}customising/config/#contact_email">CONTACT_EMAIL</a></code> + Conversely, see + <code><a href="{{site.baseurl}}docs/customising/config/#contact_email">CONTACT_EMAIL</a></code> to specify the email address to which users' emails (such as support enquiries) will be delivered. </li> @@ -147,13 +147,13 @@ Definitions <a name="capistrano">Capistrano</a> </dt> <dd> - <strong>Capistrano</strong> is a remote server automation and deployment tool written in Ruby. - Alaveteli's deployment mechanism, which is optional, uses it. + <strong>Capistrano</strong> is a remote server automation and deployment tool written in Ruby. + Alaveteli's deployment mechanism, which is optional, uses it. <div class="more-info"> <p>More information:</p> <ul> <li> - how to <a href="{{ site.baseurl }}installing/deploy">deploy Alaveteli</a> (and why it's + how to <a href="{{ site.baseurl }}docs/installing/deploy">deploy Alaveteli</a> (and why it's a good idea) </li> <li> @@ -169,19 +169,19 @@ Definitions </dt> <dd> Alaveteli administrators can define <strong>censor rules</strong> to define - which parts of replies or responses should be + which parts of replies or responses should be <a href="#redact" class="glossary">redacted</a>. </p> <div class="more-info"> <p>More information:</p> <ul> <li> - see the - <a href="{{ site.baseurl }}running/admin_manual/">admin manual</a> + see the + <a href="{{ site.baseurl }}docs/running/admin_manual/">admin manual</a> for more about censor rules </li> <li> - censor rules may simply redact text that exactly matches a + censor rules may simply redact text that exactly matches a particular sentence or phrase, or may use <a href="regexp">regular expressions</a> </li> @@ -194,16 +194,16 @@ Definitions </dt> <dd> A <strong>dev server</strong> is one that is running your Alaveteli site - so you can <a href="{{ site.baseurl }}customising/">customise it</a>, experiment + so you can <a href="{{ site.baseurl }}docs/customising/">customise it</a>, experiment with different settings, and test that it does what you expect. - This is different from a + This is different from a <a href="#production" class="glossary">production server</a>, which is the one your users actually visit running with live data, or a <a href="#staging" class="glossary">staging server</a>, which is used for testing code before it goes live. <p> On your dev server, you should set - <code><a href="{{site.baseurl}}customising/config/#staging_site">STAGING_SITE</a></code> + <code><a href="{{site.baseurl}}docs/customising/config/#staging_site">STAGING_SITE</a></code> to <code>1</code>. </p> </dd> @@ -252,7 +252,7 @@ Definitions <p>More information:</p> <ul> <li> - See the <a href="{{ site.baseurl }}installing">installation instructions</a> which will + See the <a href="{{ site.baseurl }}docs/installing">installation instructions</a> which will clone the Alaveteli repo. </li> <li> @@ -271,13 +271,13 @@ Definitions <a name="holding pen">holding pen</a> </dt> <dd> - The <strong>holding pen</strong> is the conceptual place where responses that + The <strong>holding pen</strong> is the conceptual place where responses that could not be delivered are held. They need attention from a administrator. <div class="more-info"> <p>More information:</p> <ul> <li> - see the <a href="{{ site.baseurl }}running/admin_manual">admin manual</a> for + see the <a href="{{ site.baseurl }}docs/running/admin_manual">admin manual</a> for information on dealing with emails in the holding pen </li> </ul> @@ -296,7 +296,7 @@ Definitions <p>More information:</p> <ul> <li> - see these instructions for <a href="{{ site.baseurl }}installing/email">configuring your MTA</a> + see these instructions for <a href="{{ site.baseurl }}docs/installing/email">configuring your MTA</a> (examples are for exim4 and postfix, two of the most common) </li> </ul> @@ -308,9 +308,9 @@ Definitions </dt> <dd> A <strong>production server</strong> is one that is running your Alaveteli site - for real users, with live data. This is different from a + for real users, with live data. This is different from a <a href="#development" class="glossary">development server</a>, which you use make your - customisation and environment changes and try to get them to all work OK, or a + customisation and environment changes and try to get them to all work OK, or a <a href="#staging" class="glossary">staging server</a>, which is used for testing code and configuration after it's been finished but before it goes live. <p> @@ -318,7 +318,7 @@ Definitions example, caching is enabled, and debugging switched off. <a href="#rails" class="glossary">Rails</a> has a "production mode" which does this for you: set - <code><a href="{{site.baseurl}}customising/config/#staging_site">STAGING_SITE</a></code> + <code><a href="{{site.baseurl}}docs/customising/config/#staging_site">STAGING_SITE</a></code> to <code>0</code>. Note that if you <em>change</em> this setting after you've deployed, the <code>rails_env.rb</code> file that enables Rails's production mode won't be created until you run <code>rails-post-deploy</code>. @@ -328,8 +328,8 @@ Definitions </p> <p> You should never need to edit code directly on your production server. - We strongly recommend you use Alaveteli's - <a href="{{ site.baseurl }}installing/deploy/">deployment mechanism</a> + We strongly recommend you use Alaveteli's + <a href="{{ site.baseurl }}docs/installing/deploy/">deployment mechanism</a> (using Capistrano) to make changes to your production site. </p> </dd> @@ -338,8 +338,8 @@ Definitions <a name="publish">publish</a> </dt> <dd> - Alaveteli works by <strong>publishing</strong> the - <a href="#response" class="glossary">responses</a> it recieves to the + Alaveteli works by <strong>publishing</strong> the + <a href="#response" class="glossary">responses</a> it recieves to the <a href="#foi" class="glossary">Freedom of Information</a> <a href="#request" class="glossary">requests</a> that its users send. It does this by processing the emails it receives and presenting them @@ -352,8 +352,8 @@ Definitions <a name="response">response</a> </dt> <dd> - A <strong>response</strong> is the email sent by an - <a href="#authority" class="glossary">authority</a> in reply to + A <strong>response</strong> is the email sent by an + <a href="#authority" class="glossary">authority</a> in reply to a user's <a href="#request" class="glossary">requests</a>. </dd> @@ -371,10 +371,10 @@ Definitions <ul> <li> use the config settings - <code><a href="{{site.baseurl}}customising/config/#recaptcha_public_key">RECAPTCHA_PUBLIC_KEY</a></code> + <code><a href="{{site.baseurl}}docs/customising/config/#recaptcha_public_key">RECAPTCHA_PUBLIC_KEY</a></code> and - <code><a href="{{site.baseurl}}customising/config/#recaptcha_private_key">RECAPTCHA_PRIVATE_KEY</a></code> - to set this up. + <code><a href="{{site.baseurl}}docs/customising/config/#recaptcha_private_key">RECAPTCHA_PRIVATE_KEY</a></code> + to set this up. </li> <li> see the <a href="http://www.google.com/recaptcha/">recaptcha website</a> for more details @@ -393,7 +393,7 @@ Definitions <p> This may be necessary for a variety of reasons. For example, a user may accidentally put personal information into their request, or an - authority may include it in their response. You may also need to + authority may include it in their response. You may also need to redact parts of requests or responses that are libellous or legally sensitive. </p> @@ -401,12 +401,12 @@ Definitions <p>More information:</p> <ul> <li> - see the - <a href="{{ site.baseurl }}running/admin_manual/">admin manual</a> + see the + <a href="{{ site.baseurl }}docs/running/admin_manual/">admin manual</a> for more about how and when you may need to redact information </li> <li> - you can do text-only redaction with Alaveteli's + you can do text-only redaction with Alaveteli's <a href="#censor-rule" class="glossary">censor rules</a> </li> <li> @@ -441,7 +441,7 @@ Definitions <code>Jo(e|ey|seph)\s+Blogg?s</code> would match names including "<code>Joe Bloggs</code>", "<code>Joey Bloggs</code>" and - "<code>Joseph Blogs</code>", but not + "<code>Joseph Blogs</code>", but not "<code>John Bloggs</code>". </li> <li> @@ -455,9 +455,9 @@ Definitions <a name="request">request</a> </dt> <dd> - In Alaveteli, a <strong>request</strong> is the + In Alaveteli, a <strong>request</strong> is the <a href="#foi" class="glossary">Freedom of Information</a> request - that a user enters, and which the site then emails to the relevant + that a user enters, and which the site then emails to the relevant <a href="#authority" class="glossary">authority</a>. Alaveteli automatically <a href="#publish" class="glossary">publishes</a> the <a href="#response" class="glossary">responses</a> @@ -477,7 +477,7 @@ Definitions <a href="http://rubyonrails.org/">Ruby on Rails</a> website </li> <li> - Alavateli's <a href="{{ site.baseurl }}developers/directory_structure/">directory structure</a> + Alavateli's <a href="{{ site.baseurl }}docs/developers/directory_structure/">directory structure</a> is influenced by its use of Ruby on Rails </li> </ul> @@ -503,7 +503,7 @@ Definitions <a href="http://sass-lang.com">Sass website</a> </li> <li> - more about <a href="{{ site.baseurl }}customising/themes/#changing-the-colour-scheme">changing + more about <a href="{{ site.baseurl }}docs/customising/themes/#changing-the-colour-scheme">changing your colour scheme</a>, which uses Sass </li> </ul> @@ -522,7 +522,7 @@ Definitions site your users visit running with live data. <p> On your staging server, you should set - <code><a href="{{site.baseurl}}customising/config/#staging_site">STAGING_SITE</a></code> + <code><a href="{{site.baseurl}}docs/customising/config/#staging_site">STAGING_SITE</a></code> to <code>1</code>. </p> <p> @@ -531,8 +531,8 @@ Definitions </p> <p> You should never need to edit code directly on your production or staging servers. - We strongly recommend you use Alaveteli's - <a href="{{ site.baseurl }}installing/deploy/">deployment mechanism</a> + We strongly recommend you use Alaveteli's + <a href="{{ site.baseurl }}docs/installing/deploy/">deployment mechanism</a> (using Capistrano) to make changes to these sites. </p> </dd> @@ -543,8 +543,8 @@ Definitions <dd> Each <a href="#request" class="glossary">request</a> passes through different <strong>states</strong> as it progresses through the system. - States help Alaveteli administrators, as well as the public, - understand the current situation with any request and what + States help Alaveteli administrators, as well as the public, + understand the current situation with any request and what action, if any, is required. <p> The states available can be customised within @@ -554,15 +554,15 @@ Definitions <p>More information:</p> <ul> <li> - <a href="{{ site.baseurl }}running/states">example states for WhatDoTheyKnow</a> + <a href="{{ site.baseurl }}docs/running/states">example states for WhatDoTheyKnow</a> (Alaveteli site running in the UK) </li> <li> - for comparison, <a href="{{ site.baseurl }}running/states_informatazyrtare">example states for InformataZyrtare</a> + for comparison, <a href="{{ site.baseurl }}docs/running/states_informatazyrtare">example states for InformataZyrtare</a> (Alaveteli site running in Kosovo) </li> <li> - to customise or add your own states, see <a href="{{ site.baseurl }}customising/themes">Customising the request states</a> + to customise or add your own states, see <a href="{{ site.baseurl }}docs/customising/themes">Customising the request states</a> </li> </ul> </div> @@ -572,18 +572,19 @@ Definitions <a name="theme">theme</a> </dt> <dd> - A <strong>theme</strong> is the collection of changes to the templates - and the code that causes the site to look or behave differently from the - default. Typically you'll need a theme to make Alaveteli show your own - brand. + A <strong>theme</strong> is the collection of changes to the templates + and the code that causes the site to look or behave differently from the + default. Typically you'll need a theme to make Alaveteli show your own + brand. <div class="more-info"> <p>More information:</p> <ul> <li> - <a href="{{ site.baseurl }}customising/themes">about themes</a> + <a href="{{ site.baseurl }}docs/customising +/themes">about themes</a> </li> </ul> </div> </dd> -</dl>
\ No newline at end of file +</dl> diff --git a/installing/ami.md b/docs/installing/ami.md index e2c113eba..42f2907cb 100644 --- a/installing/ami.md +++ b/docs/installing/ami.md @@ -6,12 +6,12 @@ title: Installing the easy way # Installation on Amazon EC2 <p class="lead"> - We've made an Amazon Machine Image (AMI) so you can quickly deploy on Amazon EC2. This is handy if you just want to evaluate Alaveteli, for example. + We've made an Amazon Machine Image (AMI) so you can quickly deploy on Amazon EC2. This is handy if you just want to evaluate Alaveteli, for example. </p> -Note that there are [other ways to install Alaveteli]({{ site.baseurl }}installing). +Note that there are [other ways to install Alaveteli]({{ site.baseurl }}docs/installing). -## Installing from our AMI +## Installing from our AMI To help people try out Alaveteli, we have created an AMI (Amazon Machine Image) with a basic installation of Alaveteli, which you can use to create a running diff --git a/installing/deploy.md b/docs/installing/deploy.md index 32755a71d..5378b89d6 100644 --- a/installing/deploy.md +++ b/docs/installing/deploy.md @@ -8,13 +8,13 @@ title: Deploying <p class="lead"> Although you can install Alaveteli and just change it when you need it, we recommend you adopt a way of <strong>deploying</strong> it automatically, - especially on your <a href="{{ site.baseurl }}glossary/#production">production server</a>. + especially on your <a href="{{ site.baseurl }}docs/glossary/#production">production server</a>. Alaveteli provides a deployment mechanism using Capistrano. </p> ## Why deploy? -Although you can [install Alaveteli]({{ site.baseurl }}installing/) in a number +Although you can [install Alaveteli]({{ site.baseurl }}docs/installing/) in a number of ways, once you're running, sooner or later you'll need to make changes to the site. A common example is updating your site when we issue a new release. @@ -26,14 +26,14 @@ automatically. It's also more efficient because it is faster than making changes or copying files by hand, so your site will be down for the shortest possible time. -We **strongly recommend** you use the deployment mechanism for your -<a href="{{ site.baseurl }}glossary/#production">production server</a> and, if -you're running one, your -<a href="{{ site.baseurl }}glossary/#staging">staging server</a> too. +We **strongly recommend** you use the deployment mechanism for your +<a href="{{ site.baseurl }}docs/glossary/#production">production server</a> and, if +you're running one, your +<a href="{{ site.baseurl }}docs/glossary/#staging">staging server</a> too. ## Capistrano -<a href="{{site.baseurl}}glossary/#capistrano" class="glossary">Capistrano</a> +<a href="{{site.baseurl}}docs/glossary/#capistrano" class="glossary">Capistrano</a> is included as part of Alaveteli as a standard deployment system. The basic principle of Capistrano is that you execute `cap [do-something]` @@ -67,7 +67,7 @@ and thereafter you'll be able to deploy very easily (see [usage, below](#usage)) First, on the server: -* [install Alaveteli]({{ site.baseurl }}installing/) +* [install Alaveteli]({{ site.baseurl }}docs/installing/) * then move the Alaveteli app to a temporary place on the server, like your home directory (temporarily, your site will be missing, until the deployment puts new files in place) @@ -87,7 +87,7 @@ Next, on your local machine: `deploy_to` to be the path where Alaveteli is currently installed on the server -- if you used the installation script, this will be `/var/www/alaveteli/alaveteli`. -* `cd` into the Alaveteli repo you checked out (otherwise the `cap` commands you're about to +* `cd` into the Alaveteli repo you checked out (otherwise the `cap` commands you're about to execute won't work) * still on your local machine, run `cap -S stage=staging deploy:setup` to setup capistrano on the server * again on your local machine, run `cap -S stage=staging deploy:update_code` to get a code checkout on the server @@ -115,13 +115,13 @@ Now, back on your local machine: * make sure you're still in the Alaveteli repo (if not, `cd` back into it) * create a deployment directory on the server by running *one* of these commands: - * `cap deploy` if you're deploying a <a href="{{site.baseurl}}glossary/#staging" class="glossary">staging site</a>, or... - * `cap -S stage=production deploy` for <a href="{{site.baseurl}}glossary/#production" class="glossary">production</a> + * `cap deploy` if you're deploying a <a href="{{site.baseurl}}docs/glossary/#staging" class="glossary">staging site</a>, or... + * `cap -S stage=production deploy` for <a href="{{site.baseurl}}docs/glossary/#production" class="glossary">production</a> * update the webserver config (either apache or nginx) to add the `current` element to the path where it is serving Alaveteli from. If you installed using the installation script, this will be replacing `/var/www/alaveteli/alaveteli/` with `/var/www/alaveteli/alaveteli/current` in `etc/nginx/sites-available/default`. -* edit the server crontab so that the paths in the cron jobs also include the +* edit the server crontab so that the paths in the cron jobs also include the `current` element. If you used the installation script the crontab will be in `etc/cron.d/alaveteli`. * Update the MTA config to include the `current` element in the paths it uses. @@ -130,16 +130,16 @@ Now, back on your local machine: `argv=/var/www/alaveteli/alaveteli/script/mailin` with `argv=/var/www/alaveteli/alaveteli/current/script/mailin`. If you're using Exim as your MTA, edit `etc/exim4/conf.d/04_alaveteli_options` - to update the `ALAVETELI_HOME` variable to the new Alaveteli path. + to update the `ALAVETELI_HOME` variable to the new Alaveteli path. -Phew, you're done! +Phew, you're done! You can delete the temporary copy of Alaveteli (perhaps in your home directory) now. ### Usage -Before you issue any Capistrano commands, `cd` into the checkout of the +Before you issue any Capistrano commands, `cd` into the checkout of the Alaveteli repo on your local machine (because that's where it will look for the config that you've set up). diff --git a/installing/email.md b/docs/installing/email.md index bad893c8e..98dff0087 100644 --- a/installing/email.md +++ b/docs/installing/email.md @@ -6,8 +6,8 @@ title: Installing MTA # Installing the MTA <p class="lead"> - Alaveteli sends and receives email. You'll need to set up your Mail - Transfer Agent (MTA) to handle this properly. We've got examples + Alaveteli sends and receives email. You'll need to set up your Mail + Transfer Agent (MTA) to handle this properly. We've got examples here for both postfix and exim4, two of the most popular MTAs. </p> @@ -41,14 +41,14 @@ In `/etc/postfix/main.cf`: virtual_alias_maps = regexp:/etc/postfix/regexp And, assuming you set -[`INCOMING_EMAIL_PREFIX`]({{ site.baseurl }}customising/config/#incoming_email_prefix) +[`INCOMING_EMAIL_PREFIX`]({{ site.baseurl }}docs/customising/config/#incoming_email_prefix) in `config/general` to "foi+", create `/etc/postfix/regexp` with the following content: /^foi.*/ alaveteli You should also configure postfix to discard any messages sent to the -[`BLACKHOLE_PREFIX`]({{ site.baseurl }}customising/config/#blackhole_prefix) +[`BLACKHOLE_PREFIX`]({{ site.baseurl }}docs/customising/config/#blackhole_prefix) address, whose default value is `do-not-reply-to-this-address`. For example, add the following to `/etc/aliases`: @@ -84,8 +84,8 @@ And also edit `/etc/logrotate.d/rsyslog`: You'll also need to tell Alaveteli where the log files are stored and that they're in postfix format. Update -[`MTA_LOG_PATH`]({{ site.baseurl }}customising/config/#mta_log_path) and -[`MTA_LOG_TYPE`]({{ site.baseurl }}customising/config/#mta_log_type) in `config/general.yml` with: +[`MTA_LOG_PATH`]({{ site.baseurl }}docs/customising/config/#mta_log_path) and +[`MTA_LOG_TYPE`]({{ site.baseurl }}docs/customising/config/#mta_log_type) in `config/general.yml` with: MTA_LOG_PATH: '/var/log/mail/mail.log-*' MTA_LOG_TYPE: "postfix" @@ -93,10 +93,10 @@ format. Update ### Troubleshooting (postfix) To test mail delivery, run: - + $ /usr/sbin/sendmail -bv foi+requrest-1234@localhost -This tells you if sending the emails to `foi\+.*localhost` is working. +This tells you if sending the emails to `foi\+.*localhost` is working. ## Example setup on exim4 @@ -148,15 +148,15 @@ In `/etc/exim4/conf.d/transport/04_alaveteli`: user = ALAVETELI_USER group = ALAVETELI_USER -And, assuming you set -[`INCOMING_EMAIL_PREFIX`]({{ site.baseurl }}customising/config/#incoming_email_prefix) +And, assuming you set +[`INCOMING_EMAIL_PREFIX`]({{ site.baseurl }}docs/customising/config/#incoming_email_prefix) in your config at `config/general.yml` to "foi+", create `config/aliases` with the following content: ^foi\\+.*: |/path/to/alaveteli/software/script/mailin You should also configure exim to discard any messages sent to the -[`BLACKHOLE_PREFIX`]({{ site.baseurl }}customising/config/#blackhole_prefix) +[`BLACKHOLE_PREFIX`]({{ site.baseurl }}docs/customising/config/#blackhole_prefix) address, whose default value is `do-not-reply-to-this-address`. For example, add the following to `config/aliases`: @@ -164,12 +164,12 @@ address, whose default value is # We use this for envelope from for some messages where we don't care about delivery do-not-reply-to-this-address: :blackhole: -If you want to make use of the automatic bounce-message handling, then set the -[`TRACK_SENDER_EMAIL`]({{ site.baseurl }}customising/config/#track_sender_email) +If you want to make use of the automatic bounce-message handling, then set the +[`TRACK_SENDER_EMAIL`]({{ site.baseurl }}docs/customising/config/#track_sender_email) address to be filtered through `script/handle-mail-replies`. Messages that are not bounces or out-of-office autoreplies will be forwarded to -[`FORWARD_NONBOUNCE_RESPONSES_TO`]({{ site.baseurl }}customising/config/#forward_nonbounce_responses_to). +[`FORWARD_NONBOUNCE_RESPONSES_TO`]({{ site.baseurl }}docs/customising/config/#forward_nonbounce_responses_to). For example, in WhatDoTheyKnow the configuration looks like this: diff --git a/installing/index.md b/docs/installing/index.md index d83c55c73..98efa7b8a 100644 --- a/installing/index.md +++ b/docs/installing/index.md @@ -8,15 +8,15 @@ title: Installing <p class="lead"> Although you can install Alaveteli and just change it when you need it, we recommend you adopt a way of <strong>deploying</strong> it automatically. - This has several advantages, especially for your - <a href="{{ site.baseurl }}glossary/#production">production server</a>. + This has several advantages, especially for your + <a href="{{ site.baseurl }}docs/glossary/#production">production server</a>. </p> ## Before you start This is important: you need to decide if you are installing Alaveteli for -[development]({{ site.baseurl }}glossary/#development) or -[production]({{ site.baseurl }}glossary/#production). +[development]({{ site.baseurl }}docs/glossary/#development) or +[production]({{ site.baseurl }}docs/glossary/#production). A **development** site is one where you're going to change, customise, and perhaps experiment while you get it up and running. You should always do this @@ -28,9 +28,9 @@ A **production** site is different: you want your production site to run as efficiently as possible, so things like caching are swiched on, and debug messages switched off. It's important to be able to deploy changes to a production site quickly and efficiently, so we recommend you consider using a -[deployment mechanism]({{ site.baseurl }}installing/deploy/) too. +[deployment mechanism]({{ site.baseurl }}docs/installing/deploy/) too. -Ideally, you should also have a [staging site]({{ site.baseurl }}glossary/#staging), +Ideally, you should also have a [staging site]({{ site.baseurl }}docs/glossary/#staging), which is used solely to test new code in an identical environment to your production site but before it goes live. @@ -41,22 +41,22 @@ production server. ## Deployment If you're running a production server, we **strongly recommend** you -use the Capistrano [deployment mechanism]({{ site.baseurl }}installing/deploy/) +use the Capistrano [deployment mechanism]({{ site.baseurl }}docs/installing/deploy/) that's included with Alaveteli. Set this up and you never have to edit files on those servers, because Capistrano takes care of that for you. ## Installing the core code -* [Install on Amazon EC2]({{ site.baseurl }}installing/ami) using our AMI -* [Use the installation script]({{ site.baseurl }}installing/script) which does the full installation on your own server -* [Manual installation]({{ site.baseurl }}installing/manual_install) -- step-by-step instructions +* [Install on Amazon EC2]({{ site.baseurl }}docs/installing/ami) using our AMI +* [Use the installation script]({{ site.baseurl }}docs/installing/script) which does the full installation on your own server +* [Manual installation]({{ site.baseurl }}docs/installing/manual_install) -- step-by-step instructions If you're setting up a development server on MacOS X, we've also got -[MacOS installation instructions]({{ site.baseurl }}installing/macos). +[MacOS installation instructions]({{ site.baseurl }}docs/installing/macos). ## Other installation information Alaveteli needs to be able to send and receive email, so you need to setup your MTA (Mail Transfer Agent) appropriately. -* [Installing the MTA]({{ site.baseurl }}installing/email) +* [Installing the MTA]({{ site.baseurl }}docs/installing/email) diff --git a/installing/macos.md b/docs/installing/macos.md index 671ec2e18..6e1986d59 100644 --- a/installing/macos.md +++ b/docs/installing/macos.md @@ -6,12 +6,12 @@ title: Installing on MacOS X # Installation on MacOS X <p class="lead"> - We don't recommend using OS X in production, but if you want to get - Alaveteli running on your Mac for development, these guidelines should - help. + We don't recommend using OS X in production, but if you want to get + Alaveteli running on your Mac for development, these guidelines should + help. </p> -Note that there are [other ways to install Alaveteli]({{ site.baseurl }}installing). +Note that there are [other ways to install Alaveteli]({{ site.baseurl }}docs/installing). ## MacOS X 10.7 @@ -96,7 +96,7 @@ Creates Alaveteli databases and an `foi` user with password `foi`. ALTER USER foi WITH PASSWORD 'foi'; ALTER USER foi WITH CREATEDB; GRANT ALL PRIVILEGES ON DATABASE foi_development TO foi; - GRANT ALL PRIVILEGES ON DATABASE foi_test TO foi; + GRANT ALL PRIVILEGES ON DATABASE foi_test TO foi; ALTER DATABASE foi_development OWNER TO foi; ALTER DATABASE foi_test OWNER TO foi;" | psql -h localhost template1 @@ -107,9 +107,9 @@ We don't want to vendor Rails, as it causes problems locally. git clone https://github.com/mysociety/alaveteli.git cd alaveteli git submodule init - + sed -i~ 's/\\[submodule "vendor\/rails"\\]//' .git/config - + sed -i~ 's/url = git:\/\/github.com\/rails\/rails.git//' .git/config git submodule update @@ -152,4 +152,4 @@ Running `rvm install 1.8.7` should install the latest Ruby 1.8.7 patch level. Re ### Rake tasks -Remember to run Rake tasks with `bundle exec`. To run the tests, for example, run `bundle exec rake`.
\ No newline at end of file +Remember to run Rake tasks with `bundle exec`. To run the tests, for example, run `bundle exec rake`. diff --git a/installing/manual_install.md b/docs/installing/manual_install.md index a155694a4..c9625c0c9 100644 --- a/installing/manual_install.md +++ b/docs/installing/manual_install.md @@ -10,18 +10,18 @@ title: Manual installation The following instructions describe the step-by-step process for installing Alaveteli. <em>You don't necessarily need to do it this way:</em> it's usually easier to use the - <a href="{{ site.baseurl }}installing/script">installation script</a> + <a href="{{ site.baseurl }}docs/installing/script">installation script</a> or the - <a href="{{ site.baseurl }}installing/ami">Amazon EC2 AMI</a>. + <a href="{{ site.baseurl }}docs/installing/ami">Amazon EC2 AMI</a>. </p> -Note that there are [other ways to install Alaveteli]({{ site.baseurl }}installing). +Note that there are [other ways to install Alaveteli]({{ site.baseurl }}docs/installing). ## Target operating system These instructions assume Debian Squeeze (64-bit) or Ubuntu 12.04 LTS (precise). Debian Squeeze is the best supported deployment platform. We also -have instructions for [installing on MacOS]({{ site.baseurl }}installing/macos). +have instructions for [installing on MacOS]({{ site.baseurl }}docs/installing/macos). Commands are intended to be run via the terminal or over ssh. @@ -206,7 +206,7 @@ to the test config in `database.yml` (as seen in `database.yml-example`) You will need to set up an email server (MTA) to send and receive emails. Full configuration for an MTA is beyond the scope of this document -- see this -[example config for Exim4]({{ site.baseurl }}installing/email). +[example config for Exim4]({{ site.baseurl }}docs/installing/email). Note that in development mode mail is handled by mailcatcher by default so that you can see the mails in a browser - see [http://mailcatcher.me/](http://mailcatcher.me/) for more @@ -243,7 +243,7 @@ When you set up your MTA, if there is some error inside Rails, the email is returned with an exit code 75, which for Exim at least means the MTA will try again later. Additionally, a stacktrace is emailed to `CONTACT_EMAIL`. -See [this example]({{ site.baseurl }}installing/email/) for a possible configuration for Exim (>=1.9). +See [this example]({{ site.baseurl }}docs/installing/email/) for a possible configuration for Exim (>=1.9). A well-configured installation of this code will have had Exim make a backup copy of the email in a separate mailbox, just in case. @@ -378,11 +378,11 @@ There is a rake task that will help to rewrite this file into one that is useful to you, which can be invoked with: bundle exec rake config_files:convert_crontab \ - DEPLOY_USER=deploy \ - VHOST_DIR=/dir/above/alaveteli \ - VCSPATH=alaveteli \ - SITE=alaveteli \ - CRONTAB=config/crontab-example > crontab + DEPLOY_USER=deploy \ + VHOST_DIR=/dir/above/alaveteli \ + VCSPATH=alaveteli \ + SITE=alaveteli \ + CRONTAB=config/crontab-example > crontab You should change the `DEPLOY_USER`, `VHOST_DIR`, `VCSPATH` and `SITE` environment variables to match your server and installation. You should also @@ -433,21 +433,21 @@ this: <VirtualHost *:443> ServerName www.yourdomain - ProxyRequests Off - ProxyPreserveHost On - ProxyPass / http://localhost:80/ - ProxyPassReverse / http://localhost:80/ - RequestHeader set X-Forwarded-Proto 'https' + ProxyRequests Off + ProxyPreserveHost On + ProxyPass / http://localhost:80/ + ProxyPassReverse / http://localhost:80/ + RequestHeader set X-Forwarded-Proto 'https' - SSLEngine on - SSLProtocol all -SSLv2 - SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM + SSLEngine on + SSLProtocol all -SSLv2 + SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM - SSLCertificateFile /etc/apache2/ssl/ssl.crt - SSLCertificateKeyFile /etc/apache2/ssl/ssl.key - SSLCertificateChainFile /etc/apache2/ssl/sub.class2.server.ca.pem - SSLCACertificateFile /etc/apache2/ssl/ca.pem - SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown + SSLCertificateFile /etc/apache2/ssl/ssl.crt + SSLCertificateKeyFile /etc/apache2/ssl/ssl.key + SSLCertificateChainFile /etc/apache2/ssl/sub.class2.server.ca.pem + SSLCACertificateFile /etc/apache2/ssl/ca.pem + SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown </VirtualHost> @@ -456,7 +456,7 @@ is important. This ultimately tells Rails that it's serving a page over https and so it knows to include that in any absolute urls it serves. We have some [production server best practice -notes]({{ site.baseurl}}running/server/). +notes]({{ site.baseurl}}docs/running/server/). ## Upgrading Alaveteli @@ -492,7 +492,7 @@ things that can be automated for deployment. First, you need to check that your MTA is delivering relevant incoming emails to the `script/mailin` command. There are various ways of setting your MTA up to do this; we have documented - [one way of doing it]({{ site.baseurl }}installing/email/#troubleshooting-exim) + [one way of doing it]({{ site.baseurl }}docs/installing/email/#troubleshooting-exim) in Exim, including a command you can use to check that the email routing is set up correctly. diff --git a/installing/script.md b/docs/installing/script.md index 079d718e9..d4382c98f 100644 --- a/installing/script.md +++ b/docs/installing/script.md @@ -6,10 +6,10 @@ title: Installing the easy way # Installation script <p class="lead"> - If you prefer to use your own server, we've provided an installation script which does most of the work for you. + If you prefer to use your own server, we've provided an installation script which does most of the work for you. </p> -Note that there are [other ways to install Alaveteli]({{ site.baseurl }}installing). +Note that there are [other ways to install Alaveteli]({{ site.baseurl }}docs/installing). ## Installing with the installation script diff --git a/running/admin_manual.md b/docs/running/admin_manual.md index 609ed3bd8..bd3a44855 100644 --- a/running/admin_manual.md +++ b/docs/running/admin_manual.md @@ -6,7 +6,7 @@ title: Administrator's guide # Alaveteli administrator's guide <p class="lead"> - What is it like running an Alaveteli site? This guide explains what you can expect, and the types of problem that you might encounter. It includes examples of how mySociety manages their own <a href="/glossary/#foi" class="glossary">Freedom of Information</a> site, <a href="http://www.whatdotheyknow.com">whatdotheyknow.com</a>. + What is it like running an Alaveteli site? This guide explains what you can expect, and the types of problem that you might encounter. It includes examples of how mySociety manages their own <a href="/docs/glossary/#foi" class="glossary">Freedom of Information</a> site, <a href="http://www.whatdotheyknow.com">whatdotheyknow.com</a>. </p> ## What's involved? @@ -40,9 +40,9 @@ During that week, the tasks broke down as follows: ### Regular maintenance tasks -* 18 misdelivered / undelivered responses (a.k.a. the "Holding Pen") +* 18 misdelivered / undelivered responses (a.k.a. the "Holding Pen") * 4 requests that are unclassified 21 days after response needing classification -* 2 requests that have been marked as needing admin attention +* 2 requests that have been marked as needing admin attention * 2 things marked as errors (message refused by server - spam, full mailbox, etc) to fix ### User interaction tasks @@ -90,12 +90,12 @@ legal action. The scenario will vary wildly across different legal jurisdictions. In the UK, this kind of request is most likely to be related to defamation. -##### Action +##### Action * Get the notification by email to a central support email address, so there is a written record * Act according to standard legal advice (e.g. you may need to temporarily take - down requests while you debate it, even if you think they should stay up; or + down requests while you debate it, even if you think they should stay up; or you may be able to redact them temporarily rather than take them down) * Centrally log the entire conversation and the actions you have taken * Get further legal advice where necessary. For example, you may get a risk @@ -118,11 +118,11 @@ copyright assertions are made about content, but this is the most common one. ##### Example email to authority -> As I'm sure you know, our Freedom of Information law is "applicant blind", +> As I'm sure you know, our Freedom of Information law is "applicant blind", > so anyone in the world can request the same document and get a copy of it. > To save tax payers' money by preventing duplicate requests, and for good > public relations, we'd advise you not to ask us to take down the -> information or to apply for a license. I would also note that +> information or to apply for a license. I would also note that > <authority_name> has allowed re-use of FOI responses through our > website since last year, without any trouble. @@ -143,7 +143,7 @@ user of the site who later develops "Google remorse". much higher level of public interest. * [WhatDoTheyKnow considers](http://www.whatdotheyknow.com/help/privacy#takedown) there to be a strong public interest in retaining the names of officers or servants of - public authorities + public authorities * For users who want their name removed entirely from the site, in the first instance, try to persuade them not to do so: * Find out why they want their name removing @@ -227,16 +227,16 @@ Two common examples are: > I would like to know at this stage under the freedom act can ask > directly to UK embassies or high commission abroad to disclose some -> information. or I have to contact FCO through this website. +> information. or I have to contact FCO through this website. ##### Example response: > I would suggest making your request to the FCO as they are they body -> technically subject to the Freedom of Information Act. +> technically subject to the Freedom of Information Act. > > When you make your request it will be sent to the FCO's central FOI team they > will then co-ordinate the response with the relevant parts of their -> organisation. +> organisation. ### General assistance required @@ -249,7 +249,7 @@ Can be for many reasons, e.g. themselves * A reply has been automatically filed under the wrong request -## Vexatious users +## Vexatious users Some users persistently misuse the website. An alaveteli site should have a policy on banning users, for example giving them a first warning, informing diff --git a/running/index.md b/docs/running/index.md index a8f53eaeb..3db94f713 100644 --- a/running/index.md +++ b/docs/running/index.md @@ -11,18 +11,18 @@ title: Running </p> Alaveteli is not just software. To run a successful -<a href="{{ site.baseurl }}glossary/#foi" class="glossary">Freedom of Information</a> +<a href="{{ site.baseurl }}docs/glossary/#foi" class="glossary">Freedom of Information</a> site, you need to make sure day-to-day tasks get done too. Most Alaveteli sites are run by a team who allocate some time every day to user support and generally keeping the project up to date. -* the [administrator's guide]({{ site.baseurl }}running/admin_manual) describes +* the [administrator's guide]({{ site.baseurl }}docs/running/admin_manual) describes what you need to do and know to run your site * we've prepared a checklist of - [things to consider]({{ site.baseurl }}running/server) + [things to consider]({{ site.baseurl }}docs/running/server) when setting up your production server -* see the [different states a request can be in]({{ site.baseurl }}running/states) +* see the [different states a request can be in]({{ site.baseurl }}docs/running/states) diff --git a/running/server.md b/docs/running/server.md index 703372cd4..63ec1800f 100644 --- a/running/server.md +++ b/docs/running/server.md @@ -13,19 +13,19 @@ title: Production server best practices ## Hosting options -Your production server must be reliable and secure. If you don't run your own +Your production server must be reliable and secure. If you don't run your own servers already, consider one of these options: * Cloud Server * Virtual Private Server -In some cases, we can host new Alaveteli projects — if you need help, +In some cases, we can host new Alaveteli projects — if you need help, ask us about hosting. ## Cron jobs Don't forget to set up the cron jobs as outlined in the -[installation instructions]({{ site.baseurl }}installing/manual_install). +[installation instructions]({{ site.baseurl }}docs/installing/manual_install). As of October 2011, they rely on a small program created by mySociety called `run-with-lockfile`. A discussion of where the source for this can be found, and possible alternatives, lives in @@ -33,41 +33,41 @@ and possible alternatives, lives in ## Webserver configuration -We recommend running your site behind -[Apache](https://httpd.apache.org) + -[Passenger](https://www.phusionpassenger.com). Refer to the -[installation instructions]({{ site.baseurl }}installing/manual_install) +We recommend running your site behind +[Apache](https://httpd.apache.org) + +[Passenger](https://www.phusionpassenger.com). Refer to the +[installation instructions]({{ site.baseurl }}docs/installing/manual_install) regarding `PassengerMaxPoolSize`, which you should experiment with to match your available RAM. It is very unlikely that you'll ever need a pool larger than [Passenger's default](http://www.modrails.com/documentation/Users%20guide%20Apache.html#_passengermaxpoolsize_lt_integer_gt) of 6. -We recommend you run your server behind an HTTP accelerator like +We recommend you run your server behind an HTTP accelerator like [Varnish](https://www.varnish-cache.org). -Alaveteli ships with a +Alaveteli ships with a [sample varnish VCL](https://github.com/mysociety/alaveteli/blob/master/config/varnish-alaveteli.vcl). ## Security -You _must_ change all key-related [config settings]({{ site.baseurl }}customising/config) +You _must_ change all key-related [config settings]({{ site.baseurl }}docs/customising/config) in `general.yml` from their default values. This includes (but may not be limited to!) these settings: -* [`INCOMING_EMAIL_SECRET`]({{ site.baseurl }}customising/config/#incoming_email_secret) -* [`ADMIN_USERNAME`]({{ site.baseurl }}customising/config/#admin_username) -* [`ADMIN_PASSWORD`]({{ site.baseurl }}customising/config/#admin_password) -* [`COOKIE_STORE_SESSION_SECRET`]({{ site.baseurl }}customising/config/#cookie_store_session_secret) -* [`RECAPTCHA_PUBLIC_KEY`]({{ site.baseurl }}customising/config/#recaptcha_public_key) -* [`RECAPTCHA_PRIVATE_KEY`]({{ site.baseurl }}customising/config/#recaptcha_private_key) +* [`INCOMING_EMAIL_SECRET`]({{ site.baseurl }}docs/customising/config/#incoming_email_secret) +* [`ADMIN_USERNAME`]({{ site.baseurl }}docs/customising/config/#admin_username) +* [`ADMIN_PASSWORD`]({{ site.baseurl }}docs/customising/config/#admin_password) +* [`COOKIE_STORE_SESSION_SECRET`]({{ site.baseurl }}docs/customising/config/#cookie_store_session_secret) +* [`RECAPTCHA_PUBLIC_KEY`]({{ site.baseurl }}docs/customising/config/#recaptcha_public_key) +* [`RECAPTCHA_PRIVATE_KEY`]({{ site.baseurl }}docs/customising/config/#recaptcha_private_key) You should consider running the admin part of the site over HTTPS. This can be achieved with rewrite rules that redirect URLs beginning with `/admin`. ## Email configuration -See the [configuration for exim or postfix]({{ site.baseurl }}installing/email/) for +See the [configuration for exim or postfix]({{ site.baseurl }}docs/installing/email/) for setting up your Mail Transfer Agent (MTA). It is possible to use other MTAs — -if you use a different one, the documentation there should provide you with +if you use a different one, the documentation there should provide you with enough information to get started. If this applies to you, please add to the documentation! @@ -80,15 +80,15 @@ deliverability of your email: or_some_email_providers">feedback loops</a> with the main email providers (Hotmail and Yahoo! are recommended) * Especially if deploying from Amazon EC2, use an external SMTP relay for - sending outgoing mail. See [Alaveteli EC2 AMI]( {{ site.baseurl }}installing/ami) + sending outgoing mail. See [Alaveteli EC2 AMI]( {{ site.baseurl }}docs/installing/ami) for more suggestions. ## Backup Most of the data for the site lives in the production database. The exception is the raw incoming email data, which is stored on the filesystem, as specified -in the setting -[`RAW_EMAILS_LOCATION`]({{ site.baseurl }}customising/config/#raw_emails_location) +in the setting +[`RAW_EMAILS_LOCATION`]({{ site.baseurl }}docs/customising/config/#raw_emails_location) setting in `config/general.yml`. Refer to the [Postgres @@ -113,7 +113,7 @@ something like: if $header_to: contains "mydomain.org" then unseen deliver "backup@mybackupdomain.org" - endif + endif if $sender_address: contains "mydomain.org" then diff --git a/running/states.md b/docs/running/states.md index 598a28d98..73e49eba7 100644 --- a/running/states.md +++ b/docs/running/states.md @@ -6,17 +6,17 @@ title: States of requests # Request states <p class="lead"> - A <a href="{{site.baseurl}}glossary/#request" class="glossary">request</a> + A <a href="{{site.baseurl}}docs/glossary/#request" class="glossary">request</a> passes through different <strong>states</strong> as it is processed. These may vary from one jurisdiction to another. </p> The request states are defined in the Alaveteli code, and we recommend you use -them (provided they match the <a href="{{ site.baseurl }}glossary/#foi" +them (provided they match the <a href="{{ site.baseurl }}docs/glossary/#foi" class="glossary">FOI law</a> in your own jurisdiction). But if you do need to customise them, you can — see -<a href="{{ site.baseurl }}customising/themes">Customising the request states</a> for details. - +<a href="{{ site.baseurl }}docs/customising/themes">Customising the request states</a> for details. + ## WhatDoTheyKnow example Requests made on the UK's Alaveteli instance, [WhatDoTheyKnow](http://www.whatdotheyknow.com), @@ -24,7 +24,7 @@ may be in any of the states described below. Note that your site doesn't need to use the same states as WhatDoTheyKnow does. For example, Kosovo's instance uses slightly different states: see -[this comparison of their differences]({{ site.baseurl }}running/states_informatazyrtare). +[this comparison of their differences]({{ site.baseurl }}docs/running/states_informatazyrtare). ### States @@ -188,7 +188,7 @@ Kosovo's instance uses slightly different states: see <a name="requires_admin">requires_admin</a> </dt> <dd> - A strange reponse, required attention by the WhatDoTheyKnow team + A strange reponse, required attention by the WhatDoTheyKnow team <ul> <li>a user is confused and doesn't know what state to set, so an admin can intervene</li> <li>Redirect to form to ask for more information</li> diff --git a/running/states_informatazyrtare.md b/docs/running/states_informatazyrtare.md index b4cf2e81b..8097244c5 100644 --- a/running/states_informatazyrtare.md +++ b/docs/running/states_informatazyrtare.md @@ -9,11 +9,11 @@ title: States of requests (InformataZyrtare) This page shows differences between states used on two different Alaveteli instances — one in Kosovo and one in the UK. This is a practical example showing that you can customise the states that - your site uses. + your site uses. </p> The request states are defined in the Alaveteli code, and we recommend you use -them (provided they match the <a href="{{ site.baseurl }}glossary/#foi" +them (provided they match the <a href="{{ site.baseurl }}docs/glossary/#foi" class="glossary">FOI law</a> in your own jurisdiction). ## InformataZyrtare.org (Kosovo) example @@ -29,7 +29,7 @@ facilitates this by allowing you to customise the states that are used. This example is to show clearly that you can use different states depending on your local requirements, and how that might look. See [Customising the request -states]({{ site.baseurl }}customising/themes) for details on how to do this. +states]({{ site.baseurl }}docs/customising/themes) for details on how to do this. ### States used by InformataZyrtare but not WDTK @@ -39,13 +39,13 @@ states]({{ site.baseurl }}customising/themes) for details on how to do this. ### States used by WDTK but not InformataZyrtare - * <a href="{{ site.baseurl }}running/states/#awaiting_description">awaiting_description</a> - * <a href="{{ site.baseurl }}running/states/#gone_postal">gone_postal</a> - * <a href="{{ site.baseurl }}running/states/#internal_review">internal_review</a> - * <a href="{{ site.baseurl }}running/states/#user_withdrawn">user_withdrawn</a> - * <a href="{{ site.baseurl }}running/states/#waiting_response_very_overdue">waiting_response_very_overdue</a> + * <a href="{{ site.baseurl }}docs/running/states/#awaiting_description">awaiting_description</a> + * <a href="{{ site.baseurl }}docs/running/states/#gone_postal">gone_postal</a> + * <a href="{{ site.baseurl }}docs/running/states/#internal_review">internal_review</a> + * <a href="{{ site.baseurl }}docs/running/states/#user_withdrawn">user_withdrawn</a> + * <a href="{{ site.baseurl }}docs/running/states/#waiting_response_very_overdue">waiting_response_very_overdue</a> -For more details, see all the [states used by WhatDoTheyKnow]({{site.baseurl}}running/states)) for details. +For more details, see all the [states used by WhatDoTheyKnow]({{site.baseurl}}docs/running/states)) for details. --- @@ -54,10 +54,10 @@ For more details, see all the [states used by WhatDoTheyKnow]({{site.baseurl}}ru ### Details of InformataZytare states -The states which aren't represented on [WDTK's states]({{ site.baseurl }}running/states/) are described +The states which aren't represented on [WDTK's states]({{ site.baseurl }}docs/running/states/) are described in a little more detail here: -<ul class="definitions"> +<ul class="definitions"> <li><a href="#deadline_extended">deadline_extended</a></li> <li><a href="#partial_rejected">partial_rejected</a></li> <li><a href="#wrong_response">wrong_response</a></li> @@ -6,29 +6,29 @@ title: Welcome # Alaveteli documentation <p class="lead"> - This is the documentation for Alaveteli, - an open source Freedom of Information platform - created by <a href="http://www.mysociety.org">mySociety</a>. + This is the documentation for Alaveteli, + an open source Freedom of Information platform + created by <a href="http://www.mysociety.org">mySociety</a>. </p> ## New to Alaveteli? -You've found the documentation for Alaveteli. +You've found the documentation for Alaveteli. * Learn about the project at [www.alaveteli.org](http://www.alaveteli.org). * Read [Turbo Transparency](http://www.alaveteli.org/files/2012/10/Turbo-Transparency-v1.0.pdf), a paper about how and why to use Alaveteli for Freedom of Information systems -* Read the [Getting Started guide]({{ site.baseurl }}getting_started) +* Read the [Getting Started guide]({{ site.baseurl }}docs/getting_started) **The documentation covers -[installing]({{ site.baseurl }}installing), -[customising]({{ site.baseurl }}customising), and -[running]({{ site.baseurl }}running) your own Alaveteli site.** +[installing]({{ site.baseurl }}docs/installing), +[customising]({{ site.baseurl }}docs/customising), and +[running]({{ site.baseurl }}docs/running) your own Alaveteli site.** If you're making changes to the source code, we have -[documentation for developers]({{ site.baseurl }}developers) too. +[documentation for developers]({{ site.baseurl }}docs/developers) too. -If you are an organisation who wants to use Alaveteli in your jurisdiction, or a developer who is interested in collaborating on the software, please +If you are an organisation who wants to use Alaveteli in your jurisdiction, or a developer who is interested in collaborating on the software, please [get in touch]({{ site.baseurl }}community). |