Page 1 of 1
Вставка {FormBuilder form='change_ticket_condition'} в UDT
Posted: Tue Jul 02, 2013 8:29 am
by seregarem
Подскажите, как в UDT добавить вызов FormBuilder?
Code: Select all
$gCms=cmsms();
$db=&$gCms->GetDb();
$query= <запрос>;
$res=$db->Execute($query);
echo '<table class="css3_table" cellspacing="0" cellpadding="0"><tbody>';
while ($res && $row=$res->FetchRow()){
echo '<tr>';
echo '<td>'.$row["claim"].'</td>';
echo '<td>'.$row["total_price"].'</td>';
echo '<td>'.$row["dt_added"].'</td>';
echo '<td>'.$row["dt_viewed"].'</td>';
echo "<td>".{FormBuilder form='change_ticket_condition'}."</td>";
echo '</tr>';
}
echo '</tbody></table>';
Либо, как в action у формы вызвать UDT?
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 9:16 am
by guro
seregarem wrote:Подскажите, как в UDT добавить вызов FormBuilder?
http://docs.cmsmadesimple.org/tags/user ... t#call-gcbseregarem wrote:Либо, как в action у формы вызвать UDT?
Уточните. Не до конца понял идею.
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 9:46 am
by Rolf
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 11:16 am
by seregarem
guro, ссылка помогла. спасибо!
guro wrote:Уточните. Не до конца понял идею.
Я имею в виду, чтобы вместо script.php
Code: Select all
<form action="script.php" method="post">
исполнялся бы UDT, например, типа такого
Code: Select all
<form action="{get_vals}" method="post">
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 12:59 pm
by guro
Ага. Понятно. Только зачем вам это надо? Расскажите что хотите добиться и, возможно, мы предложим более правильный способ.
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 1:09 pm
by seregarem
Есть список заявок, которые просматривает пользователь на определенной странице сайта (не в админ-панели). Необходимо сделать у каждой заявки кнопку перевода в другое состояние, т.е. при клике на пункт выпадающего списка надо желательно с помощью ajax-скрипта изменить состояние каждой заявки. Вот форма списка заявок:
Code: Select all
$gCms=cmsms();
$db=&$gCms->GetDb();
$query= <запрос>;
$res=$db->Execute($query);
echo '<table class="css3_table" cellspacing="0" cellpadding="0"><tbody>';
while ($res && $row=$res->FetchRow()){
echo '<tr>';
echo '<td>'.$row["claim"].'</td>';
echo '<td>'.$row["total_price"].'</td>';
echo '<td>'.$row["dt_added"].'</td>';
echo '<td>'.$row["dt_viewed"].'</td>';
echo "<td>Тут вставляю форму FormBuilder со список состояний</td>";
echo '</tr>';
}
echo '</tbody></table>';
В принципе, можно реализовать через ajax и php-файлы, но хотелось бы использовать существующие модули, если, конечно, такие есть.
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 1:58 pm
by guro
В вашей ситуации я бы сделал так.
1. В FormBuilder создаем поле "Выпадающий список" со статусами;
2. На закладке "Дополнительные настройки" у этого поля в textarea "Javascript для поля:" вставляем
3. Создаем поле "*Вызвать тег пользователя с результатами формы в качестве параметров";
4. В параметре "Тег пользователя:" указываем тег, который будет менять статус в БД.
Это конечно без ajax, но зато легко реализуемо.
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 3:31 pm
by seregarem
Да, такой вариант приходил мне в голову. А с ajax можно как-то при помощи модулей реализовать?
Re: Вставка {FormBuilder form='change_ticket_condition'} в U
Posted: Tue Jul 02, 2013 6:40 pm
by guro
Я на стандартных модулях ajax не использовал.