Browse Source

CustomCategory: list popular categories

master
parent
commit
832e4c6776
  1. 1
      lang/en.json
  2. 42
      src/customCategory.js

1
lang/en.json

@ -12,6 +12,7 @@
"tip-tutorial": "Check out the [Tutorial]",
"customCategory:header": "Custom categories",
"customCategory:create": "Create custom category",
"customCategory:list": "List popular custom categories",
"copied-clipboard": "Copied to clipboard",
"edit": "edit",
"editor:id": "iD (in-browser editor)",

42
src/customCategory.js

@ -166,8 +166,8 @@ hooks.register('browser-more-categories', (browser, parameters) => {
block.appendChild(header)
let ul = document.createElement('ul')
let li = document.createElement('li')
let li = document.createElement('li')
let a = document.createElement('a')
a.innerHTML = lang('customCategory:create')
a.href = '#'
@ -178,10 +178,50 @@ hooks.register('browser-more-categories', (browser, parameters) => {
li.appendChild(a)
ul.appendChild(li)
li = document.createElement('li')
a = document.createElement('a')
a.innerHTML = lang('customCategory:list')
a.href = '#more-categories?custom=list'
li.appendChild(a)
ul.appendChild(li)
block.appendChild(ul)
browser.catchLinks()
}
else if (parameters.custom === 'list') {
customCategoriesList(browser, parameters)
}
})
function customCategoriesList (browser, options) {
browser.dom.innerHTML = '<i class="fa fa-spinner fa-pulse fa-fw"></i> ' + lang('loading')
ajax('customCategory', { 'list': true }, (result) => {
browser.dom.innerHTML = ''
const ul = document.createElement('ul')
browser.dom.appendChild(ul)
result.forEach(cat => {
const li = document.createElement('li')
const a = document.createElement('a')
a.href = '#categories=custom/' + cat.id
a.appendChild(document.createTextNode(cat.id))
li.appendChild(a)
const edit = document.createElement('a')
edit.onclick = () => editCustomCategory(cat.id)
edit.innerHTML = ' <i class="fa fa-pen"></i>'
li.appendChild(edit)
ul.appendChild(li)
})
browser.catchLinks()
})
}
hooks.register('init', () => {
OpenStreetBrowserLoader.registerRepository('custom', new CustomCategoryRepository())
})

Loading…
Cancel
Save