Douglas Gardner a53eb5e0d2 begin transition from English to ISO-639 with #234
This patch converts all English language strings used within
depressionbot's localisation interface (that is, strings.json) to their
ISO-639-1 equivalents.

The purpose of this patch is to make the strings.json file less
English-dependent.

All languages with an ISO-639-1 code have been converted; that is,
English, Spanish and Welsh, to ``en``, ``es`` and ``cy`` respectively.

This patch does not attempt to force a solution to the issue of Na'vi:
the language does not have a large enough corpus to warrant its own ISO
639-3 code, and as such there is no perfect solution. For the time
being, this patch keeps the Na'vi language as its English language
string ("Na'vi"). A possible solution to this discrepancy includes using
the ISO 639-3 code ``art``, used for artificial languages that do not
qualify for an official code, or by using local use codes specified
in ISO 639-3 (qaa to qtz).

This patch requires collaboration with upstream repositories that also
use strings.json, such as the Github and Stats modules.
2013-02-12 18:39:15 +00:00
..
2013-01-27 20:52:11 +00:00
2013-01-15 14:47:46 +00:00
2013-01-27 20:52:11 +00:00
2013-01-15 21:43:09 +00:00

## Quotes

Stores and displays quotes.

### Description

This is the original reason that DBot was created, stores and displays quotes.

### Configuration

#### rmLimit: 10
Amount of quotes which can be removed before admin approval is required.

### Commands

#### ~q [category]
Display a random quote from a given category.

#### ~qadd [category] = [quote]
Add a new quote to the database.

#### ~qstats
Show a list of the biggest quote categories.

#### ~qsearch [category] = [needle]
Search a category for quotes including the given text.

#### ~rmlast [category]
Remove the last quote added to a given category.

#### ~rmstatus
Show how many quotes are currently in the removal cache, and whether they will
be randomly removed.

#### ~rm [category] = [quote]
Remove a given quote from the given category.

#### ~qcount [category]
Show the number of quotes stored in the given category, or if called without a
category it will show the total number of quotes in the database.

#### ~rq
Show a random quote from the database.

#### ~link [category]
Show a link to the page on the web interface which shows this category's quotes.

### Admin-only Commands

#### ~rmconfirm
Confirm that the quotes currently in the removal cache are okay to be removed,
and permanently delete them.

#### ~rmdeny
Re-instate the quotes that are currently in the removal cache back into the main
quote database.

### API

#### getQuote(event, category)
Returns a random quote from the given category.

### Removal Spam Protection

When quotes are removed using either the ~rm or ~rmlast commands, the quotes are
removed from the main database, but are stored in a removal cache which is cleared 
out ten minutes from the last time a quote was removed from the database. If the 
number of quotes removed from the database reaches a certain limit (as per rmLimit 
in config, default 10) then the counter is removed and the cache will not be deleted 
automatically. In such a case, a DBot admin needs to either run the ~rmconfim command
to have the removal cache cleared, or ~rmdeny to re-instate all of the quotes in
the removal cache back into the main quote database. This is to stop mass
removal from the database without limiting the user interface.