/**
  * Edit a Test Center instance
  * @return void
  */
 public function editCenter()
 {
     $clazz = $this->getCurrentClass();
     $testCenter = $this->getCurrentInstance();
     $formContainer = new \tao_actions_form_Instance($clazz, $testCenter);
     $myForm = $formContainer->getForm();
     if ($myForm->isSubmited()) {
         if ($myForm->isValid()) {
             $binder = new \tao_models_classes_dataBinding_GenerisFormDataBinder($testCenter);
             $testCenter = $binder->bind($myForm->getValues());
             $this->setData("selectNode", \tao_helpers_Uri::encode($testCenter->getUri()));
             $this->setData('message', $this->convert('Test center saved'));
             $this->setData('reload', true);
         }
     }
     $childrenProperty = new \core_kernel_classes_Property(TestCenterService::PROPERTY_CHILDREN_URI);
     $childrenForm = \tao_helpers_form_GenerisTreeForm::buildTree($testCenter, $childrenProperty);
     $childrenForm->setHiddenNodes(array($testCenter->getUri()));
     $childrenForm->setTitle($this->convert('Define sub-centers'));
     $this->setData('childrenForm', $childrenForm->render());
     $administratorProperty = new \core_kernel_classes_Property(TestCenterService::PROPERTY_ADMINISTRATOR_URI);
     $administratorForm = \tao_helpers_form_GenerisTreeForm::buildReverseTree($testCenter, $administratorProperty);
     $administratorForm->setData('title', $this->convert('Assign administrator'));
     $this->setData('administratorForm', $administratorForm->render());
     $proctorProperty = new \core_kernel_classes_Property(ProctorManagementService::PROPERTY_ASSIGNED_PROCTOR_URI);
     $proctorForm = \tao_helpers_form_GenerisTreeForm::buildReverseTree($testCenter, $proctorProperty);
     $proctorForm->setData('title', $this->convert('Assign proctors'));
     $this->setData('proctorForm', $proctorForm->render());
     $this->setData('formTitle', $this->convert('Edit test center'));
     $this->setData('testCenter', $testCenter->getUri());
     $this->setData('myForm', $myForm->render());
     $this->setView('form_test_center.tpl');
 }
 /**
  * Edit a Test Center instance
  * @return void
  */
 public function editCenter()
 {
     $clazz = $this->getCurrentClass();
     $testcenter = $this->getCurrentInstance();
     $formContainer = new \tao_actions_form_Instance($clazz, $testcenter);
     $myForm = $formContainer->getForm();
     if ($myForm->isSubmited()) {
         if ($myForm->isValid()) {
             $binder = new \tao_models_classes_dataBinding_GenerisFormDataBinder($testcenter);
             $testcenter = $binder->bind($myForm->getValues());
             $this->setData("selectNode", \tao_helpers_Uri::encode($testcenter->getUri()));
             $this->setData('message', __('Test center saved'));
             $this->setData('reload', true);
         }
     }
     $memberProperty = new \core_kernel_classes_Property(TestCenterService::PROPERTY_MEMBERS_URI);
     $memberForm = \tao_helpers_form_GenerisTreeForm::buildReverseTree($testcenter, $memberProperty);
     $memberForm->setData('title', __('Select test takers for the test center'));
     $this->setData('memberForm', $memberForm->render());
     $groupProperty = new \core_kernel_classes_Property(TestCenterService::PROPERTY_DELIVERY_URI);
     $groupForm = \tao_helpers_form_GenerisTreeForm::buildTree($testcenter, $groupProperty);
     $groupForm->setData('title', __('Select deliveries available at the test center'));
     $this->setData('groupForm', $groupForm->render());
     $proctorProperty = new \core_kernel_classes_Property(TestCenterService::PROPERTY_PROCTORS_URI);
     $proctorForm = \tao_helpers_form_GenerisTreeForm::buildReverseTree($testcenter, $proctorProperty);
     $proctorForm->setData('title', __('Select proctors for the test center'));
     $this->setData('proctorForm', $proctorForm->render());
     $this->setData('formTitle', __('Edit test center'));
     $this->setData('myForm', $myForm->render());
     $this->setView('form_test_center.tpl');
 }
 /**
  * Render the tree to select the deliveries 
  * @return void
  */
 public function selectDeliveries()
 {
     //get the deliveries related to this delivery campaign
     $prop = new core_kernel_classes_Property(TAO_DELIVERY_CAMPAIGN_PROP);
     $tree = tao_helpers_form_GenerisTreeForm::buildReverseTree($this->getCurrentInstance(), $prop);
     $this->setData('tree', $tree->render());
     $this->setView('sas' . DIRECTORY_SEPARATOR . 'generisTreeSelect.tpl', 'tao');
 }
Пример #4
0
 public function assignUsers()
 {
     $role = $this->getCurrentInstance();
     $prop = new core_kernel_classes_Property(PROPERTY_USER_ROLES);
     $tree = tao_helpers_form_GenerisTreeForm::buildReverseTree($role, $prop);
     $tree->setData('title', __('Assign User to role'));
     $tree->setData('dataUrl', _url('getUsers'));
     $this->setData('userTree', $tree->render());
     $this->setView('roles/assignUsers.tpl');
 }
 /**
  * Edit a delivery instance
  *
  * @access public
  * @author CRP Henri Tudor - TAO Team - {@link http://www.tao.lu}
  * @return void
  */
 public function editDelivery()
 {
     $clazz = $this->getCurrentClass();
     $delivery = $this->getCurrentInstance();
     $formContainer = new taoDelivery_actions_form_Delivery($clazz, $delivery);
     $myForm = $formContainer->getForm();
     $myForm->evaluate();
     if ($myForm->isSubmited()) {
         if ($myForm->isValid()) {
             $propertyValues = $myForm->getValues();
             // then save the property values as usual
             $binder = new tao_models_classes_dataBinding_GenerisFormDataBinder($delivery);
             $delivery = $binder->bind($propertyValues);
             $this->setData("selectNode", tao_helpers_Uri::encode($delivery->getUri()));
             $this->setData('message', __('Delivery saved'));
             $this->setData('reload', true);
         }
     }
     $this->setData('label', $delivery->getLabel());
     // history
     $this->setData('date', taoDelivery_models_classes_DeliveryAssemblyService::singleton()->getCompilationDate($delivery));
     if (taoDelivery_models_classes_execution_ServiceProxy::singleton()->implementsMonitoring()) {
         $execs = taoDelivery_models_classes_execution_ServiceProxy::singleton()->getExecutionsByDelivery($delivery);
         $this->setData('exec', count($execs));
     }
     // define the groups related to the current delivery
     $property = new core_kernel_classes_Property(PROPERTY_GROUP_DELVIERY);
     $tree = tao_helpers_form_GenerisTreeForm::buildReverseTree($delivery, $property);
     $tree->setTitle(__('Assigned to'));
     $tree->setTemplate(Template::getTemplate('widgets/assignGroup.tpl'));
     $this->setData('groupTree', $tree->render());
     // testtaker brick
     $this->setData('assemblyUri', $delivery->getUri());
     // define the subjects excluded from the current delivery
     $property = new core_kernel_classes_Property(TAO_DELIVERY_EXCLUDEDSUBJECTS_PROP);
     $excluded = $delivery->getPropertyValues($property);
     $this->setData('ttexcluded', count($excluded));
     $users = taoDelivery_models_classes_AssignmentService::singleton()->getAssignedUsers($delivery);
     $assigned = array_diff(array_unique($users), $excluded);
     $this->setData('ttassigned', count($assigned));
     $this->setData('formTitle', __('Properties'));
     $this->setData('myForm', $myForm->render());
     if (common_ext_ExtensionsManager::singleton()->isEnabled('taoCampaign')) {
         $this->setData('campaign', taoCampaign_helpers_Campaign::renderCampaignTree($delivery));
     }
     $this->setView('Delivery/editDelivery.tpl');
 }
 /**
  * Edit a delviery instance
  * @return void
  */
 public function editCampaign()
 {
     $clazz = $this->getCurrentClass();
     $campaign = $this->getCurrentInstance();
     $formContainer = new tao_actions_form_Instance($clazz, $campaign);
     $myForm = $formContainer->getForm();
     if ($myForm->isSubmited()) {
         if ($myForm->isValid()) {
             $binder = new tao_models_classes_dataBinding_GenerisFormDataBinder($campaign);
             $campaign = $binder->bind($myForm->getValues());
             $this->setData("selectNode", tao_helpers_Uri::encode($campaign->getUri()));
             $this->setData('message', __('Campaign saved'));
             $this->setData('reload', true);
         }
     }
     //get the deliveries related to this delivery campaign
     $prop = new core_kernel_classes_Property(TAO_DELIVERY_CAMPAIGN_PROP);
     $tree = tao_helpers_form_GenerisTreeForm::buildReverseTree($campaign, $prop);
     $this->setData('deliveryTree', $tree->render());
     $this->setData('formTitle', __('Edit Campaign'));
     $this->setData('myForm', $myForm->render());
     $this->setView('form_campaign.tpl');
 }