mirror of
https://github.com/ACSPRI/queXS
synced 2024-04-02 12:12:16 +00:00
Merging the Limesurvey 1.91+ branch of queXS in to the trunk
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
<?php
|
||||
/*
|
||||
* LimeSurvey
|
||||
* Copyright (C) 2007 The LimeSurvey Project Team / Carsten Schmitz
|
||||
* All rights reserved.
|
||||
* License: GNU/GPL License v2 or later, see LICENSE.php
|
||||
* LimeSurvey is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*
|
||||
* $Id: assessments.php 7428 2009-08-10 10:26:46Z c_schmitz $
|
||||
*/
|
||||
* LimeSurvey
|
||||
* Copyright (C) 2007 The LimeSurvey Project Team / Carsten Schmitz
|
||||
* All rights reserved.
|
||||
* License: GNU/GPL License v2 or later, see LICENSE.php
|
||||
* LimeSurvey is free software. This version may have been modified pursuant
|
||||
* to the GNU General Public License, and as distributed it includes or
|
||||
* is derivative of works licensed under the GNU General Public License or
|
||||
* other free or open source software licenses.
|
||||
* See COPYRIGHT.php for copyright notices and details.
|
||||
*
|
||||
* $Id: assessments.php 10925 2011-09-02 14:12:02Z c_schmitz $
|
||||
*/
|
||||
|
||||
|
||||
include_once("login_check.php");
|
||||
@@ -20,311 +20,302 @@ if (!isset($action)) {$action=returnglobal('action');}
|
||||
|
||||
$surveyinfo=getSurveyInfo($surveyid);
|
||||
|
||||
$js_adminheader_includes[]= $homeurl.'/scripts/assessments.js';
|
||||
$js_adminheader_includes[]= $rooturl.'/scripts/jquery/jquery-ui.js';
|
||||
$js_admin_includes[]= $homeurl.'/scripts/assessments.js';
|
||||
$js_admin_includes[]='../scripts/jquery/jquery.tablesorter.min.js';
|
||||
// . "<link rel=\"stylesheet\" type=\"text/css\" media=\"all\" href=\"styles/default/jquery-ui.css\" />\n";
|
||||
|
||||
|
||||
$actsurquery = "SELECT edit_survey_property FROM {$dbprefix}surveys_rights WHERE sid=$surveyid AND uid = ".$_SESSION['loginID']; //Getting rights for this survey
|
||||
$actsurresult = $connect->Execute($actsurquery) or safe_die($connect->ErrorMsg());
|
||||
$actsurrows = $actsurresult->FetchRow();
|
||||
|
||||
|
||||
$assessmentlangs = GetAdditionalLanguagesFromSurveyID($surveyid);
|
||||
$baselang = GetBaseLanguageFromSurveyID($surveyid);
|
||||
array_unshift($assessmentlangs,$baselang); // makes an array with ALL the languages supported by the survey -> $assessmentlangs
|
||||
array_unshift($assessmentlangs,$baselang); // makes an array with ALL the languages supported by the survey -> $assessmentlangs
|
||||
|
||||
if (!bHasSurveyPermission($surveyid, 'assessments','read'))
|
||||
{
|
||||
$action = "assessment";
|
||||
include("access_denied.php");
|
||||
include("admin.php");
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
if($_SESSION['USER_RIGHT_SUPERADMIN'] == 1 || $actsurrows['edit_survey_property']){
|
||||
|
||||
if ($action == "assessmentadd") {
|
||||
$inserttable=$dbprefix."assessments";
|
||||
$first=true;
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
if (!isset($_POST['gid'])) $_POST['gid']=0;
|
||||
|
||||
$datarray=array(
|
||||
'sid' => $surveyid,
|
||||
'scope' => $_POST['scope'],
|
||||
'gid' => $_POST['gid'],
|
||||
'minimum' => $_POST['minimum'],
|
||||
'maximum' => $_POST['maximum'],
|
||||
'name' => $_POST['name_'.$assessmentlang],
|
||||
'language' => $assessmentlang,
|
||||
'message' => $_POST['assessmentmessage_'.$assessmentlang]);
|
||||
|
||||
if ($first==false)
|
||||
{
|
||||
$datarray['id']=$aid;
|
||||
}
|
||||
|
||||
$query = $connect->GetInsertSQL($inserttable, $datarray, get_magic_quotes_gpc());
|
||||
$result=$connect->Execute($query) or safe_die("Error inserting<br />$query<br />".$connect->ErrorMsg());
|
||||
if ($first==true)
|
||||
{
|
||||
$first=false;
|
||||
$aid=$connect->Insert_ID(db_table_name_nq('assessments'),"id");
|
||||
}
|
||||
}
|
||||
} elseif ($action == "assessmentupdate") {
|
||||
|
||||
if ($filterxsshtml)
|
||||
{
|
||||
require_once("../classes/inputfilter/class.inputfilter_clean.php");
|
||||
$myFilter = new InputFilter('','',1,1,1);
|
||||
}
|
||||
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
|
||||
if (!isset($_POST['gid'])) $_POST['gid']=0;
|
||||
if ($filterxsshtml)
|
||||
{
|
||||
$_POST['name_'.$assessmentlang]=$myFilter->process($_POST['name_'.$assessmentlang]);
|
||||
$_POST['assessmentmessage_'.$assessmentlang]=$myFilter->process($_POST['assessmentmessage_'.$assessmentlang]);
|
||||
}
|
||||
$query = "UPDATE {$dbprefix}assessments
|
||||
SET scope='".db_quote($_POST['scope'])."',
|
||||
gid=".sanitize_int($_POST['gid']).",
|
||||
minimum='".sanitize_signedint($_POST['minimum'])."',
|
||||
maximum='".sanitize_signedint($_POST['maximum'])."',
|
||||
name='".db_quote($_POST['name_'.$assessmentlang],true)."',
|
||||
message='".db_quote($_POST['assessmentmessage_'.$assessmentlang],true)."'
|
||||
WHERE language='$assessmentlang' and id=".sanitize_int($_POST['id']);
|
||||
$result = $connect->Execute($query) or safe_die("Error updating<br />$query<br />".$connect->ErrorMsg());
|
||||
}
|
||||
} elseif ($action == "assessmentdelete") {
|
||||
$query = "DELETE FROM {$dbprefix}assessments
|
||||
WHERE id=".sanitize_int($_POST['id']);
|
||||
$result=$connect->Execute($query);
|
||||
}
|
||||
|
||||
$assessmentsoutput=PrepareEditorScript();
|
||||
$assessmentsoutput.="<script type=\"text/javascript\">
|
||||
<!--
|
||||
var strnogroup='".$clang->gT("There are no groups available.", "js")."';
|
||||
--></script>";
|
||||
$assessmentsoutput.="<table width='100%' border='0' >\n"
|
||||
. "\t<tr>\n"
|
||||
. "\t\t<td>\n"
|
||||
. "<div class='menubar'>\n"
|
||||
. "\t<div class='menubar-title'>\n"
|
||||
. "\t\t<strong>".$clang->gT("Assessments")."</strong>\n";
|
||||
|
||||
$assessmentsoutput.= "\t</div>\n"
|
||||
. "\t<div class='menubar-main'>\n"
|
||||
. "\t\t<div class='menubar-left'>\n"
|
||||
. "\t\t\t<a href=\"#\" onclick=\"window.open('$scriptname?sid=$surveyid', '_self')\" onmouseout=\"hideTooltip()\" onmouseover=\"showTooltip(event,'".$clang->gT("Return to Survey Administration", "js")."');return false\">" .
|
||||
"<img name='Administration' src='$imagefiles/home.png' title='' alt='' /></a>\n"
|
||||
. "\t\t\t<img src='$imagefiles/blank.gif' alt='' width='11' />\n"
|
||||
. "\t\t\t<img src='$imagefiles/seperator.gif' alt='' />\n";
|
||||
|
||||
if ($surveyinfo['assessments']!='Y')
|
||||
if ($action == "assessmentadd" && bHasSurveyPermission($surveyid, 'assessments','create')) {
|
||||
$inserttable=$dbprefix."assessments";
|
||||
$first=true;
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$assessmentsoutput.='<span style="font-size:11px;">'.sprintf($clang->gT("Notice: Assessment mode for this survey is not activated. You can activate it in the %s survey settings %s (tab 'Notification & data management')."),'<a href="admin.php?action=editsurvey&sid='.$surveyid.'">','</a>').'</span>';
|
||||
if (!isset($_POST['gid'])) $_POST['gid']=0;
|
||||
|
||||
$datarray=array(
|
||||
'sid' => $surveyid,
|
||||
'scope' => $_POST['scope'],
|
||||
'gid' => $_POST['gid'],
|
||||
'minimum' => $_POST['minimum'],
|
||||
'maximum' => $_POST['maximum'],
|
||||
'name' => $_POST['name_'.$assessmentlang],
|
||||
'language' => $assessmentlang,
|
||||
'message' => $_POST['assessmentmessage_'.$assessmentlang]);
|
||||
|
||||
if ($first==false)
|
||||
{
|
||||
$datarray['id']=$aid;
|
||||
}
|
||||
|
||||
$query = $connect->GetInsertSQL($inserttable, $datarray, get_magic_quotes_gpc());
|
||||
$result=$connect->Execute($query) or safe_die("Error inserting<br />$query<br />".$connect->ErrorMsg());
|
||||
if ($first==true)
|
||||
{
|
||||
$first=false;
|
||||
$aid=$connect->Insert_ID(db_table_name_nq('assessments'),"id");
|
||||
}
|
||||
}
|
||||
$assessmentsoutput.= "\t\t</div>\n"
|
||||
} elseif ($action == "assessmentupdate" && bHasSurveyPermission($surveyid, 'assessments','update')) {
|
||||
|
||||
if ($filterxsshtml)
|
||||
{
|
||||
require_once("../classes/inputfilter/class.inputfilter_clean.php");
|
||||
$myFilter = new InputFilter('','',1,1,1);
|
||||
}
|
||||
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
|
||||
if (!isset($_POST['gid'])) $_POST['gid']=0;
|
||||
if ($filterxsshtml)
|
||||
{
|
||||
$_POST['name_'.$assessmentlang]=$myFilter->process($_POST['name_'.$assessmentlang]);
|
||||
$_POST['assessmentmessage_'.$assessmentlang]=$myFilter->process($_POST['assessmentmessage_'.$assessmentlang]);
|
||||
}
|
||||
$query = "UPDATE {$dbprefix}assessments
|
||||
SET scope='".db_quote($_POST['scope'],true)."',
|
||||
gid=".sanitize_int($_POST['gid']).",
|
||||
minimum='".sanitize_signedint($_POST['minimum'])."',
|
||||
maximum='".sanitize_signedint($_POST['maximum'])."',
|
||||
name='".db_quote($_POST['name_'.$assessmentlang],true)."',
|
||||
message='".db_quote($_POST['assessmentmessage_'.$assessmentlang],true)."'
|
||||
WHERE language='$assessmentlang' and id=".sanitize_int($_POST['id']);
|
||||
$result = $connect->Execute($query) or safe_die("Error updating<br />$query<br />".$connect->ErrorMsg());
|
||||
}
|
||||
} elseif ($action == "assessmentdelete" && bHasSurveyPermission($surveyid, 'assessments','delete')) {
|
||||
$query = "DELETE FROM {$dbprefix}assessments
|
||||
WHERE id=".sanitize_int($_POST['id']);
|
||||
$result=$connect->Execute($query);
|
||||
}
|
||||
|
||||
if (bHasSurveyPermission($surveyid, 'assessments','read'))
|
||||
{
|
||||
|
||||
$assessmentsoutput=PrepareEditorScript();
|
||||
$assessmentsoutput.="<script type=\"text/javascript\">
|
||||
<!--
|
||||
var strnogroup='".$clang->gT("There are no groups available.", "js")."';
|
||||
--></script>\n";
|
||||
$assessmentsoutput.="<div class='menubar'>\n"
|
||||
. "\t<div class='menubar-title ui-widget-header'>\n"
|
||||
. "<strong>".$clang->gT("Assessments")."</strong>\n";
|
||||
|
||||
$assessmentsoutput.= "\t</div>\n"
|
||||
. "\t<div class='menubar-main'>\n"
|
||||
. "<div class='menubar-left'>\n"
|
||||
. "\t<a href=\"#\" onclick=\"window.open('$scriptname?sid=$surveyid', '_self')\" title='".$clang->gTview("Return to survey administration")."'>"
|
||||
. "<img name='Administration' src='$imageurl/home.png' alt='".$clang->gT("Return to survey administration")."' /></a>\n"
|
||||
. "\t<img src='$imageurl/blank.gif' alt='' width='11' />\n"
|
||||
. "\t<img src='$imageurl/seperator.gif' alt='' />\n";
|
||||
|
||||
if ($surveyinfo['assessments']!='Y')
|
||||
{
|
||||
$assessmentsoutput.='<span style="font-size:11px;">'.sprintf($clang->gT("Notice: Assessment mode for this survey is not activated. You can activate it in the %s survey settings %s (tab 'Notification & data management')."),'<a href="admin.php?action=editsurvey&sid='.$surveyid.'">','</a>').'</span>';
|
||||
}
|
||||
$assessmentsoutput.= "</div>\n"
|
||||
. "\t</div>\n"
|
||||
. "</div>\n";
|
||||
$assessmentsoutput .= "<p style='margin:0;font-size:1px;line-height:1px;height:1px;'> </p>"; //CSS Firefox 2 transition fix
|
||||
|
||||
. "</div>\n";
|
||||
$assessmentsoutput .= "<p style='margin:0;font-size:1px;line-height:1px;height:1px;'> </p>"; //CSS Firefox 2 transition fix
|
||||
|
||||
if ($surveyid == "") {
|
||||
$assessmentsoutput.= $clang->gT("No SID Provided");
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
$assessments=getAssessments($surveyid);
|
||||
//$assessmentsoutput.= "<pre>";print_r($assessments);echo "</pre>";
|
||||
$groups=getGroups($surveyid);
|
||||
$groupselect="<select name='gid' id='newgroupselect'>\n";
|
||||
$groupselect="<select name='gid' id='gid'>\n";
|
||||
foreach($groups as $group) {
|
||||
$groupselect.="<option value='".$group['gid']."'>".$group['group_name']."</option>\n";
|
||||
}
|
||||
$groupselect .="</select>\n";
|
||||
$headings=array($clang->gT("Scope"), $clang->gT("Question group"), $clang->gT("Minimum"), $clang->gT("Maximum"));
|
||||
$inputs=array("<input type='radio' id='radiototal' name='scope' value='T' checked='checked'>".$clang->gT("Total")."</input><input type='radio' id='radiogroup' name='scope' value='G'>".$clang->gT("Group")."</input>",
|
||||
$groupselect,
|
||||
"<input type='text' name='minimum' class='numbersonly' />",
|
||||
"<input type='text' name='maximum' class='numbersonly' />");
|
||||
$actiontitle=$clang->gT("Add");
|
||||
$actionvalue="assessmentadd";
|
||||
$thisid="";
|
||||
|
||||
if ($action == "assessmentedit") {
|
||||
|
||||
if ($action == "assessmentedit" && bHasSurveyPermission($surveyid, 'assessments','update')) {
|
||||
$query = "SELECT * FROM {$dbprefix}assessments WHERE id=".sanitize_int($_POST['id'])." and language='$baselang'";
|
||||
$results = db_execute_assoc($query);
|
||||
while($row=$results->FetchRow()) {
|
||||
$editdata=$row;
|
||||
}
|
||||
$scopeselect = "<input type='radio' id='radiototal' name='scope' ";
|
||||
if ($editdata['scope'] == "T") {$scopeselect .= "checked='checked' ";}
|
||||
$scopeselect .= "value='T'>".$clang->gT("Total")."</input>";
|
||||
$scopeselect .= "<input type='radio' name='scope' id='radiogroup' value='G'";
|
||||
if ($editdata['scope'] == "G") {$scopeselect .= " checked='checked'";}
|
||||
$scopeselect .= ">".$clang->gT("Question group")."</input>";
|
||||
$groupselect=str_replace("'".$editdata['gid']."'", "'".$editdata['gid']."' selected", $groupselect);
|
||||
$inputs=array($scopeselect,
|
||||
$groupselect,
|
||||
"<input type='text' name='minimum' value='".$editdata['minimum']."' class='numbersonly' />",
|
||||
"<input type='text' name='maximum' value='".$editdata['maximum']."' class='numbersonly' />",
|
||||
"<input type='text' name='name' size='80' value='".htmlentities(stripslashes($editdata['name']), ENT_QUOTES,'UTF-8')."'/>",
|
||||
"<textarea name='message' id='assessmentmessage' rows='10' cols='80'>".htmlentities(stripslashes($editdata['message']), ENT_QUOTES,'UTF-8')."</textarea>");
|
||||
$actiontitle=$clang->gT("Edit");
|
||||
$actiontitle=$clang->gT("Edit");
|
||||
$actionvalue="assessmentupdate";
|
||||
$thisid=$editdata['id'];
|
||||
}
|
||||
//$assessmentsoutput.= "<pre>"; print_r($edits); $assessmentsoutput.= "</pre>";
|
||||
//PRESENT THE PAGE
|
||||
|
||||
|
||||
$assessmentsoutput.= "<br /><table align='center' width='90%'>
|
||||
<tr><th colspan='12'>".$clang->gT("Assessment rules")."</th></tr>"
|
||||
."<tr><th>".$clang->gT("ID")."</th><th>".$clang->gT("SID")."</th>\n";
|
||||
|
||||
$assessmentsoutput.= "<div class='header ui-widget-header'>".$clang->gT("Assessment rules")."</div>"
|
||||
|
||||
|
||||
."<table class='assessmentlist'><thead>"
|
||||
."<tr><th>".$clang->gT("ID")."</th><th>".$clang->gT("Actions")."</th><th>".$clang->gT("SID")."</th>\n";
|
||||
foreach ($headings as $head) {
|
||||
$assessmentsoutput.= "<th>$head</th>\n";
|
||||
}
|
||||
$assessmentsoutput.= "<th>".$clang->gT("Title")."</th><th>".$clang->gT("Message")."</th><th>".$clang->gT("Actions")."</th>";
|
||||
$assessmentsoutput.= "</tr>\n";
|
||||
$flipflop=true;
|
||||
$assessmentsoutput.= "<th>".$clang->gT("Title")."</th><th>".$clang->gT("Message")."</th>";
|
||||
$assessmentsoutput.= "</tr></thead>\n<tbody>\n";
|
||||
$flipflop=true;
|
||||
foreach($assessments as $assess) {
|
||||
$flipflop=!$flipflop;
|
||||
$flipflop=!$flipflop;
|
||||
if ($flipflop==true){$assessmentsoutput.= "<tr class='oddrow'>\n";}
|
||||
else {$assessmentsoutput.= "<tr class='evenrow'>\n";}
|
||||
else {$assessmentsoutput.= "<tr class='evenrow'>\n";}
|
||||
$assessmentsoutput.= "<td>".$assess['id']."</td>\n";
|
||||
$assessmentsoutput.= "<td>".$assess['sid']."</td>\n";
|
||||
|
||||
if ($assess['scope'] == "T")
|
||||
{
|
||||
$assessmentsoutput.= "<td>".$clang->gT("Total")."</td>\n";
|
||||
$assessmentsoutput.= "<td>-</td>\n";
|
||||
}
|
||||
else
|
||||
$assessmentsoutput.= "<td>";
|
||||
if (bHasSurveyPermission($surveyid, 'assessments','update'))
|
||||
{
|
||||
$assessmentsoutput.= "<td>".$clang->gT("Question group")."</td>\n";
|
||||
$assessmentsoutput.= "<td>".$groups[$assess['gid']]['group_name']." (".$assess['gid'].")</td>\n";
|
||||
$assessmentsoutput.="<form method='post' action='$scriptname?sid=$surveyid'>
|
||||
<input type='image' src='$imageurl/token_edit.png' alt='".$clang->gT("Edit")."' />
|
||||
<input type='hidden' name='action' value='assessmentedit' />
|
||||
<input type='hidden' name='id' value='".$assess['id']."' />
|
||||
</form>";
|
||||
}
|
||||
|
||||
|
||||
if (bHasSurveyPermission($surveyid, 'assessments','delete'))
|
||||
{
|
||||
$assessmentsoutput.="<form method='post' action='$scriptname?sid=$surveyid'>
|
||||
<input type='image' src='$imageurl/token_delete.png' alt='".$clang->gT("Delete")."' onclick='return confirm(\"".$clang->gT("Are you sure you want to delete this entry?","js")."\")' />
|
||||
<input type='hidden' name='action' value='assessmentdelete' />
|
||||
<input type='hidden' name='id' value='".$assess['id']."' />
|
||||
</form>";
|
||||
}
|
||||
$assessmentsoutput.= "</td><td>".$assess['sid']."</td>\n";
|
||||
|
||||
if ($assess['scope'] == "T")
|
||||
{
|
||||
$assessmentsoutput.= "<td>".$clang->gT("Total")."</td>\n";
|
||||
$assessmentsoutput.= "<td>-</td>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
$assessmentsoutput.= "<td>".$clang->gT("Question group")."</td>\n";
|
||||
$assessmentsoutput.= "<td>".$groups[$assess['gid']]['group_name']." (".$assess['gid'].")</td>\n";
|
||||
}
|
||||
|
||||
|
||||
$assessmentsoutput.= "<td>".$assess['minimum']."</td>\n";
|
||||
$assessmentsoutput.= "<td>".$assess['maximum']."</td>\n";
|
||||
$assessmentsoutput.= "<td>".stripslashes($assess['name'])."</td>\n";
|
||||
$assessmentsoutput.= "<td>".strip_tags(strip_javascript($assess['message']))."</td>\n";
|
||||
|
||||
$assessmentsoutput.= "<td>
|
||||
<table width='100%'>
|
||||
<tr><td align='center'><form method='post' action='$scriptname?sid=$surveyid'>
|
||||
<input type='submit' value='".$clang->gT("Edit")."' />
|
||||
<input type='hidden' name='action' value='assessmentedit' />
|
||||
<input type='hidden' name='id' value='".$assess['id']."' />
|
||||
</form></td>
|
||||
<td align='center'><form method='post' action='$scriptname?sid=$surveyid'>
|
||||
<input type='submit' value='".$clang->gT("Delete")."' onclick='return confirm(\"".$clang->gT("Are you sure you want to delete this entry?","js")."\")' />
|
||||
<input type='hidden' name='action' value='assessmentdelete' />
|
||||
<input type='hidden' name='id' value='".$assess['id']."' />
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>\n";
|
||||
$assessmentsoutput.= "</tr>\n";
|
||||
|
||||
$assessmentsoutput.= "</tr></tbody>\n";
|
||||
}
|
||||
$assessmentsoutput.= "</table>";
|
||||
|
||||
|
||||
//now present edit/insert form
|
||||
$assessmentsoutput.= "<br /><form method='post' name='assessmentsform' action='$scriptname?sid=$surveyid'><table align='center' cellspacing='0' border='0' class='form2columns'>\n";
|
||||
$assessmentsoutput.= "<tr><th colspan='2'>$actiontitle</th></tr>\n";
|
||||
$i=0;
|
||||
|
||||
foreach ($headings as $head) {
|
||||
$assessmentsoutput.= "<tr><td>$head</td><td>".$inputs[$i]."<br /></td></tr>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
|
||||
// start tabs
|
||||
$assessmentsoutput.= "<tr><td> </td><td> </td></tr>\n";
|
||||
$assessmentsoutput.='</table><div id="languagetabs">'
|
||||
.'<ul>';
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
|
||||
if ((bHasSurveyPermission($surveyid, 'assessments','update') && $actionvalue=="assessmentupdate") || (bHasSurveyPermission($surveyid, 'assessments','create')&& $actionvalue=="assessmentadd"))
|
||||
{
|
||||
$position=0;
|
||||
$assessmentsoutput .= '<li><a href="#tablang'.$assessmentlang.'"><span>'.getLanguageNameFromCode($assessmentlang, false);
|
||||
if ($assessmentlang==$baselang) {$assessmentsoutput .= ' ('.$clang->gT("Base Language").')';}
|
||||
$assessmentsoutput .='</span></a></li>';
|
||||
|
||||
//now present edit/insert form
|
||||
$assessmentsoutput.= "<br /><form method='post' class='form30' id='assessmentsform' name='assessmentsform' action='$scriptname?sid=$surveyid'><div class='header ui-widget-header'>\n";
|
||||
$assessmentsoutput.= "$actiontitle</div>\n";
|
||||
|
||||
$assessmentsoutput.="<ul><li><label>".$clang->gT("Scope")."</label><input type='radio' id='radiototal' name='scope' value='T' ";
|
||||
if (!isset($editdata) || $editdata['scope'] == "T") {$assessmentsoutput .= " checked='checked' ";}
|
||||
$assessmentsoutput.=" /><label for='radiototal'>".$clang->gT("Total")."</label>
|
||||
<input type='radio' id='radiogroup' name='scope' value='G'";
|
||||
if (isset($editdata) && $editdata['scope'] == "G") {$assessmentsoutput .= " checked='checked' ";}
|
||||
$assessmentsoutput.="/><label for='radiogroup'>".$clang->gT("Group")."</label></li>";
|
||||
$assessmentsoutput.="<li><label for='gid'>".$clang->gT("Question group")."</label>$groupselect</li>"
|
||||
."<li><label for='minimum'>".$clang->gT("Minimum")."</label><input type='text' id='minimum' name='minimum' class='numbersonly'";
|
||||
if (isset($editdata)) {$assessmentsoutput .= " value='{$editdata['minimum']}' ";}
|
||||
$assessmentsoutput.="/></li>"
|
||||
."<li><label for='maximum'>".$clang->gT("Maximum")."</label><input type='text' id='maximum' name='maximum' class='numbersonly'";
|
||||
if (isset($editdata)) {$assessmentsoutput .= " value='{$editdata['maximum']}' ";}
|
||||
$assessmentsoutput.="/></li>";
|
||||
|
||||
// start tabs
|
||||
$assessmentsoutput.= "<tr><td> </td><td> </td></tr>\n";
|
||||
$assessmentsoutput.='</table><div id="languagetabs">'
|
||||
.'<ul>';
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$position=0;
|
||||
$assessmentsoutput .= '<li><a href="#tablang'.$assessmentlang.'"><span>'.getLanguageNameFromCode($assessmentlang, false);
|
||||
if ($assessmentlang==$baselang) {$assessmentsoutput .= ' ('.$clang->gT("Base language").')';}
|
||||
$assessmentsoutput .='</span></a></li>';
|
||||
}
|
||||
$assessmentsoutput.= '</ul>';
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$heading=''; $message='';
|
||||
if ($action == "assessmentedit")
|
||||
{
|
||||
$query = "SELECT * FROM {$dbprefix}assessments WHERE id=".sanitize_int($_POST['id'])." and language='$assessmentlang'";
|
||||
$results = db_execute_assoc($query);
|
||||
while($row=$results->FetchRow()) {
|
||||
$editdata=$row;
|
||||
}
|
||||
$heading=htmlspecialchars($editdata['name'],ENT_QUOTES);
|
||||
$message=htmlspecialchars($editdata['message']);
|
||||
}
|
||||
$assessmentsoutput .= '<div id="tablang'.$assessmentlang.'">';
|
||||
$assessmentsoutput .= $clang->gT("Heading")."<br/>"
|
||||
."<input type='text' name='name_$assessmentlang' size='80' value='$heading'/><br /><br />"
|
||||
.$clang->gT("Message")
|
||||
."<textarea name='assessmentmessage_$assessmentlang' id='assessmentmessage_$assessmentlang' rows='10' cols='80'>$message</textarea >";
|
||||
|
||||
$assessmentsoutput .='</div>';
|
||||
}
|
||||
$assessmentsoutput .='</div>';
|
||||
|
||||
|
||||
$assessmentsoutput.= "<p><input type='submit' value='".$clang->gT("Save")."' />\n";
|
||||
if ($action == "assessmentedit") $assessmentsoutput.= " <input type='submit' value='".$clang->gT("Cancel")."' onclick=\"document.assessmentsform.action.value='assessments'\" />\n";
|
||||
$assessmentsoutput.= "<input type='hidden' name='sid' value='$surveyid' />\n"
|
||||
."<input type='hidden' name='action' value='$actionvalue' />\n"
|
||||
."<input type='hidden' name='id' value='$thisid' />\n"
|
||||
."</div>\n"
|
||||
."</form>\n";
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$assessmentsoutput.=getEditor("assessment-text","assessmentmessage_$assessmentlang", "[".$clang->gT("Message:", "js")."]",$surveyid,$gid,$qid,$action);
|
||||
}
|
||||
}
|
||||
$assessmentsoutput.= '</ul>';
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$heading=''; $message='';
|
||||
if ($action == "assessmentedit")
|
||||
{
|
||||
$query = "SELECT * FROM {$dbprefix}assessments WHERE id=".sanitize_int($_POST['id'])." and language='$assessmentlang'";
|
||||
$results = db_execute_assoc($query);
|
||||
while($row=$results->FetchRow()) {
|
||||
$editdata=$row;
|
||||
}
|
||||
$heading=$editdata['name'];
|
||||
$message=$editdata['message'];
|
||||
}
|
||||
$assessmentsoutput .= '<div id="tablang'.$assessmentlang.'">';
|
||||
$assessmentsoutput .= $clang->gT("Heading")."<br/>"
|
||||
."<input type='text' name='name_$assessmentlang' size='80' value='$heading'/><br /><br />"
|
||||
.$clang->gT("Message")
|
||||
."<textarea name='assessmentmessage_$assessmentlang' id='assessmentmessage_$assessmentlang' rows='10' cols='80'>$message</textarea >";
|
||||
|
||||
$assessmentsoutput .='</div>';
|
||||
}
|
||||
$assessmentsoutput .='</div>';
|
||||
|
||||
|
||||
$assessmentsoutput.= "<div style='width:200px;margin:5px auto;'><input type='submit' value='".$clang->gT("Save")."' />\n";
|
||||
if ($action == "assessmentedit") $assessmentsoutput.= " <input type='submit' value='".$clang->gT("Cancel")."' onclick=\"document.assessmentsform.action.value='assessments'\" />\n";
|
||||
$assessmentsoutput.= "<input type='hidden' name='sid' value='$surveyid' />\n"
|
||||
."<input type='hidden' name='action' value='$actionvalue' />\n"
|
||||
."<input type='hidden' name='id' value='$thisid' />\n"
|
||||
."<div>\n"
|
||||
."</form>\n";
|
||||
foreach ($assessmentlangs as $assessmentlang)
|
||||
{
|
||||
$assessmentsoutput.=getEditor("assessment-text","assessmentmessage_$assessmentlang", "[".$clang->gT("Message:", "js")."]",$surveyid,$gid,$qid,$action);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$action = "assessment";
|
||||
include("access_denied.php");
|
||||
include("admin.php");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function getAssessments($surveyid) {
|
||||
global $dbprefix, $connect, $baselang;
|
||||
$query = "SELECT id, sid, scope, gid, minimum, maximum, name, message
|
||||
global $dbprefix, $connect, $baselang;
|
||||
$query = "SELECT id, sid, scope, gid, minimum, maximum, name, message
|
||||
FROM ".db_table_name('assessments')."
|
||||
WHERE sid='$surveyid' and language='$baselang'
|
||||
ORDER BY scope, gid";
|
||||
$result=db_execute_assoc($query) or safe_die("Error getting assessments<br />$query<br />".$connect->ErrorMsg());
|
||||
$output=array();
|
||||
while($row=$result->FetchRow()) {
|
||||
$output[]=$row;
|
||||
}
|
||||
return $output;
|
||||
$result=db_execute_assoc($query) or safe_die("Error getting assessments<br />$query<br />".$connect->ErrorMsg());
|
||||
$output=array();
|
||||
while($row=$result->FetchRow()) {
|
||||
$output[]=$row;
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
function getGroups($surveyid) {
|
||||
global $dbprefix, $connect;
|
||||
$baselang = GetBaseLanguageFromSurveyID($surveyid);
|
||||
$query = "SELECT gid, group_name
|
||||
global $dbprefix, $connect;
|
||||
$baselang = GetBaseLanguageFromSurveyID($surveyid);
|
||||
$query = "SELECT gid, group_name
|
||||
FROM ".db_table_name('groups')."
|
||||
WHERE sid='$surveyid' and language='$baselang'
|
||||
ORDER BY group_order";
|
||||
$result = db_execute_assoc($query) or safe_die("Error getting groups<br />$query<br />".$connect->ErrorMsg());
|
||||
$output=array();
|
||||
while($row=$result->FetchRow()) {
|
||||
$output[$row['gid']]=$row;
|
||||
}
|
||||
return $output;
|
||||
$result = db_execute_assoc($query) or safe_die("Error getting groups<br />$query<br />".$connect->ErrorMsg());
|
||||
$output=array();
|
||||
while($row=$result->FetchRow()) {
|
||||
$output[$row['gid']]=$row;
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user