Пример #1
0
 public function showMainFilePerm()
 {
     // the primary key of the row that was clicked is available in the 'item' url parameter.
     $pk = $_GET['item'];
     $mf = ManagedfileQuery::create()->findPk($pk);
     $form = new Curry_Form(array('action' => url('', $_GET), 'method' => 'post', 'elements' => array('oread' => array('checkbox', array('label' => 'Read', 'value' => $mf->getReadPerm('owner'))), 'owrite' => array('checkbox', array('label' => 'Write', 'value' => $mf->getWritePerm('owner'))), 'rread' => array('checkbox', array('label' => 'Read', 'value' => $mf->getReadPerm('role'))), 'rwrite' => array('checkbox', array('label' => 'Write', 'value' => $mf->getWritePerm('role'))), 'wread' => array('checkbox', array('label' => 'Read', 'value' => $mf->getReadPerm('world'))), 'wwrite' => array('checkbox', array('label' => 'Write', 'value' => $mf->getWritePerm('world'))))));
     $form->addDisplayGroup(array('oread', 'owrite'), 'grpOwner', array('legend' => 'Owner permissions'));
     $form->addDisplayGroup(array('rread', 'rwrite'), 'grpRole', array('legend' => 'Role permissions'));
     $form->addDisplayGroup(array('wread', 'wwrite'), 'grpWorld', array('legend' => 'World permissions'));
     $form->addElement('submit', 'save', array('label' => 'Update permisisons'));
     if (isPost() && $form->isValid($_POST)) {
         $values = $form->getValues();
         $operm = array('read' => (bool) $values['oread'], 'write' => (bool) $values['owrite']);
         $rperm = array('read' => (bool) $values['rread'], 'write' => (bool) $values['rwrite']);
         $wperm = array('read' => (bool) $values['wread'], 'write' => (bool) $values['wwrite']);
         $mf->setPermission(Managedfile::getPermissionWord($operm, $rperm, $wperm))->save();
         $this->createModelUpdateEvent('Managedfile', $mf->getPrimaryKey(), 'update');
         return '';
     }
     $this->addMainContent($form);
 }