Form Editor
Question Editor
Main Menu
Log Out

 

 

) function reformat_with_breaks($string,$separator,$max_line_length,$break_str = "
") { $linelen = 0; $string .= substr($separator,0,1).""; for($token = strtok($string,$separator); $token != ""; $token = strtok($separator)) { $linelen += strlen($token); if($linelen > $max_line_length) { $output_string .= $break_str.$token; $linelen = 0; } else ($output_string != "")? $output_string .= $separator.$token: $output_string.= $token; } return($output_string); } //if questions were marked for deletion and submit button pressed, delete the questions if(isset($_POST['form_submitted']) && ($_POST['form_submitted'] == "question_list")) { foreach($_POST as $key=>$response) { if(preg_match("/delete_question_id_([[:digit:]]+)/",$key,$fieldparts)) { $delete_id = $fieldparts[1]; //first make sure that question is not locked (can't do a join on delete, otherwise all this mess would take one query) $SQL_select_question = sprintf("select question_id, question_text FROM question WHERE question_id=%d AND locked='F'",$delete_id); mysql_select_db($database_researcher, $researcher); $delete_question = mysql_query($SQL_select_question,$researcher) or die(mysql_error()); $row_delete_question = mysql_fetch_assoc($delete_question); $SQL_question_in_form = sprintf("select form_x_question.form_id, form_name FROM form_x_question left join form using (form_id) WHERE question_id=%d",$delete_id); mysql_select_db($database_researcher, $researcher); $question_in_form=mysql_query($SQL_question_in_form,$researcher) or die(mysql_error()); $num_forms = mysql_num_rows($question_in_form); //the question is still linked to one or more forms, so display an error message if($num_forms > 0) { printf("
Cannot delete question ID %d: %s. It is still linked to the following form(s): ",$delete_id,$row_delete_question['question_text']); while($row_question_in_form = mysql_fetch_assoc($question_in_form)) echo $row_question_in_form['form_name']." "; } printf(""); if(($row_delete_question['question_id'] != NULL) && ($num_forms == 0)) { //delete the question if the last select gave us a result $SQL_select_question = sprintf("delete FROM question WHERE question_id=%d AND locked='F'",$delete_id); mysql_select_db($database_researcher, $researcher); mysql_query($SQL_select_question,$researcher); //delete question from question_x_data_format //ONLY if the last query resulted in a question deletion. //This ensures that we are deleting a question that has not been locked. if(mysql_affected_rows($researcher) > 0) { $SQL_delete_question_x_data_format = sprintf("DELETE FROM question_x_data_format WHERE question_id=%d",$delete_id); mysql_select_db($database_researcher, $researcher); mysql_query($SQL_delete_question_x_data_format,$researcher); } } } } //foreach } //if isset($_POST ?> 0){ $row=mysql_fetch_row($result); $quest_category_options=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$row[1])); } ?>

List Question Category:

 

0) { do { $query_question_part_list = "SELECT `question_id`, `subquestion`, `heading`, `range`, `default`,`type`, `enum_values`, `html_field_type`, `audio_path`, `required` FROM question_x_data_format, data_format WHERE ". sprintf("question_x_data_format.question_id = %s AND question_x_data_format.answer_format_id = data_format.data_format_id ORDER BY question_x_data_format.subquestion",$row_question_list['question_id']); $question_part_list = mysql_query($query_question_part_list,$researcher); $row_question_part_list = mysql_fetch_assoc($question_part_list); $totalRows_question_part_list = mysql_num_rows($question_part_list); for($partnum = 1; $partnum <= $totalRows_question_part_list; $partnum++) { //re-format enum vals with
for every three values in a row that are over 3 chars long //so that they don't take up too much of the table's width if(!is_null($row_question_part_list['enum_values'])) $enum_vals = preg_replace("/(('([^']{3,})',){3})/","\\1
",$row_question_part_list['enum_values']); else $enum_vals = ""; ?> "); } else { printf(""); } ?> 0 ?>
Subq Header Type Range Enum Values Default HTML Type Req Edit/ Audio
"); printf("ID %d: %s
",$row_question_list['question_id'],$row_question_list['question_text']); //display option to edit or add text of multi-title questions here. printf("",$row_question_list['question_id'], $row_question_part_list['subquestion'],500,600); if (empty($row_question_part_list['audio_path'])) echo "Edit Question
"; else echo "Edit Question (audio assigned)
"; printf("Category: %s Heading Format: %s",$row_question_list['question_category'],$row_question_list['heading_format']); if (($row_question_list['locked'] == 'F')) printf("
Delete",$row_question_list['question_id'],$row_question_list['question_id']); else printf("
LOCKED"); printf("
",$row_question_list['question_id'], $row_question_part_list['subquestion'],500,600); if (empty($row_question_part_list['audio_path'])) echo "Edit"; else echo "Edit"; } ?>