diff --git a/main/css/base.css b/main/css/base.css
index 04fba5b4c9..4addc6aeda 100644
--- a/main/css/base.css
+++ b/main/css/base.css
@@ -4249,7 +4249,32 @@ li.annoucement{
padding: 9px 0;
}
-
.nav-list img {
margin-right: 6px;
-}
\ No newline at end of file
+}
+
+select#question_type_hidden option {
+ padding: 10px 0px 10px 40px;
+ background-repeat:no-repeat;
+}
+
+select#question_type_hidden option[value="1"] {background-image: url(../img/icons/32/mcua.gif);}
+select#question_type_hidden option[value="2"] {background-image: url(../img/icons/32/mcma.gif);}
+select#question_type_hidden option[value="3"] {background-image: url(../img/icons/32/fill_in_blanks.gif);}
+select#question_type_hidden option[value="4"] {background-image: url(../img/icons/32/matching.gif);}
+select#question_type_hidden option[value="5"] {background-image: url(../img/icons/32/open_answer.gif);}
+select#question_type_hidden option[value="6"] {background-image: url(../img/icons/32/hotspot.gif);}
+
+select#question_type_hidden option[value="7"] {background-image: url(../img/icons/32/mcma.gif);}
+select#question_type_hidden option[value="8"] {background-image: url(../img/icons/32/mcma.gif);}
+
+select#question_type_hidden option[value="9"] {background-image: url(../img/icons/32/mcmac.gif);}
+select#question_type_hidden option[value="10"] {background-image: url(../img/icons/32/mcuao.gif);}
+select#question_type_hidden option[value="11"] {background-image: url(../img/icons/32/mcmao.gif);}
+select#question_type_hidden option[value="12"] {background-image: url(../img/icons/32/mcmaco.gif);}
+select#question_type_hidden option[value="13"] {background-image: url(../img/icons/32/audio_question.png);}
+select#question_type_hidden option[value="14"] {background-image: url(../img/icons/32/mcmagl.gif);}
+
+
+
+
diff --git a/main/exercice/question_create.php b/main/exercice/question_create.php
index 3c35a81b33..44dbbcd3e8 100644
--- a/main/exercice/question_create.php
+++ b/main/exercice/question_create.php
@@ -34,10 +34,12 @@ $form = new FormValidator('add_question','post',api_get_self().'?'.api_get_cidre
// form title
$form->addElement('header','',get_lang('AddQuestionToExercise'));
-// the question types (jquery form element)
-$form->addElement('hidden', 'question_type_hidden', get_lang('QuestionType'), array('id'=>'question_type_hidden'));
-$form->addElement('static','','');
-$form->addElement('static','select_question_type', get_lang('QuestionType'),'
');
+$question_list = Question::get_question_type_list();
+$question_list_options = array();
+foreach ($question_list as $key=> $value) {
+ $question_list_options[$key] = addslashes(get_lang($value[1]));
+}
+$form->addElement('select', 'question_type_hidden', get_lang('QuestionType'), $question_list_options, array('id' => 'question_type_hidden'));
//session id
$session_id = api_get_session_id();
@@ -61,25 +63,20 @@ $form->addElement('checkbox', 'is_content', null, get_lang('DefaultContent'), ar
$form->addElement('style_submit_button', 'SubmitCreateQuestion', get_lang('CreateQuestion'), 'class="add"');
// setting the rules
-// $form->addRule('question_type', ''.get_lang('ThisFieldIsRequired'), 'required');
$form->addRule('exercice', get_lang('ThisFieldIsRequired'), 'required');
$form->addRule('exercice', get_lang('YouHaveToSelectATest'), 'numeric');
+
$form->registerRule('validquestiontype', 'callback', 'check_question_type');
$form->addRule('question_type_hidden', get_lang('InvalidQuestionType'), 'validquestiontype');
if ($form->validate()) {
$values = $form->exportValues();
- $question_list = Question::get_question_type_list();
- foreach ($question_list as $question_type_id => $question_type_class_and_name) {
- if (get_lang($question_type_class_and_name[1]) == $values['question_type_hidden']) {
- $answer_type = $question_type_id;
- }
- }
-
+ $answer_type = $values['question_type_hidden'];
+
// check feedback_type from current exercise for type of question delineation
$exercise_id = intval($values['exercice']);
$sql = "SELECT feedback_type FROM $tbl_exercices WHERE c_id = $course_id AND id = '$exercise_id'";
- $rs_feedback_type = Database::query($sql,__FILE__,__LINE__);
+ $rs_feedback_type = Database::query($sql);
$row_feedback_type = Database::fetch_row($rs_feedback_type);
$feedback_type = $row_feedback_type[0];
@@ -88,8 +85,7 @@ if ($form->validate()) {
($feedback_type == 1 && ($answer_type != HOT_SPOT_DELINEATION && $answer_type != UNIQUE_ANSWER))) {
header('Location: question_create.php?'.api_get_cidreq().'&error=true');
exit;
- }
-
+ }
header('Location: admin.php?exerciseId='.$values['exercice'].'&newQuestion=yes&isContent='.$values['is_content'].'&answerType='.$answer_type);
exit;
} else {
@@ -106,49 +102,15 @@ if ($form->validate()) {
// footer
Display::display_footer();
}
-?>
-
-$value) {
- $valid_question_types[] = get_lang($value[1]);
- //$valid_question_types[] = trim($value[1]);
- }
+ foreach ($question_list as $key => $value) {
+ $valid_question_types[] = $key;
+ }
if (in_array($parameter, $valid_question_types)) {
return true;
} else {
return false;
}
-}
+}
\ No newline at end of file
diff --git a/main/inc/lib/javascript/jquery.customselect.js b/main/inc/lib/javascript/jquery.customselect.js
deleted file mode 100644
index 2541fb3769..0000000000
--- a/main/inc/lib/javascript/jquery.customselect.js
+++ /dev/null
@@ -1,205 +0,0 @@
-
-//select表示select本身,view表示跳出的�?�項
-;(function($){
-
- $.fn.extend({
-
- //計算文字Byte數,並回傳
- getByteLength: function(strIN){
- var i, cnt=0;
-
- for (i=0; i
= 4) cnt+=2;
- else cnt++;
- }
-
- return cnt;
- }
-
- });
-
- $.fn.extend({
-
- //檢查文字的Byte數,超�?�limit指定的個數的話,就回傳true 和 未超�?�之�?的文字index
- getIndexByByte: function(strIN,limit){
- var i, cnt=0;
-
- for (i=0; i= 4) cnt+=2;
- else cnt++;
-
- if(cnt>limit)
- {
- return [true,i];
- }
- }
-
- return false;
- }
-
- });
-
- $.fn.extend({
-
- finalselect: function(options) {
-
- var settings =
- {
- id:null,
- animalSpeed:100,
- selectWidth:"190px",
- selectImage:"image/select.png",
- selectText:"My friend",
- zIndex: 0,
- viewHeight:"100px",
- viewWidth:"300px",
- viewMouseoverColor:"#cfdfff",//#dcdcdc
- viewTop:"28px",//top,bottom
- viewLeft:" -1px"//left,right
- };
-
-
- if (typeof(options)!='undefined')
- {
- //將整批options的值assign給settings
- jQuery.extend(settings, options);
- }
-
- var tmp=''
- tmp+='
';
- tmp+='
'+settings.selectText+'
';
-
-
-
- var _handler = function() {
- // 從這裡開始
- $(this).html(tmp);
- bindArrowClick();
- bindSelectMouseover();
- bindSelectMouseleave();
-
- };
-
-
-
- var bindArrowClick=function(){
- var tmp=$('#'+settings.id+'-Text');
- $("#"+settings.id+'-Text').bind("click", function(e){
- var obj=$('#'+settings.id+'-selectshow');
- if(obj.css('display')=='none')
- {
- // obj.slide();
- obj.slideDown(settings.animalSpeed,function(){
- obj.show();
- obj.css('overflow','auto');
- obj.css('overflow-x','hidden');
- });
- }
- else
- {
- obj.slideUp(settings.animalSpeed,function(){
- obj.hide();
- });
- }
-
- });
- };
-
- var bindItemMouseover=function(){
-
- var inx=0;
- while($(".selectitem",$("#"+settings.id+"-selectshow")).get(inx)!=null)
- {
- var item=$(".selectitem",$("#"+settings.id+"-selectshow")).get(inx);
-
- $(item).bind("mouseover", function(e){
- $(this).css('background-color',settings.viewMouseoverColor);
- });
-
- $(item).bind("mouseout", function(e){
- $(this).css('background-color','#fff');
- });
-
- $(item).bind("click", function(e){
-
- var tmpstr=$(".thistext",$(this)).html();
- var arr=$().getIndexByByte(tmpstr,30);
- if(arr[0]==true)
- tmpstr=tmpstr.substring(0,arr[1])+'...';
-
- $(".textshow",$("#"+settings.id+"-Text")).html(tmpstr);
- document.getElementById(settings.id+'-selectshow').style.display="none";
-
- $(".valueshow",$("#"+settings.id+"-Text")).html($(".selectvalue",$(this)).html());
-
- });
-
- inx++;
- }
-
- }
-
- var bindSelectMouseover=function(){
- $('#'+settings.id+'-Text').bind("mouseover",function(){
- if($.browser.msie==false)
- $('#'+settings.id+'-Text').css("background-position","0 -21px");
- });
- }
-
- var bindSelectMouseleave=function(){
- $('#'+settings.id+'-Text').bind("mouseout",function(){
- if($.browser.msie==false)
- $('#'+settings.id+'-Text').css("background-position","0 0px");
- });
- }
-
- this.setViewTop = function(top){
- $('#'+settings.id+'-selectshow').css('top',top+'px');
- }
-
- this.setViewLeft = function(left){
- $('#'+settings.id+'-selectshow').css('left',left+'px');
- }
-
- this.getLength = function(){
- return $('.selectitem',$('#'+settings.id+'-selectshow')).length;
- }
-
-
- //add item到select裡�?�
- //在傳itemtext時,用包起�?顯示的 "文字"
- //例如:哇哈哈,這樣select�?�擇後,就會顯示 "哇哈哈"
- this.addItem = function(itemtext,itemvalue){
-
- var itemhtml=''+itemtext
- +'
'+itemvalue+'
';
-
- $("#"+settings.id+'-selectshow').html($("#"+settings.id+'-selectshow').html()+itemhtml);
-
- bindItemMouseover();
- };
-
- this.removeItem = function(index){
- if($('.selectitem',$('#'+settings.id+'-selectshow')).length>index)
- $($('.selectitem',$('#'+settings.id+'-selectshow')).get(index)).remove();
- if($('.selectborder',$('#'+settings.id+'-selectshow')).length>index)
- $($('.selectborder',$('#'+settings.id+'-selectshow')).get(index)).remove();
- }
-
-
-
- this.getValue = function(){
- return $('.valueshow',$('#'+settings.id+'-Text')).html();
- }
-
- this.getText = function(){
- return $('.textshow',$('#'+settings.id+'-Text')).html();
- }
-
-
- return this.each(_handler);
- }
-
- });
-
-})(jQuery);
\ No newline at end of file