Skip to content
Snippets Groups Projects
Commit 6261d986 authored by srosse's avatar srosse
Browse files

Merge OpenOLAT 11.5 to OpenOLAT default branch with 0275890930ca028557410135a5941099744bcdbe

parents 619fa38c dcd1c896
No related branches found
No related tags found
No related merge requests found
......@@ -91,7 +91,7 @@ form.step3.delimiter.tab=$org.olat.course.assessment\:form.step3.delimiter.tab
new.bulk=Neue Massenbewertung starten
passed.false=$org.olat.course.assessment\:passed.false
passed.true=$org.olat.course.assessment\:passed.true
return.files=R\u00FCchgabedateien (ZIP Archiv mit Unterordner pro Teilnehmer)
return.files=R\u00FCckgabedateien (ZIP Archiv mit Unterordner pro Teilnehmer)
return.mime=Die Datei ist kein ZIP Archiv
schedule.date=Datum
schedule.delayed=Sp\u00E4ter, nach Datum
......
......@@ -158,12 +158,16 @@ public class DialogCourseNodeIndexer extends DefaultIndexer implements CourseNod
@Override
public boolean checkAccess(ContextEntry contextEntry, BusinessControl businessControl, Identity identity, Roles roles) {
ContextEntry ce = businessControl.popLauncherContextEntry();
if(ce == null || ce.getOLATResourceable() == null || ce.getOLATResourceable().getResourceableId() == null) {
return true;// it's the node itself
}
OLATResourceable ores = ce.getOLATResourceable();
if(isLogDebugEnabled()) logDebug("OLATResourceable=" + ores);
if ( (ores != null) && (ores.getResourceableTypeName().startsWith("path=")) ) {
if (ores.getResourceableTypeName().startsWith("path=")) {
// => it is a file element, typeName format: 'path=/test1/test2/readme.txt'
return true;
} else if ((ores != null) && ores.getResourceableTypeName().equals( OresHelper.calculateTypeName(Message.class) ) ) {
} else if (ores.getResourceableTypeName().equals(OresHelper.calculateTypeName(Message.class))) {
// it is message => check message access
Long resourceableId = ores.getResourceableId();
Message message = ForumManager.getInstance().loadMessage(resourceableId);
......@@ -174,9 +178,10 @@ public class DialogCourseNodeIndexer extends DefaultIndexer implements CourseNod
boolean isMessageHidden = Status.getStatus(threadtop.getStatusCode()).isHidden();
//assumes that if is owner then is moderator so it is allowed to see the hidden forum threads
//TODO: (LD) fix this!!! - the contextEntry is not the right context for this check
boolean isOwner = BaseSecurityManager.getInstance().isIdentityPermittedOnResourceable(identity, Constants.PERMISSION_ACCESS, contextEntry.getOLATResourceable());
if(isMessageHidden && !isOwner) {
return false;
if(isMessageHidden) {
boolean isOwner = BaseSecurityManager.getInstance()
.isIdentityPermittedOnResourceable(identity, Constants.PERMISSION_ACCESS, contextEntry.getOLATResourceable());
return isOwner;
}
return true;
} else {
......
......@@ -86,7 +86,7 @@ public class FOCourseNodeIndexer extends ForumIndexer implements CourseNodeIndex
public boolean checkAccess(ContextEntry contextEntry, BusinessControl businessControl, Identity identity, Roles roles) {
ContextEntry ce = businessControl.popLauncherContextEntry();
if(ce == null || ce.getOLATResourceable() == null || ce.getOLATResourceable().getResourceableId() == null) {
return false;
return true;//it's the node itself
}
Long resourceableId = ce.getOLATResourceable().getResourceableId();
......
......@@ -52,7 +52,7 @@ import org.olat.search.model.ResultDocument;
* @author srosse, stephane.rosse@frentix.com
*/
public class ResultsController extends FormBasicController {
private FormLink previousTopLink, nextTopLink, previousLink, nextLink;
private FormLink previousLink, nextLink;
private FormLink highlightLink, dishighlightLink;
private int currentPage;
......@@ -77,10 +77,8 @@ public class ResultsController extends FormBasicController {
@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
previousLink = uifactory.addFormLink("previous.page", formLayout);
previousTopLink = uifactory.addFormLink("previous.top.page", null, "previous.page", formLayout, Link.LINK);
nextLink = uifactory.addFormLink("next.page", formLayout);
nextTopLink = uifactory.addFormLink("next.top.page", null, "next.page", formLayout, Link.LINK);
highlightLink = uifactory.addFormLink("highlight.page", "enable.highlighting", "enable.highlighting", formLayout, Link.LINK);
dishighlightLink = uifactory.addFormLink("dishighlight.page", "disable.highlighting", "disable.highlighting", formLayout, Link.LINK);
flc.contextPut("highlight", true);
......@@ -158,9 +156,7 @@ public class ResultsController extends FormBasicController {
flc.contextPut("currentPage", currentPage + 1);
previousLink.setEnabled(currentPage != 0);
previousTopLink.setEnabled(currentPage != 0);
nextLink.setEnabled(currentPage != getMaxPage());
nextTopLink.setEnabled(currentPage != getMaxPage());
String [] args = {Integer.toString(getStartResult()), Integer.toString(getEndResult()), Integer.toString(getNumOfResults())};
flc.contextPut("resultTitle", getTranslator().translate("search.result.title",args));
......@@ -186,9 +182,9 @@ public class ResultsController extends FormBasicController {
highlight = false;
flc.contextPut("highlight", highlight);
reload(ureq);
} else if (source == previousLink || source == previousTopLink) {
} else if (source == previousLink) {
setSearchResults(ureq, Math.max(0, --currentPage));
} else if (source == nextLink || source == nextTopLink) {
} else if (source == nextLink) {
if(documents.size() <= (currentPage + 1) * RESULT_PER_PAGE) {
SearchEvent e = new SearchEvent(getLastLucenePosition() + 1, RESULT_PER_PAGE);
fireEvent(ureq, e);
......
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