public function executeShow(sfWebRequest $request) { $this->role = RolePeer::retrieveByPk($request->getParameter('id')); $this->forward404Unless($this->role); # get all rights $permissions = PermissionPeer::getForSelect(); # get assigned rights $rp_list = RolePermissionPeer::getByRoleId($this->role->getId()); $assoc_perms = array(); foreach ($rp_list as $rp) { $assoc_perms[] = $rp->getPermissionId(); } $this->assoc_perms = $assoc_perms; # prepare widget $this->widget = new sfWidgetFormSelectDoubleList(array('choices' => $permissions, 'label_unassociated' => 'Full List', 'label_associated' => 'Rights Assigned to Role', 'class' => 'security', 'associate' => 'lt;', 'unassociate' => 'gt;', 'unassociate_class' => 'btn-left', 'template' => <<<EOF <div class="%class%" style="padding-top: 0px;"> <div class="holder"> <h4>%label_unassociated%</h4> %unassociated% </div> <ul class="btn-switch"> <li>%associate%</li> <li>%unassociate%</li> </ul> <div class="holder"> <h4>%label_associated%</h4> %associated% </div> <br style="clear: both" /> <script type="text/javascript"> sfDoubleList.init(document.getElementById('%id%'), '%class_select%'); </script> </div> EOF )); }