# j-ServerListing

> j-ServerListing: лесен за използване; втори модел $ съдържа информация за източника на данни { индекс: номер, страница: брой, страници: брой: брой , стойност: YOURDATA }

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

__Конфигуриране__:

- `paginate {String}` връзка към функцията `function(page)` за страница
- `pages {Number}` максимум. страници в страница (предварително: `3` -> половин + текуща страница + половин)
- `scrolltop {Boolean}` автоматично скалира, когато потребителят променя страница
- `parent {String}` jQuery селектор за получаване на височина, позволява фиксирана област с персонализирани скали
- `margin {Number}` е марж за `parent` (предварително: `0`)
- `marginxs {Number}` опция, горна/долна маржа заедно за ширина на екрана `xs`
- `marginsm` е горната / долната маржа заедно за ширината на екрана на `sm`
- `marginmd` е горната / долната маржа заедно за ширината на екрана на `md`
- `marginlg` е горната / долната маржа заедно за ширината на екрана на `lg`
- `pluralizeitems` плурализация за броя на всички елементи, формуляр: `# zero,# one,# two-four,# five and more` (ако е празен, броят ще бъде скрит)
- `pluralizepages` плурализация за броя на всички елементи, формуляр: `# zero,# one,# two-four,# five and more` (ако е празен, броят ще бъде скрит)
- `modulo {Number}` може да допълва празни елементи с `{ EMPTY: 1 }` обект (дефолт: `0`)
- `nopages {Boolean}` може да скрие страница, ако страниците са по-малко от `2` (предварително: `false`)

__Моделът__:

Моделът трябва да бъде в формата по-долу:

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

__Tangular Лейджът__:

- `body` {String} съдържа всички рендерирани елементи, изходът е __HTML__
- `page` {No} текущ номер на страницата
- `pages` {No} броят на страници
- `count` {No} броят на елементите

__Tangular Етикети__:

- `model` съдържа обект от `Array`
- Вторият модел `$` съдържа информация за източника на данни `{ index: Number, page: Number, pages: Number, count: Number, value: YOUR_DATA }`

Използвайте го с `<ui-component name="serverlisting">`Когато компонентът все още не е зареден, jComponent Изтегляне на първия адрес в `DEF.fallback` (След това Componentator Източник: Питър Шерка Componentator Съставни съставки, лиценз на 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>
```
