# j-ServerListing

> j-ServerListing: fácil de usar; segundo modelo $ contém informações sobre a fonte de dados { índice: Número, página: número, páginas: Númenos, números: valor: YOURDATA }

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

__Configuração__:

- `paginate {String}` ligação a uma função `function(page)` para página
- `pages {Number}` Páginas em Paginação (default): `3` --> metade + página atual + metade)
- O `scrolltop {Boolean}` se move automaticamente quando o usuário muda uma página
- `parent {String}` jQuery selector para obter altura, permite área fixa com barras personalizadas
- `margin {Number}` uma margem para `parent` (default: `0`)
- `marginxs {Number}` opcional, uma margem superior/baixo juntos para a largura de tela `xs`
- `marginsm` uma margem superior/baixo para a largura de tela `sm`
- `marginmd` uma margem superior/baixo para a largura de tela `md`
- `marginlg` uma margem superior/baixo para a largura de tela `lg`
- `pluralizeitems` uma multiplicação para contar todos os itens, formulário: `# zero,# one,# two-four,# five and more` (se vazio, o contador será escondido)
- `pluralizepages` uma multiplicação para contar todos os itens, formulário: `# zero,# one,# two-four,# five and more` (se vazio, o contador será escondido)
- `modulo {Number}` pode adicionar itens vazios com o objeto `{ EMPTY: 1 }` (default: `0`)
- `nopages {Boolean}` pode esconder a página se as páginas forem menores que `2` (default: `false`)

__Modelo__:

O modelo deve ser no formato abaixo:

```javascript
{
	page: Number,
	count: Number,
	pages: Number,
	items: [{...}, {...}]
}
```

__Tangular em Layout__:

- `body` {String} contém todos os itens renderados, a saída é __HTML__
- `page` {Número} Número de página atual
- `pages` {Número} Número de páginas
- `count` {Número} Número de itens

__Tangular item__:

- `model` contém um objeto de `Array`
- O segundo modelo `$` contém informações sobre a fonte de dados `{ index: Number, page: Number, pages: Number, count: Number, value: YOUR_DATA }`

Use-o com `<ui-component name="serverlisting">`Quando o componente ainda não está carregado, jComponent Descarrega-o no primeiro uso do endereço `DEF.fallback` (a partir do Componentator CDN por padrão). autor: Peter Širka. fonte: o Componentator Reserva de componentes, licença MIT.

```html example.html
<div class="row">
	<div class="col-sm-6">
		<h2>With layout</h2>
		<ui-component name="serverlisting" path="model" config="paginate:gotopage">
			<script type="text/html">
				<div class="col-xs-4">
					<div>Item: {{ name }}</div>
				</div>
			</script>
			<script type="text/html">
				<div><b>Layout:</b></div>
				<br />
				<div class="row">{{ body | raw }}</div>
			</script>
		</ui-component>
		<br />
	</div>

	<div class="col-sm-6">
		<h2>Without layout</h2>
		<ui-component name="serverlisting" path="model" config="paginate:gotopage">
			<script type="text/html">
				<div>
					<div>Item: {{ name }}</div>
				</div>
			</script>
		</ui-component>
		<br />
	</div>
</div>

<script>

	var model = {};
	model.page = 1;
	model.pages = 3;
	model.count = 10;
	model.items = [];

	for (var i = 0; i < 10; i++)
		model.items.push({ name: GUID(10) });

	function gotopage(page) {
		alert('GO TO PAGE:' + page);
	}

</script>
```
