Не используется.
Пример вызова
udata://blogs20/editUserBlogs
XML-ответ UData
<udata module="blogs20" method="editUserBlogs" generation-time="0.013707">
<blogs>
<item>
<bid>70</bid>
<path>/blog1/</path>
<friends>
<option value="2373">Гость</option>
<option value="14">sv</option>
<option value="27248">user1</option>
<option value="27237">user2</option>
</friends>
<current_page>/udata/blogs20/editUserBlogs/</current_page>
</item>
<item>
<bid>64</bid>
<title>Еще блог</title>
<description>Блог второй. Тоже для примера.</description>
<path>/ewe_blog1/</path>
<friends>
<option value="2373">Гость</option>
<option value="14">sv</option>
<option value="27248" selected>user1</option>
<option value="27237" selected>user2</option>
</friends>
<current_page>/udata/blogs20/editUserBlogs/</current_page>
</item>
</blogs>
</udata>
Элементы и атрибуты
<item>
ветвь, описывающая блог
<current_page>
URL страницы, с которой произошел вызов.
Пример использования
Сначала вызовем макрос в нужном месте выбранного шаблона (например, шаблон для "users/settings
")
<xsl:apply-templates select="document('udata://blogs20/editUserBlogs/')" />
Создадим шаблон обработки этого вызова и наполним его директивами. Например, так:
<xsl:template match="udata[@module = 'blogs20'][@method = 'editUserBlogs']">
<div style="display:block;width:100%;margin-top: 40px;">
<h3>Мои блоги</h3>
<span style="display:block; margin:20px 20px 20px 20px; font-size:11pt;">
<a href="/blogs20/draughtsList/" style="color:#777;text-decoration:none;" title="Черновики">
<img src="/images/cms/blogs20/draught.png" alt="Черновики" title="Черновики" style="border:0;vertical-align:middle;" />
→
</a>
<a href="/blogs20/draughtsList/" style="color:#777;vertical-align:middle;" title="Черновики">Черновики публикаций</a>
</span>
<xsl:apply-templates select="document('udata://blogs20/editUserBlogs/')/udata/blogs/item" mode="user_blogs"/>
</div>
</xsl:template>
<xsl:template match="item" mode="user_blogs">
<div style="padding-top:10px;">
<h4><xsl:value-of select="title" /></h4>
<br />
Ссылка на сайте: <a href="{path}"><xsl:value-of select="path" /></a>
<br /><br />
<div style="padding-left:15px;">
<form id="form_{bid}_edit" method="post" action="/blogs20/editUserBlogs/{bid}/">
<input type="hidden" name="redirect" value="{current_page}" />
<label for="blog_{bid}_title">Заголовок</label><br />
<input type="text" id="blog_{bid}_title" name="blog[{bid}][title]" style="width:99%;border:1px solid #ccc;" value="{title}" /><br /><br />
<label for="blog_{bid}_description">Описание</label><br />
<input type="text" id="blog_{bid}_description" name="blog[{bid}][description]" style="width:99%;border:1px solid #ccc;" value="{description}" /><br /><br />
<label for="blog_{bid}_friendlist">Друзья</label><br />
<select id="blog_{bid}_friendlist" name="blog[{bid}][friendlist][]" multiple="multiple" style="width:99%;height:100px;border:1px solid #ccc;"><xsl:value-of select="document('udata://blogs20/editUserBlogs/44/')/udata/blogs/item/friends" disable-output-escaping="yes" /></select><br /><br />
<span style="display:block;text-align:right;"><input type="submit" value="Сохранить" /></span>
</form>
</div>
</div>
</xsl:template>
<xsl:template match="item[bid = 'new']" mode="user_blogs">
<div style="padding-top:10px;">
<h3>Создать новый блог</h3>
<div style="padding-left:15px;">
<form id="form_{bid}_edit" method="post" action="/blogs20/editUserBlogs/{bid}/">
<input type="hidden" name="redirect" value="{current_page}" />
<label for="blog_{bid}_title">Название</label><br />
<input type="text" id="blog_{bid}_title" name="blog[{bid}][title]" style="width:99%;border:1px solid #ccc;" value="{title}" /><br /><br />
<label for="blog_{bid}_description">Описание</label><br />
<input type="text" id="blog_{bid}_description" name="blog[{bid}][description]" style="width:99%;border:1px solid #ccc;" value="{description}" /><br /><br />
<label for="blog_{bid}_friendlist">Друзья</label><br />
<select id="blog_{bid}_friendlist" name="blog[{bid}][friendlist][]" multiple="multiple" style="width:99%;height:100px;border:1px solid #ccc;"><xsl:value-of select="document('udata://blogs20/editUserBlogs/44/')/udata/blogs/item/friends" disable-output-escaping="yes" /></select><br /><br />
<span style="display:block;text-align:right;"><input type="submit" value="Сохранить" /></span>
</form>
</div>
</div>
</xsl:template>
Стоит отметить, что, в отличие от старых блогов, теперь сохранение производится не сразу всех блогов, а только того, для которого была нажата кнопка "сохранить".
Используемые блоки
blog_edit_block
выводит содержимое публикации
- %lines%
-
указывает место, куда выводится список блогов из блока blog_edit_line
blog_edit_line
редактирование существующего блога
- %bid%
-
идентификатор блога
- %title%
-
тайтл блога
- %description%
-
описание
- %path%
-
путь к блогу на сайте
- %friends%
-
друзья (строка с выбором значений для селекта)
- %current_page%
-
текущая страница
- %list-class-first%
-
в случае, если элемент первый, выводит "first"
- %list-class-last%
-
в случае, если элемент последний, выводит "last"
- %list-class-odd%
-
в случае, если элемент четный, выводит "odd"
- %list-class-even%
-
в случае, если элемент нечетный, выводит "even"
- %list-position%
-
вставляет порядковый номер в списке
blog_new_line
Создание нового блога
- %bid%
-
идентификатор блога (всегда new)
- %friends%
-
друзья (строка с выбором значений для селекта)
- %current_page%
-
текущая страница
- %list-class-first%
-
в случае, если элемент первый, выводит "first"
- %list-class-last%
-
в случае, если элемент последний, выводит "last"
- %list-class-odd%
-
в случае, если элемент четный, выводит "odd"
- %list-class-even%
-
в случае, если элемент нечетный, выводит "even"
- %list-position%
-
вставляет порядковый номер в списке
Название
%blogs20 editUserBlogs()% — выводит форму редактирования/добавления пользовательских блогов.