Skip to content
Snippets Groups Projects
Commit 0c46a297 authored by srosse's avatar srosse
Browse files

OO-2405: better sorting of keyword, coverage and additional informations in question pool

parent 82a6d73f
No related branches found
No related tags found
No related merge requests found
......@@ -375,18 +375,43 @@ public class QItemQueriesDAO {
boolean asc = orderBy[0].isAsc();
sb.append(" order by ");
switch(sortKey) {
case "itemType": sb.append(dbRef).append(".type.type"); break;
case "marks": sb.append("marks"); break;
case "rating": sb.append("rating"); break;
default: sb.append(dbRef).append(".").append(sortKey); break;
}
if(asc) {
sb.append(" asc ");
} else {
sb.append(" desc ");
case "itemType":
sb.append(dbRef).append(".type.type ");
appendAsc(sb, asc);
break;
case "marks":
sb.append("marks");
appendAsc(sb, asc);
break;
case "rating":
sb.append("rating");
appendAsc(sb, asc);
sb.append(" nulls last");
break;
case "keywords":
case "coverage":
case "additionalInformations":
sb.append("lower(").append(dbRef).append(".").append(sortKey).append(")");
appendAsc(sb, asc);
sb.append(" nulls last");
break;
default:
sb.append(dbRef).append(".").append(sortKey);
appendAsc(sb, asc);
sb.append(" nulls last");
break;
}
} else {
sb.append(" order by item.key asc ");
}
}
private final StringBuilder appendAsc(StringBuilder sb, boolean asc) {
if(asc) {
sb.append(" asc");
} else {
sb.append(" desc");
}
return sb;
}
}
......@@ -197,9 +197,21 @@ public class GeneralMetadataEditController extends FormBasicController {
if(item instanceof QuestionItemImpl) {
QuestionItemImpl itemImpl = (QuestionItemImpl)item;
itemImpl.setTitle(titleEl.getValue());
itemImpl.setKeywords(keywordsEl.getValue());
itemImpl.setCoverage(coverageEl.getValue());
itemImpl.setAdditionalInformations(addInfosEl.getValue());
if(StringHelper.containsNonWhitespace(keywordsEl.getValue())) {
itemImpl.setKeywords(keywordsEl.getValue());
} else {
itemImpl.setKeywords("");
}
if(StringHelper.containsNonWhitespace(coverageEl.getValue())) {
itemImpl.setCoverage(coverageEl.getValue());
} else {
itemImpl.setCoverage("");
}
if(StringHelper.containsNonWhitespace(addInfosEl.getValue())) {
itemImpl.setAdditionalInformations(addInfosEl.getValue());
} else {
itemImpl.setAdditionalInformations(null);
}
itemImpl.setLanguage(languageEl.getValue());
if(selectedTaxonomicPath != null) {
itemImpl.setTaxonomyLevel(selectedTaxonomicPath);
......
......@@ -124,6 +124,10 @@
<constructor-arg index="0" value="OLAT_11.1.0" />
<property name="alterDbStatements" value="alter_11_x_0_to_11_1_0.sql" />
</bean>
<bean id="database_upgrade_11_1_2" class="org.olat.upgrade.DatabaseUpgrade">
<constructor-arg index="0" value="OLAT_11.1.2" />
<property name="alterDbStatements" value="alter_11_1_1_to_11_1_2.sql" />
</bean>
</list>
</property>
</bean>
......
update o_qp_item set q_keywords=null where q_keywords='';
update o_qp_item set q_coverage=null where q_coverage='';
\ No newline at end of file
update o_qp_item set q_keywords=null where q_keywords='';
update o_qp_item set q_coverage=null where q_coverage='';
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment