/**
  * actionEvaMethods
  */
 public function actionEvaMethods()
 {
     Yii::log("actionEvaMethods called", "trace", self::LOG_CAT);
     $this->setPageTitle(Yii::app()->name . ' - Economic evaluation methods');
     $this->docName = 'evaMethods';
     if (isset($_POST['pageId'])) {
         SystemController::savePage('evaMethods');
     }
     $page = SystemController::getPageContent($this->docName);
     EconEvaMethods::model()->scenario = 'nolink';
     $dataProvider = new CActiveDataProvider('EconEvaMethods');
     //print_r($dataProvider->getData()); die;
     $this->render('evaMethods', ['dataProvider' => $dataProvider, 'page' => $page]);
 }
Beispiel #2
0
<?php

/* @var $this EvaQuestionGroupsController */
/* @var $model EvaQuestionGroups */
/* @var $form CActiveForm */
?>

<div class="form">

<?php 
$form = $this->beginWidget('CActiveForm', array('id' => 'eva-question-groups-form', 'enableAjaxValidation' => false));
$evaluationQuestions = CHtml::listData(EvaluationQuestion::model()->findAll('flag=:flag', [':flag' => 'final']), 'evalQuestionId', function ($question) {
    return $question->questionNumber . ' ' . $question->question;
});
$economicMethods = CHtml::listData(EconEvaMethods::model()->findAll(), 'id', 'buttonName');
?>

	<p class="note">Fields with <span class="required">*</span> are required.</p>

	<?php 
echo $form->errorSummary($model);
?>

	<div class="row">
		<?php 
echo $form->labelEx($model, 'method');
?>
		<?php 
echo $form->dropdownlist($model, 'method', $economicMethods, ['class' => 'chozen']);
?>
		<?php 
 /**
  * @param $id
  * @return void
  */
 public function actionUpdateEvaMethod($id)
 {
     Yii::log("actionUpdateEvaMethod called", "trace", self::LOG_CAT);
     $config = self::getEvaMethodsFormConfig();
     $buttonParam = ['name' => 'update', 'label' => 'Update'];
     $config['buttons'] = ContextController::getButtons($buttonParam, 'admin/listEvaMethods');
     EconEvaMethods::model()->scenario = 'nolink';
     $model = EconEvaMethods::model()->findByPk($id);
     if (is_null($model)) {
         Yii::app()->user->setFlash('notice', 'That economic evaluation method does not exist.');
         $this->redirect(['admineva/listEvaMethods']);
         return;
     }
     unset($config['buttons']['cancel']);
     $form = new CForm($config, $model);
     if ($form->submitted('update') && $form->validate()) {
         $model = $form->model;
         if ($model->save(false)) {
             Yii::app()->user->setFlash('success', 'Economic evaluation method updated successfully');
             $this->redirect(['admineva/listEvaMethods']);
         }
         Yii::app()->user->setFlash('error', 'An error occurred while updating, please try again or contact ' . 'your administrator if the problem persists');
     }
     $this->render('evaMethods/update', ['form' => $form]);
 }
Beispiel #4
0
	<?php 
$form = $this->beginWidget('CActiveForm', ['id' => 'economic-methods-form', 'enableClientValidation' => true, 'clientOptions' => ['validateOnSubmit' => true], 'enableAjaxValidation' => false]);
?>

	<p class="note">Fields with <span class="required">*</span> are required.</p>

	<?php 
echo $form->errorSummary($model, Yii::app()->params['headerErrorSummary'], Yii::app()->params['footerErrorSummary']);
?>
	<div class="row">
		<?php 
echo $form->labelEx($model, 'econMethod');
?>
		<?php 
echo $form->dropDownList($model, 'econMethod', CHtml::listData(EconEvaMethods::model()->findAll(), 'id', 'buttonName'), ['class' => 'chozen']);
?>
		<?php 
echo $form->error($model, 'econMethod');
?>
	</div>

	<div class="row">
		<?php 
echo $form->labelEx($model, 'name');
?>
		<?php 
echo $form->textField($model, 'name', ['size' => 30, 'maxlength' => 30]);
?>
		<?php 
echo $form->error($model, 'name');
 /**
  * @param $questions
  * @return array
  */
 private function getAssociationData($questions)
 {
     $questionArray = json_decode($questions, true);
     $econMethods = array_keys($questionArray);
     $methodQuestions = [];
     foreach ($questionArray as $questionGroup) {
         //print_r($questionArray); die;
         $methodQuestions = array_merge($methodQuestions, $questionGroup);
     }
     //print_r($methodQuestions); die;
     $questionCriteria = new CDbCriteria();
     $questionCriteria->addInCondition('evalQuestionId', $methodQuestions);
     $rsQuestions = EvaluationQuestion::model()->findAll($questionCriteria);
     $econMethodCriteria = new CDbCriteria();
     $econMethodCriteria->addInCondition('id', $econMethods);
     $rsEconMethod = EconEvaMethods::model()->findAll($econMethodCriteria);
     $associationData = [];
     foreach ($rsEconMethod as $methodKey => $method) {
         //print_r($questionArray);
         //print_r($method);
         $associationData[$methodKey]['methodName'] = $method->buttonName;
         $associationData[$methodKey]['methodId'] = $method->id;
         $associationData[$methodKey]['questions'] = '<ul>';
         foreach ($rsQuestions as $question) {
             if (isset(array_flip($questionArray[$method->id])[$question->evalQuestionId])) {
                 $associationData[$methodKey]['questions'] .= CHtml::tag('li', [], $question->questionNumber . ' ' . $question->question);
             }
         }
         $associationData[$methodKey]['questions'] .= '</ul>';
     }
     return $associationData;
 }