تالار گفتمان nCIS.ir

نسخه‌ی کامل: مشکل در کار با چک باکس های گروهی
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
درود
من یک مشکلی در کار با چک باکس های گروهی دارم که زمان ویرایش نمی تونم چکدشون کنم..
این کد تولید چک باکس :
 <div class="col-md-8">
<?php

$roles=$model->getAllRoles();

foreach($roles as $k=>$v) :

?>
<div class="panel panel-default">
 <div class="panel-heading">
<h3 class="panel-title"><?= $k  ?></h3>
 </div>
 <div class="panel-body">
<?php

print_r($v);
exit;

foreach($v as $item)
echo Html::checkBoxList("items[{$item['name']}]",$item['checked'],['label'=>$item['label']]);
// echo Html::checkBoxList("items[{$item['name']}]",$model->getSelectedPermissions(),['label'=>$item['label']]);
// echo Html::checkBoxList("name",['name',],['label'=>'salam']);
?>
 </div>
</div>

<?php endforeach; ?>
<?php ActiveForm::end(); ?>
</div>
این هم کد تولید چک باکس در مدل:
 public function allRoles()
{
return [
'post'=>[
['name'=>'view_post','checked'=>0,'label'=>'View Post'],
['name'=>'add_post','checked'=>0,'label'=>'Add Post'],
['name'=>'delete_post','checked'=>0,'label'=>'Delete Post'],
['name'=>'update_post','checked'=>0,'label'=>'Update Post'],
], 
'category'=>[
['name'=>'view_category','checked'=>0,'label'=>'View Category'],
['name'=>'add_category','checked'=>0,'label'=>'Add Category'],
['name'=>'delete_category','checked'=>0,'label'=>'Delete Category'],
['name'=>'update_category','checked'=>0,'label'=>'Update Category'],
], 
'comment'=>[
['name'=>'view_comment','checked'=>0,'label'=>'View Comment'],
['name'=>'add_comment','checked'=>0,'label'=>'Add Comment'],
['name'=>'delete_comment','checked'=>0,'label'=>'Delete Comment'],
['name'=>'update_comment','checked'=>0,'label'=>'Update Comment'],
], 
'user'=>[
['name'=>'view_user','checked'=>0,'label'=>'View User'],
['name'=>'add_user','checked'=>0,'label'=>'Add User'],
['name'=>'delete_user','checked'=>0,'label'=>'Delete User'],
['name'=>'update_user','checked'=>0,'label'=>'Update User'],
],
];
}

public function getAllRoles()
{
$roles=$this->allRoles();

$sql="select * from `auth_item_child` where `parent`='{$this->name}'";
$items=yii::$app->db->createCommand($sql)->queryAll();


foreach($roles as $k1=>$v1)
{
foreach($v1 as $k2=>$v2)
{
foreach($items as $ik=>$iv)
{
if($iv['parent']==$this->name && $v2['name']==$iv['child'])
{
$roles[$k1][$k2]['checked']=1;
}
}
}
}


return $roles;
} 
پارامتر دوم ایجاد چک باکس ها رو باید به چه صورتی وارد کنیم تا چک باکس های ساخته شده در زمان ساخت چکد شوند...؟
باتشکر