-->

Menambahkan widget ke dalam widget di yii


Pada kesempatan ini ane ingin memberikan sedikit penjelasan bagaimana kita dapat menambahkan widget di dalam widget di yii framework

Oke langsung kita lihat bagaimana kita bisa membuat widget di yii dengan konsep sebagai berikut :

  $this->widget('ext.xxx.yyy',array(...)); 
Fungsi widget ini nantinya sudah mengeksekusi dalam bentuk string yang telah di echo dalam yii framework. Padahal di dalam widget yang kita inginkan kita ingin memberikan kembalian berupa string value.
Oleh karena itu kita akan membuat dengan bantuan fungsi dari ob_start().  dimana kita dapat menyimpan hasilnya ke dalam sebuah variabel terlebih dahulu.


Pada kesempatan kali ini ane ingin memberikan contoh untuk memberikan bagaimana kita dapat membuat cjuislider di dalam cdetaillistview..



Langsung saja contoh kodingnya adalah sebagai berikut :


<?php
//Simpan hasilnya dalam bentuk variabel dulu di dalam variabel $spoiler
ob_start();
$this->widget('zii.widgets.jui.CJuiSliderInput', array(
    'name'=>'my_slider',
    'value'=>0,
    'event'=>'change',
    'options'=>array(
        'min'=>0,
        'max'=>100,
        'slide'=>'js:function(event,ui){$("#amount").text(ui.value);}',
),
    'htmlOptions'=>array(
        'style'=>'width:200px; float:left;'
),
));
echo '<div id="amount"></div>';
$slider=ob_get_contents();
ob_end_clean();

?>
<?php $this->widget('zii.widgets.CDetailView', array(
 'data'=>$model,
 'id'=>'hor-minimalist-b',
 'attributes'=>array(
  'project_id',
  'title',
  array(
         'label'=>'Project proposal',
         'type'=>'raw',
         'value'=>empty($model->project_proposal)?"":CHtml::link($model->project_proposal,Yii::app()->homeUrl.'/../upload/'.$model->project_proposal),
  ),
  array(
         'label'=>'Progress',
         'type'=>'raw',
         'value'=>$slider,//ini kode yang didapatkan dari atas
  ),
  'start_time_actual',
  'end_time_actual',
//   'id_FK',
  'scope_name'
 ),
));
?>

Oke itulah sekedar solusi sederhana yang dapat digunakan untuk mengakali bagaimana kita dapat memasukkan widget ke dalam widget lainnya
Facebook Comments

0 komentar