Skip to content

Commit

Permalink
Dev: Recreated create new survey.
Browse files Browse the repository at this point in the history
Did a Wizard like styling. Not final but working solution. Still to be redesigned.
  • Loading branch information
lacrioque committed Jul 4, 2017
1 parent d1512dc commit 9f65a68
Show file tree
Hide file tree
Showing 14 changed files with 611 additions and 661 deletions.
3 changes: 3 additions & 0 deletions application/config/packages.php
Expand Up @@ -112,6 +112,9 @@
'position' =>CClientScript::POS_END,
'js' => array(
'lsadminpanel.js'
),
'css' => array(
'lsadminpanel.css'
)
)

Expand Down
93 changes: 61 additions & 32 deletions application/controllers/admin/surveyadmin.php
Expand Up @@ -146,11 +146,17 @@ public function newsurvey()

$aViewUrls['output'] = PrepareEditorScript(false, $this->getController());
$aData = $this->_generalTabNewSurvey();
$aData = array_merge($aData, $this->_getGeneralTemplateData(0));
$aData['esrow'] = $esrow;
$aData = array_merge($aData, $this->_tabPresentationNavigation($esrow));
$aData = array_merge($aData, $this->_tabPublicationAccess($esrow));
$aData = array_merge($aData, $this->_tabNotificationDataManagement($esrow));
$aData = array_merge($aData, $this->_tabTokens($esrow));

//Prepare the edition panes

$aData['edittextdata'] = array_merge($aData, $this->_getTextEditData(0,$esrow));
$aData['generalsettingsdata'] = array_merge($aData, $this->_generalTabEditSurvey(0,$esrow));
$aData['presentationsettingsdata'] = array_merge($aData, $this->_tabPresentationNavigation(0,$esrow));
$aData['publicationsettingsdata'] = array_merge($aData, $this->_tabPublicationAccess(0,$esrow));
$aData['notificationsettingsdata'] = array_merge($aData, $this->_tabNotificationDataManagement(0,$esrow));
$aData['tokensettingsdata'] = array_merge($aData, $this->_tabTokens(0,$esrow));

$aViewUrls[] = 'newSurvey_view';

Expand Down Expand Up @@ -1100,7 +1106,7 @@ public function editlocalsettings($iSurveyID)
// this one is created to get the right default texts fo each language
Yii::app()->loadHelper('database');
Yii::app()->loadHelper('surveytranslator');

$esrow = SurveyLanguageSetting::model()->findByPk(array('surveyls_survey_id' => $iSurveyID, 'surveyls_language' => $sLang))->getAttributes();
$aTabTitles[$sLang] = getLanguageNameFromCode($esrow['surveyls_language'], false);

Expand Down Expand Up @@ -1606,39 +1612,60 @@ private function _getGeneralTemplateData($iSurveyID){

private function _getTextEditData($iSurveyID, $esrow){
Yii::app()->loadHelper("admin/htmleditor");
$aTabTitles = $aTabContents= array();
$grplangs = Survey::model()->findByPk($iSurveyID)->additionalLanguages;
$baselang = Survey::model()->findByPk($iSurveyID)->language;
array_unshift($grplangs, $baselang);

$aData = $aTabTitles = $aTabContents = array();

$aData['scripts'] = PrepareEditorScript(false, $this->getController());
foreach ($grplangs as $i => $sLang)
{
$aLanguageData = $this->_getGeneralTemplateData($iSurveyID);

if($iSurveyID !== 0){
$grplangs = Survey::model()->findByPk($iSurveyID)->additionalLanguages;
$baselang = Survey::model()->findByPk($iSurveyID)->language;
array_unshift($grplangs, $baselang);

// this one is created to get the right default texts fo each language
Yii::app()->loadHelper('database');
Yii::app()->loadHelper('surveytranslator');
foreach ($grplangs as $i => $sLang)
{
$aLanguageData = $this->_getGeneralTemplateData($iSurveyID);
// this one is created to get the right default texts fo each language
Yii::app()->loadHelper('database');
Yii::app()->loadHelper('surveytranslator');

$aSurveyLanguageSettings = SurveyLanguageSetting::model()->findByPk(array('surveyls_survey_id' => $iSurveyID, 'surveyls_language' => $sLang))->getAttributes();

$aSurveyLanguageSettings = SurveyLanguageSetting::model()->findByPk(array('surveyls_survey_id' => $iSurveyID, 'surveyls_language' => $sLang))->getAttributes();
$aTabTitles[$sLang] = getLanguageNameFromCode($aSurveyLanguageSettings['surveyls_language'], false);
$aTabTitles[$sLang] = getLanguageNameFromCode($aSurveyLanguageSettings['surveyls_language'], false);

if ($aSurveyLanguageSettings['surveyls_language'] == Survey::model()->findByPk($iSurveyID)->language)
{
$aTabTitles[$sLang] .= ' (' . gT("Base language") . ')';
}
if ($aSurveyLanguageSettings['surveyls_language'] == Survey::model()->findByPk($iSurveyID)->language)
{
$aTabTitles[$sLang] .= ' (' . gT("Base language") . ')';
}

$aLanguageData['aSurveyLanguageSettings'] = $aSurveyLanguageSettings;
$aLanguageData['action'] = "surveygeneralsettings";
$aLanguageData['i'] = $i;
$aLanguageData['dateformatdetails'] = getDateFormatData(Yii::app()->session['dateformat']);
$aTabContents[$sLang] = $this->getController()->renderPartial('/admin/survey/editLocalSettings_view', $aLanguageData, true);
$aLanguageData['aSurveyLanguageSettings'] = $aSurveyLanguageSettings;
$aLanguageData['action'] = "surveygeneralsettings";
$aLanguageData['i'] = $i;
$aLanguageData['dateformatdetails'] = getDateFormatData(Yii::app()->session['dateformat']);
$aTabContents[$sLang] = $this->getController()->renderPartial('/admin/survey/editLocalSettings_view', $aLanguageData, true);
}
} else {

$baseLang = Yii::app()->session['adminlang'];
$aTabTitles[$baseLang] = getLanguageNameFromCode($baseLang,false).' (' . gT("Base language") . ')';
$aLanguageData['aSurveyLanguageSettings'] = [
'surveyls_language' => $baseLang,
'surveyls_title' => '',
'surveyls_description' => '',
'surveyls_url' => '',
'surveyls_urldescription' => '',
'surveyls_numberformat' => '',
'surveyls_welcometext' => '',
'surveyls_endtext' => '',
'surveyls_dateformat' => Yii::app()->session['dateformat'],
];
$aLanguageData['surveyid'] = 0;

$aTabContents = $aLanguageData;
}

$aData['aTabContents'] = $aTabContents;
$aData['aTabTitles'] = $aTabTitles;
return $aData;

}

/**
Expand Down Expand Up @@ -1915,7 +1942,7 @@ function insert($iSurveyID=null)
if (Yii::app()->request->getPost('surveyls_title')=='')
{
Yii::app()->session['flashmessage'] = gT("Survey could not be created because it did not have a title");
redirect($this->getController()->createUrl('admin'));
$this->getController()->redirect($this->getController()->createUrl('admin'));
return;
}

Expand Down Expand Up @@ -1962,7 +1989,7 @@ function insert($iSurveyID=null)
'faxto' => App()->request->getPost('faxto'),
'format' => App()->request->getPost('format'),
'savetimings' => App()->request->getPost('savetimings')=='1'?'Y':'N',
'language' => App()->request->getPost('language'),
'language' => App()->request->getPost('language', Yii::app()->session['adminlang']),
'datestamp' => App()->request->getPost('datestamp')=='1'?'Y':'N',
'ipaddr' => App()->request->getPost('ipaddr')=='1'?'Y':'N',
'refurl' => App()->request->getPost('refurl')=='1'?'Y':'N',
Expand Down Expand Up @@ -1994,6 +2021,7 @@ function insert($iSurveyID=null)
'emailresponseto' => App()->request->getPost('emailresponseto'),
'tokenlength' => $iTokenLength,
);
//var_dump($aInsertData);

$warning = '';
// make sure we only update emails if they are valid
Expand All @@ -2018,9 +2046,10 @@ function insert($iSurveyID=null)
}

$iNewSurveyid = Survey::model()->insertNewSurvey($aInsertData);
if (!$iNewSurveyid)
if (!$iNewSurveyid){
die('Survey could not be created.');

App()->end();
}
// Prepare locale data for surveys_language_settings table
$sTitle = Yii::app()->request->getPost('surveyls_title');
$sDescription = Yii::app()->request->getPost('description');
Expand Down
55 changes: 32 additions & 23 deletions application/views/admin/survey/editLocalSettings_view.php
Expand Up @@ -17,7 +17,7 @@
<div id="edittxtele-<?php echo $i;?>" class="tab-pane fade in <?php if($i==0){echo "active";}?> center-box">
<div class="container-fluid">
<div class="row">
<div class="col-sm-12 col-md-6">
<div class="col-sm-6">
<!-- Survey title -->
<div class="form-group">
<label class="col-sm-2 question-group-title control-label" for="short_title_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>">
Expand All @@ -27,7 +27,11 @@
<?php echo CHtml::textField("short_title_{$aSurveyLanguageSettings['surveyls_language']}",$aSurveyLanguageSettings['surveyls_title'],array('class'=>'form-control','size'=>"80",'id'=>"short_title_{$aSurveyLanguageSettings['surveyls_language']}")); ?>
</div>
</div>

</div>
<hr class="col-sm-12"></hr>
</div>
<div class="row">
<div class="col-sm-12 col-md-6">
<!-- Description -->
<div class="form-group">
<label class="col-sm-2 control-label" for="description_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>"><?php eT("Description:"); ?></label>
Expand All @@ -38,29 +42,8 @@
</div>
</div>
</div>

<!-- Welcome message -->
<div class="form-group">
<label class="col-sm-2 control-label" for='welcome_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>'><?php eT("Welcome message:"); ?></label>
<div class="col-sm-9">
<div class="htmleditor input-group">
<?php echo CHtml::textArea("welcome_{$aSurveyLanguageSettings['surveyls_language']}",$aSurveyLanguageSettings['surveyls_welcometext'],array('class'=>'form-control','cols'=>'80','rows'=>'15','id'=>"welcome_{$aSurveyLanguageSettings['surveyls_language']}")); ?>
<?php echo getEditor("survey-welc","welcome_".$aSurveyLanguageSettings['surveyls_language'], "[".gT("Welcome:", "js")."](".$aSurveyLanguageSettings['surveyls_language'].")",$surveyid,'','',$action); ?>
</div>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6">
<!-- End message -->
<div class="form-group">
<label class="col-sm-2 control-label" for='endtext_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>'><?php eT("End message:"); ?></label>
<div class="col-sm-9">
<div class="htmleditor input-group">
<?php echo CHtml::textArea("endtext_{$aSurveyLanguageSettings['surveyls_language']}",$aSurveyLanguageSettings['surveyls_endtext'],array('class'=>'form-control','cols'=>'80','rows'=>'15','id'=>"endtext_{$aSurveyLanguageSettings['surveyls_language']}")); ?>
<?php echo getEditor("survey-endtext","endtext_".$aSurveyLanguageSettings['surveyls_language'], "[".gT("End message:", "js")."](".$aSurveyLanguageSettings['surveyls_language'].")",$surveyid,'','',$action); ?>
</div>
</div>
</div>
<!-- End URL -->
<div class="form-group">
<label class="control-label col-sm-2"><?php eT("End URL:"); ?></label>
Expand Down Expand Up @@ -117,5 +100,31 @@
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12 col-md-6">
<!-- Welcome message -->
<div class="form-group">
<label class="col-sm-2 control-label" for='welcome_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>'><?php eT("Welcome message:"); ?></label>
<div class="col-sm-9">
<div class="htmleditor input-group">
<?php echo CHtml::textArea("welcome_{$aSurveyLanguageSettings['surveyls_language']}",$aSurveyLanguageSettings['surveyls_welcometext'],array('class'=>'form-control','cols'=>'80','rows'=>'15','id'=>"welcome_{$aSurveyLanguageSettings['surveyls_language']}")); ?>
<?php echo getEditor("survey-welc","welcome_".$aSurveyLanguageSettings['surveyls_language'], "[".gT("Welcome:", "js")."](".$aSurveyLanguageSettings['surveyls_language'].")",$surveyid,'','',$action); ?>
</div>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6">
<!-- End message -->
<div class="form-group">
<label class="col-sm-2 control-label" for='endtext_<?php echo $aSurveyLanguageSettings['surveyls_language']; ?>'><?php eT("End message:"); ?></label>
<div class="col-sm-9">
<div class="htmleditor input-group">
<?php echo CHtml::textArea("endtext_{$aSurveyLanguageSettings['surveyls_language']}",$aSurveyLanguageSettings['surveyls_endtext'],array('class'=>'form-control','cols'=>'80','rows'=>'15','id'=>"endtext_{$aSurveyLanguageSettings['surveyls_language']}")); ?>
<?php echo getEditor("survey-endtext","endtext_".$aSurveyLanguageSettings['surveyls_language'], "[".gT("End message:", "js")."](".$aSurveyLanguageSettings['surveyls_language'].")",$surveyid,'','',$action); ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

0 comments on commit 9f65a68

Please sign in to comment.