woodrat
Новичок
У меня есть CGridView, из полей которого генерируется PDF-файл. В этом CGridView есть колонка с чекбоксами. Сейчас для генерации pdf берется только первая строка грида. Как сделать чтобы генерило файл только с полями, отмеченными чекбоксами?
Вот мой view файл с GridView:
А вот мой экшн:
Очень нужна помощь. Буду очень признателен.
Вот мой view файл с GridView:
PHP:
<?php
$this->menu=array(
array('label'=>'Добавить запись', 'url'=>array('create')),
);
Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
$('.search-form').toggle();
return false;
});
$('.search-form form').submit(function(){
$('#mednotes-grid').yiiGridView('update', {
data: $(this).serialize()
});
return false;
});
");
?>
<h1>Журнал</h1>
<?php echo CHtml::link('Расширеный поиск','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
'model'=>$model,
)); ?>
</div><!-- search-form -->
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'mednotes-grid',
'selectableRows'=>2,
'dataProvider'=>$model->search(),
'filter'=>$model,
//'afterAjaxUpdate' => 'reinstallDatePicker',
'columns'=>array(
'id',
array(
'class'=> 'CCheckBoxColumn',
'id'=> 'user_id'
),
'user_id' => array(
'name' => 'user_id',
'value' => '$data->user->name . " " . $data->user->fname . " " .$data->user->lastname',
'filter' => User::all(),
),
'deps_id' => array(
'name' => 'deps_id',
'value' => '$data->deps->department',
'filter' => Deps::all(),
),
'staff_id' => array(
'name' => 'staff_id',
'value' => '$data->staff->firstname . " " . $data->staff->fathername . " " .$data->staff->lastname',
'filter' => Staff::all(),
),
'meetdate' => array(
'name' => 'meetdate',
'value'=>'date("d-m-Y",strtotime($data->meetdate))',
),
'meettime',
'office_num',
array(
'class'=>'CButtonColumn',
),
),
)); ?>
<?php
echo CHtml::form();
echo CHtml::link('Создать PDF', array('mednotes/createpdf'));
?>
<?php
echo CHtml::endForm();
?>
PHP:
public function actionCreatePdf()
{
$model=Mednotes::model()->find();
$pdf = Yii::createComponent('application.extensions.tcpdf.ETcPdf', 'L', 'cm', 'A5', true, 'UTF-8');
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor("Nicola Asuni");
$pdf->SetTitle("PDF Document");
$pdf->SetSubject("TCPDF Tutorial");
$pdf->SetKeywords("TCPDF, PDF, example, test, guide");
$pdf->setPrintHeader(true);
$pdf->setPrintFooter(false);
$pdf->AddPage();
$pdf->SetFont('dejavusans', " ", 17);
$tbl = "DOCUMENT" . "<br><br>"; //. date('d.m.Y', time()) . "<br><br>";
$tbl .= '<tbody> <li><b>User</b>:';
$tbl .= "{$model->user->fullname}";
$tbl .= '</li>';
$tbl .= '<p>';
$tbl .= '<tbody> <li><b>Department</b>:';
$tbl .= "{$model->deps->department}";
$tbl .= '</li>';
$tbl .= '<p>';
$tbl .= '<tbody> <li><b>Doc</b>:';
$tbl .= "{$model->staff->fullname}";
$tbl .= '</li>';
$tbl .= '<p>';
$tbl .= '<tbody> <li><b>Date</b>:';
$tbl .= "{$model->meetdate}";
$tbl .= '</li>';
$tbl .= '<p>';
$tbl .= '<tbody> <li><b>Time</b>:';
$tbl .= "{$model->meettime}";
$tbl .= '</li>';
$tbl .= '<p>';
$tbl .= '<tbody> <li><b>Кабинет</b>:';
$tbl .= "{$model->office_num}";
$tbl .= '</li>';
$tbl .='</tbody>';
$pdf->writeHTML($tbl, true, true, false, false, '');
$pdf->Output("example_002.pdf", "I");
}