ErrorMsg()); $qtype = $result->FetchRow(); if ($qtype['type'] == 'G') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array('M' => array('Title' => $qtype['title'], 'Display' => $clang->gT("Male"), 'code' => 'M'), 'F' => array('Title' => $qtype['title'],'Display' => $clang->gT("Female"), 'code' => 'F')); if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'M') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $query = "SELECT code,answer FROM ".db_table_name('answers')." WHERE qid='{$qid}'"; $ansresult = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array(); while ($dbanslist = $ansresult->FetchRow()) { $tmparrayans = array('Title' => $qtype['title'], 'Display' => substr($dbanslist['answer'],0,40), 'code' => $dbanslist['code']); $answerlist[$dbanslist['code']] = $tmparrayans; } if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'L' || $qtype['type'] == 'O' || $qtype['type'] == '!') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $query = "SELECT code,answer FROM ".db_table_name('answers')." WHERE qid='{$qid}'"; $ansresult = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array(); while ($dbanslist = $ansresult->FetchRow()) { $answerlist[$dbanslist['code']] = array('Title'=>$qtype['title'], 'Display'=>substr($dbanslist['answer'],0,40), 'code'=>$dbanslist['code']); } if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'A') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $query = "SELECT code,answer FROM ".db_table_name('answers')." WHERE qid='{$qid}'"; $ansresult = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array(); while ($dbanslist = $ansresult->FetchRow()) { for ($x=1; $x<6; $x++) { $tmparrayans = array('Title' => $qtype['title'], 'Display' => substr($dbanslist['answer'],0,40).' ['.$x.']', 'code' => $dbanslist['code']); $answerlist[$dbanslist['code']."-".$x] = $tmparrayans; } } if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'B') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $query = "SELECT code,answer FROM ".db_table_name('answers')." WHERE qid='{$qid}'"; $ansresult = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array(); while ($dbanslist = $ansresult->FetchRow()) { for ($x=1; $x<11; $x++) { $tmparrayans = array('Title' => $qtype['title'], 'Display' => substr($dbanslist['answer'],0,40).' ['.$x.']', 'code' => $dbanslist['code']); $answerlist[$dbanslist['code']."-".$x] = $tmparrayans; } } if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'Y') { $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $answerlist = array('Y' => array('Title' => $qtype['title'], 'Display' => $clang->gT("Yes"), 'code' => 'Y'), 'N' => array('Title' => $qtype['title'],'Display' => $clang->gT("No"), 'code' => 'N')); if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if ($qtype['type'] == 'I') { $slangs = GetAdditionalLanguagesFromSurveyID($surveyid); array_unshift($slangs,$baselang); $query = "SELECT * FROM ".db_table_name('quota_members')." WHERE sid='{$surveyid}' and qid='{$qid}' and quota_id='{$quota_id}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); while(list($key,$value) = each($slangs)) { $tmparrayans = array('Title' => $qtype['title'], 'Display' => getLanguageNameFromCode($value,false), $value); $answerlist[$value] = $tmparrayans; } if ($result->RecordCount() > 0) { while ($quotalist = $result->FetchRow()) { $answerlist[$quotalist['code']]['rowexists'] = '1'; } } } if (!isset($answerlist)) { return array(); } else { return $answerlist; } } if($sumrows5['edit_survey_property'] || $_SESSION['USER_RIGHT_SUPERADMIN'] == 1) { if (isset($_POST['quotamax'])) $_POST['quotamax']=sanitize_int($_POST['quotamax']); if (!isset($action)) $action=returnglobal('action'); if (!isset($subaction)) $subaction=returnglobal('subaction'); if (!isset($quotasoutput)) $quotasoutput = ""; if($subaction == "insertquota") { if(!isset($_POST['quota_limit']) || $_POST['quota_limit'] < 1) { $_POST['quota_limit'] = 1; } $_POST = array_map('db_quote', $_POST); $query = "INSERT INTO ".db_table_name('quota')." (sid,name,qlimit,action,autoload_url) VALUES ('$surveyid','{$_POST['quota_name']}','{$_POST['quota_limit']}','1', '1')"; $connect->Execute($query) or safe_die("Error inserting limit".$connect->ErrorMsg()); $quotaid=$connect->Insert_Id(db_table_name_nq('quota'),"id"); //Get the languages used in this survey $langs = GetAdditionalLanguagesFromSurveyID($surveyid); $baselang = GetBaseLanguageFromSurveyID($surveyid); $langs[] = $baselang; //Iterate through each language, and make sure there is a quota message for it $errorstring = ''; foreach ($langs as $lang) { if (!$_POST['quotals_message_'.$lang]) { $errorstring.= GetLanguageNameFromCode($lang,false)."\\n";} } if ($errorstring!='') { $databaseoutput .= "\n"; } else //All the required quota messages exist, now we can insert this info into the database { require_once("../classes/inputfilter/class.inputfilter_clean.php"); $myFilter = new InputFilter('','',1,1,1); foreach ($langs as $lang) //Iterate through each language { //Clean XSS if ($filterxsshtml) { $_POST['quotals_message_'.$lang]=$myFilter->process($_POST['quotals_message_'.$lang]); } else { $_POST['quotals_message_'.$lang] = html_entity_decode($_POST['quotals_message_'.$lang], ENT_QUOTES, "UTF-8"); } // Fix bug with FCKEditor saving strange BR types $_POST['quotals_message_'.$lang]=fix_FCKeditor_text($_POST['quotals_message_'.$lang]); include_once(dirname(__FILE__) . '/../quexs.php'); //Now save the language to the database: $query = "INSERT INTO ".db_table_name('quota_languagesettings')." (quotals_quota_id, quotals_language, quotals_name, quotals_message, quotals_url, quotals_urldescrip) VALUES ('$quotaid', '$lang', '".db_quote($_POST['quota_name'])."', '".db_quote($_POST['quotals_message_'.$lang])."', '".QUEXS_URL."rs_quota_end.php', '".QUEXS_URL."rs_quota_end.php')"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); } } //End insert language based components $viewquota = "1"; } //End foreach $lang if($subaction == "modifyquota") { $_POST = array_map('db_quote', $_POST); $query = "UPDATE ".db_table_name('quota')." SET name='{$_POST['quota_name']}', qlimit='{$_POST['quota_limit']}' WHERE id='{$_POST['quota_id']}' "; $connect->Execute($query) or safe_die("Error modifying quota".$connect->ErrorMsg()); //Get the languages used in this survey $langs = GetAdditionalLanguagesFromSurveyID($surveyid); $baselang = GetBaseLanguageFromSurveyID($surveyid); $langs[] = $baselang; //Iterate through each language, and make sure there is a quota message for it $errorstring = ''; foreach ($langs as $lang) { if (!$_POST['quotals_message_'.$lang]) { $errorstring.= GetLanguageNameFromCode($lang,false)."\\n";} } if ($errorstring!='') { $databaseoutput .= "\n"; } else //All the required quota messages exist, now we can insert this info into the database { require_once("../classes/inputfilter/class.inputfilter_clean.php"); $myFilter = new InputFilter('','',1,1,1); foreach ($langs as $lang) //Iterate through each language { //Clean XSS if ($filterxsshtml) { $_POST['quotals_message_'.$lang]=$myFilter->process($_POST['quotals_message_'.$lang]); } else { $_POST['quotals_message_'.$lang] = html_entity_decode($_POST['quotals_message_'.$lang], ENT_QUOTES, "UTF-8"); } // Fix bug with FCKEditor saving strange BR types $_POST['quotals_message_'.$lang]=fix_FCKeditor_text($_POST['quotals_message_'.$lang]); //Now save the language to the database: $query = "UPDATE ".db_table_name('quota_languagesettings')." SET quotals_name='".db_quote($_POST['quota_name'])."', quotals_message='".db_quote($_POST['quotals_message_'.$lang])."' WHERE quotals_quota_id = '{$_POST['quota_id']}' AND quotals_language = '$lang'"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); } } //End insert language based components $viewquota = "1"; } if($subaction == "insertquotaanswer") { $_POST = array_map('db_quote', $_POST); $query = "INSERT INTO ".db_table_name('quota_members')." (sid,qid,quota_id,code) VALUES ('$surveyid','{$_POST['quota_qid']}','{$_POST['quota_id']}','{$_POST['quota_anscode']}')"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); $viewquota = "1"; } if($subaction == "quota_delans") { $_POST = array_map('db_quote', $_POST); $query = "DELETE FROM ".db_table_name('quota_members')." WHERE id = '{$_POST['quota_member_id']}' AND qid='{$_POST['quota_qid']}' and code='{$_POST['quota_anscode']}'"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); $viewquota = "1"; } if($subaction == "quota_delquota") { $_POST = array_map('db_quote', $_POST); $query = "DELETE FROM ".db_table_name('quota')." WHERE id='{$_POST['quota_id']}'"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); $query = "DELETE FROM ".db_table_name('quota_languagesettings')." WHERE quotals_quota_id='{$_POST['quota_id']}'"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); $query = "DELETE FROM ".db_table_name('quota_members')." WHERE quota_id='{$_POST['quota_id']}'"; $connect->Execute($query) or safe_die($connect->ErrorMsg()); $viewquota = "1"; } if ($subaction == "quota_editquota") { if (isset($_GET['quota_id'])) $_POST['quota_id'] = $_GET['quota_id']; $_POST = array_map('db_quote', $_POST); $query = "SELECT * FROM ".db_table_name('quota')." WHERE id='{$_POST['quota_id']}'"; $result = db_execute_assoc($query) or safe_die($connect->ErrorMsg()); $quotainfo = $result->FetchRow(); $quotasoutput .='