function showMoveVariableRes() { /* update last page */ $_SESSION['LASTPAGE'] = substr($_SESSION['LASTPAGE'], 0, strripos($_SESSION['LASTPAGE'], "res")); $displaySysAdmin = new DisplaySysAdmin(); $survey = new Survey($_SESSION['SUID']); $vsid = getFromSessionParams('vsid'); if ($vsid != '') { //move $variable = $survey->getVariableDescriptive($vsid); // determine survey $suid = $_SESSION['SUID']; if (isset($_POST['suid'])) { $suid = loadvar('suid'); } /* actually moved */ if ($suid != $_SESSION['SUID'] || $_SESSION['SEID'] != loadvar("section")) { $variable->move($suid, loadvar('section')); /* if moved survey, then need to recompile old and new survey */ if ($suid != $_SESSION['SUID']) { /* compile old survey if no copy made */ $compiler = new Compiler($_SESSION['SUID'], getSurveyVersion($survey)); $mess = $compiler->generateVariableDescriptives(array($variable), true); $mess = $compiler->generateSetFills(array($variable), true); //$mess = $compiler->generateGetFills(array($variable), true); //$mess = $compiler->generateInlineFields(array($variable), true); /* update survey in session */ $_SESSION['SUID'] = $suid; /* compile other survey */ $compiler = new Compiler($_SESSION['SUID'], getSurveyVersion($survey)); $mess = $compiler->generateVariableDescriptives(array($variable)); $mess = $compiler->generateSetFills(array($variable)); $mess = $compiler->generateGetFills(array($variable)); $mess = $compiler->generateInlineFields(array($variable)); } else { if ($_SESSION['SEID'] != loadvar("section")) { $compiler = new Compiler($_SESSION['SUID'], getSurveyVersion($survey)); $mess = $compiler->generateVariableDescriptives(array($variable)); } } /* update section in session */ $_SESSION['SEID'] = loadvar("section"); $_SESSION['VSID'] = $variable->getVsid(); // show variable again return $displaySysAdmin->showEditVariable($variable->getVsid(), $displaySysAdmin->displaySuccess(Language::messageVariableMoved($variable->getName()))); } else { return $displaySysAdmin->showSection($_SESSION['SEID'], $displaySysAdmin->displayWarning(Language::messageVariableNotMoved($variable->getName()))); } } else { return $displaySysAdmin->showSection($_SESSION['SEID']); } }