Мистика с отображением кнопок и состояния ресурса

Добрый день. Я снова к вам с проблемой, дело в том, что есть у меня страница личного кабинета, где мне надо вывести список объявлений юзера (реализован через Tickets), список вакансий юзера (реализовано стандартом + дописал добавление из фронтэнда), при выводе этих ресурсов мне необходимо сделать кнопки «редактировать, отключить и удалить», а также вывести состояние ресурсов (модерация, в архиве или опубликован). Так вот при выводе объявлений я использую вот такой сниппет:
<div id="result">
	[[getTickets? &tpl=`tpl.Tickets.list.row.ajax` &parents=`62` &limit=`5` &includeContent=`1` &showUnpublished=`[[+id:is=`[[+modx.user.id]]`:then=`1`:else=`0`]]` &user=`[[+id]]`]]
</div>
И есть кнопка «Показать ещё» — AJAX:
<p>[[+countTickets:notempty=`<button class="more" data-divblock="result" data-action="getTickets" data-tpl="tpl.Tickets.list.row.ajax" data-parents="62" data-user="[[+id]]" data-limit="5" data-offset="5">Показать ещё...</button>`:empty=`[[+id:is=`[[+modx.user.id]]`:then=`У Вас пока нет объявлений. <a href="[[~75]]">Разместить объявление?</a>`:else=`Пользователь не размещал объявления на сайте.`]]`]]
[[+countTickets:notempty=`<a href="[[~75]]" class="button">Добавить объявление</a>`]]</p>
При отображении объявлений кнопки «ред, откл и уд» отображаются корректно, также как и состояние ресурса. Однако беда в том, что tv поле (unpub_date_tv) не отображается, там где вывод делается сразу через сниппет [[getTickets]] вообще не выводится [[+tv.unpub_date_tv]], а когда загружаем след ресурсы AJAXом, то в месте, где должны быть данные tv поля отображается плейсхолдер в «чистом» виде, так сказать, то бишь просто написано — [[+tv.unpub_date_tv]]. Как быть, подскажите?

Но это не главная проблема. А основная суть моего обращения к вам заключается в том, что при выводе вакансий, я использую такую конструкцию (также с кнопкой «Показать ещё»):
<div id="result2">
	[[getResources? &tpl=`vacancyblockTpl.ajax` &parents=`2151` &limit=`5` &includeContent=`1` &where=`{"createdby:=":[[+id]]}` &includeTVs=`1` &hideContainers=`1` &showUnpublished=`[[+id:is=`[[+modx.user.id]]`:then=`1`:else=`0`]]` &totalVar=`countResources`]]
</div>
<p>[[+countResources:notempty=`<button class="more2" data-divblock="result2" data-action="getResources" data-tpl="vacancyblockTpl.ajax" data-parents="2151" data-user="[[+id]]" data-limit="5" data-offset="5">Показать ещё...</button>`:empty=`[[+id:is=`[[+modx.user.id]]`:then=`У Вас пока нет вакансий. <a href="[[~2156]]">Разместить вакансию?</a>`:else=`Пользователь не размещал вакансии на сайте.`]]`]]
[[+countResources:notempty=`<a href="[[~2156]]" class="button">Добавить вакансию</a>`:isempty=``]]</p>
Здесь я в чанк вывода вакансии («vacancyblockTpl.ajax») я вставляю код почти такого-же вида, как и в чанк вывода объявлений (по крайней мере вывод кнопок «ред, уд и откл», а также состояние ресурса «модер, архив или опубл» — выводится точно также). Вот этот код:
<div class="article_item">
	<div class="description">
		<div class="block95 title">
			<a href="[[~[[+id]]]]" title="" class="advert_title">Требуется: [[+pagetitle]][[+tv.vcity:notempty=` в [[+tv.vcity]]`]][[+tv.vgrafik:notempty=`, [[+tv.vgrafik]]`]]</a>
			<!--[[+content:notempty=`<br />[[+content:summary=`len=130&tags=0&noparser=0&dotted=2`]]`]]-->
		</div>
		<div class="clear"></div>
		
		<div class="advert_info">
			<div class="dat_icon">[[+createdon:dateAgo]][[+editedon:is=`0`:then=``:else=` <small>(изменено: [[+editedon:dateAgo]])</small>`]]</div>
			[[+tv.zpno:is=`1`:and:if=`[[+tv.zpposle]]`:is=`1`:then=`<div class="zrp_icon">зарплата после собеседования</div>`:else=``]]
			[[+tv.zpno:is=`0`:and:if=`[[+tv.zpposle]]`:is=`1`:then=`<div class="zrp_icon">зарплата [[+tv.zpot:is=`[[+tv.zpdo]]`:then=`[[+tv.zpot]] тг.`:else=` от [[+tv.zpot]] до [[+tv.zpdo]] тг.`]] (окончательно после собеседования)</div>`:else=``]]
			[[+tv.zpno:is=`0`:and:if=`[[+tv.zpposle]]`:is=`0`:then=`<div class="zrp_icon">зарплата [[+tv.zpot:is=`[[+tv.zpdo]]`:then=`[[+tv.zpot]] тг.`:else=` от [[+tv.zpot]] до [[+tv.zpdo]] тг.`]]</div>`:else=``]]
			<div class="data_user">[[+tv.vcompany]]</div>
			
			<div class="advert_hidebuttons">
				[[+createdby:is=`[[+modx.user.id]]`:then=`<a href="[[~3233]]?rid=[[+id]]" class="editbutton" title="Редактировать" target="_blank"></a> [[+published:is=`0`:and:if=`[[+publishedon]]`:ne=`0`:then=``:else=`<a href="[[~]]?tid=[[+id]]" class="trashbutton" title="Отключить" target="_blank" onclick="return confirm('Уверены, что хотите отключить вакансию «[[+pagetitle:htmlent]]»?')"></a>`]] <a href="[[~]]?tid=[[+id]]" class="delbutton" title="Удалить" target="_blank" onclick="return confirm('Уверены, что хотите удалить вакансию «[[+pagetitle:htmlent]]»?')"></a>`:else=``]]
			</div>
			<div class="advert_hideinfo">
				[[+published:is=`0`:and:if=`[[+publishedon]]`:is=`0`:then=`<span class="red">(на модерации)</span>`]]
				[[+published:is=`0`:and:if=`[[+publishedon]]`:ne=`0`:then=`<span class="grey">(в архиве)</span>`]]
				[[+createdby:is=`[[+modx.user.id]]`:then=`[[+published:is=`1`:and:if=`[[+publishedon]]`:ne=`0`:then=`<span class="green">(опубликовано)</span>`]]`]]
			</div>
		</div>
	</div>
</div>
И вот тут мы подобрались к главной проблеме, при чём очень странной главной проблеме! Дело в том, что кнопки «ред, уд и откл» не отображаются (хотя должны), также как и состояние ресурса. Но кнопки мне удалось вывести магическим способом, перед выводом кнопок я просто поставил плейсхолдер [[+id]] и на моё огромное удивление кнопки вывелись, к сожалению с состоянием также «наколдовать» у меня не вышло, вот и пришёл сюда просить помощи у мастеров. Но ведь это странно, вы не находите, они должны выводиться и без вызова плейсхолдера [[+id]] пред ними, также как и состояние ресурса… Я на грани сумашествия, друзья, не могу спать уже, какая-то мистика с моим модэксом творится! Помогите, пожалуйста, разобраться в этой «чёрной магии»?
Пашок
25 октября 2013, 05:26
modx.pro
867
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0