# j-Kanban

> Belangrijk: elk item heeft zijn eigen ID {String} nodig, kijk naar het voorbeeld.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: nl
Content-SHA256: dfc5ef8897bba4a8d6d89af1b13fdfaf0516b7ff22afaef3a4c3a93e5a44e382
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

__Configuratie__:

- `parent {String}` Een container met een vaste hoogte kan `window`De standaardwaarde: `parent` Het element.
- `margin {Number}` een top/bottom marge samen (default: `0`)
- `padding {Number}` een padding tussen de panelen (default: `10`)
- `style {Number}` een stijl, `1` (default): de dozen hebben een volledige hoogte, de `2` dozen zullen hebben `max-height `
- `move {String}` een route naar de methode `function(group, target)`, wordt uitgevoerd als de gebruiker een item naar een andere groep verplaatst
- `remove {String}` een route naar de methode `function(group)`, wordt uitgevoerd als de gebruiker een item in groep verwijdert
- `dblclick {String}` een route naar de methode `function(group)`, wordt uitgevoerd als de gebruiker dubbel klikt

__Methoden__:

- `component.remove(id)` kan een item in groep verwijderen
- `component.findgroup(id)` geeft een groepsinstantie

__Important__: elk item heeft zijn eigen ID {String} nodig, zie het voorbeeld.

Gebruik het met `<ui-component name="kanban">`Wanneer de component nog niet is geladen, jComponent Download het op eerste gebruik van het adres in `DEF.fallback` (De Componentator Schrijver: Peter Širka. bron: de Componentator Componenten repository, MIT licentie.

```html example.html
<style>
	.caption { line-height: 50px; border-bottom: 1px solid #E0E0E0; padding: 0 10px; font-weight: bold; }
	.ui-dark .caption { border-bottom-color: #404040; }
</style>

<ui-component name="kanban" path="items" config="parent:window;move:onmoveitem;margin:50">

	<!-- Group header rendering -->
	<script type="text/html">
		<div class="caption">{{ name }}</div>
	</script>

	<!-- Item rendering -->
	<script type="text/html">
		<div>{{ name }}</div>
	</script>
</ui-component>

<script>

	var items = [];
	items.push({ id: '1', name: 'In progress', items: [{ id: '11', name: 'Better life Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea culpa voluptatem asperiores aspernatur doloremque cupiditate error, qui sit est quas.' }] });
	items.push({ id: '2', name: 'Pending', items: [{ id: '21', name: 'Improve j-ChunkyScroll' }] });
	items.push({ id: '3', name: 'Done', items: [{ id: '31', name: 'Fix scrollbars j-DataGrid' }, { id: '32', name: 'Improve performace' }] });

	function onmoveitem(group, target) {
		console.log('MOVEMENT:', group, target);
	}

</script>
```
