discourse/discourse — pull request #2207 by riking (2014-03-30 05:40:27+00:00)
Title: UI for list site settings

If I missed any SiteSettings that someone might legitimately want to add a `|` to, please list them in the comments. (The way to fix a setting mistakenly identified as a list is to delete all but one item and refresh the page.)

### Code description
While typing, the ListSettingItemComponent calls `setItemValue` with its index and the current text.
The current value of the site setting is 'cached' in `settingValueCached` and moved to `settingValue` by `uncacheValue` when focus on the input field is lost (this redraws the ListSettingItemComponents via `readValues`).

`children` holds an array of all the `ListSettingItemComponents` inside the list, which is used to set focus to the new one after clicking the add button.

![image](https://cloud.githubusercontent.com/assets/627891/2560471/f8e3c26a-b7cc-11e3-89fb-9ca1ccd4b06e.png)