Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
OLAT CI-CD Testing Project
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Requirements
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Deploy
Package Registry
Container Registry
Model registry
Operate
Terraform modules
Monitor
Service Desk
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Lars Oliver Dam
OLAT CI-CD Testing Project
Commits
7d29e55c
Commit
7d29e55c
authored
13 years ago
by
srosse
Browse files
Options
Downloads
Patches
Plain Diff
OO-84: set taskText in the VelocityContainer + add some generics
parent
41a6fb48
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/main/java/org/olat/course/nodes/ta/TaskController.java
+20
-16
20 additions, 16 deletions
src/main/java/org/olat/course/nodes/ta/TaskController.java
src/main/java/org/olat/course/properties/CoursePropertyManager.java
+1
-1
1 addition, 1 deletion
...ava/org/olat/course/properties/CoursePropertyManager.java
with
21 additions
and
17 deletions
src/main/java/org/olat/course/nodes/ta/TaskController.java
+
20
−
16
View file @
7d29e55c
...
@@ -54,6 +54,7 @@ import org.olat.core.id.Identity;
...
@@ -54,6 +54,7 @@ import org.olat.core.id.Identity;
import
org.olat.core.logging.AssertException
;
import
org.olat.core.logging.AssertException
;
import
org.olat.core.logging.OLog
;
import
org.olat.core.logging.OLog
;
import
org.olat.core.logging.Tracing
;
import
org.olat.core.logging.Tracing
;
import
org.olat.core.util.StringHelper
;
import
org.olat.core.util.vfs.VFSItem
;
import
org.olat.core.util.vfs.VFSItem
;
import
org.olat.core.util.vfs.VFSLeaf
;
import
org.olat.core.util.vfs.VFSLeaf
;
import
org.olat.core.util.vfs.VFSMediaResource
;
import
org.olat.core.util.vfs.VFSMediaResource
;
...
@@ -145,7 +146,7 @@ public class TaskController extends BasicController {
...
@@ -145,7 +146,7 @@ public class TaskController extends BasicController {
taskLaunchButton
.
setTarget
(
"_blank"
);
taskLaunchButton
.
setTarget
(
"_blank"
);
taskLaunchButton
.
setAjaxEnabled
(
false
);
// opened in new window
taskLaunchButton
.
setAjaxEnabled
(
false
);
// opened in new window
if
(
(
taskText
!=
null
)
&&
(
taskText
.
length
()
>
0
)
)
{
if
(
StringHelper
.
containsNonWhitespace
(
taskText
)
)
{
myContent
.
contextPut
(
VC_TASKTEXT
,
taskText
);
myContent
.
contextPut
(
VC_TASKTEXT
,
taskText
);
}
}
...
@@ -167,7 +168,7 @@ public class TaskController extends BasicController {
...
@@ -167,7 +168,7 @@ public class TaskController extends BasicController {
myContent
=
createVelocityContainer
(
"taskChoose"
);
myContent
=
createVelocityContainer
(
"taskChoose"
);
List
availableTasks
=
compileAvailableTasks
();
List
<
String
>
availableTasks
=
compileAvailableTasks
();
if
(
availableTasks
.
size
()
==
0
&&
assignedTask
==
null
)
{
// no more tasks available
if
(
availableTasks
.
size
()
==
0
&&
assignedTask
==
null
)
{
// no more tasks available
myContent
.
contextPut
(
VC_NOMORETASKS
,
translate
(
"task.nomoretasks"
));
myContent
.
contextPut
(
VC_NOMORETASKS
,
translate
(
"task.nomoretasks"
));
}
else
{
}
else
{
...
@@ -241,7 +242,7 @@ public class TaskController extends BasicController {
...
@@ -241,7 +242,7 @@ public class TaskController extends BasicController {
}
else
if
(
ta
.
getActionId
().
equals
(
TaskController
.
ACTION_SELECT
)){
}
else
if
(
ta
.
getActionId
().
equals
(
TaskController
.
ACTION_SELECT
)){
// select a task
// select a task
assignedTask
=
(
String
)
taskTableModel
.
getValueAt
(
ta
.
getRowId
(),
0
);
assignedTask
=
(
String
)
taskTableModel
.
getValueAt
(
ta
.
getRowId
(),
0
);
List
availableTasks
=
compileAvailableTasks
();
List
<
String
>
availableTasks
=
compileAvailableTasks
();
if
(!
availableTasks
.
contains
(
assignedTask
))
{
if
(!
availableTasks
.
contains
(
assignedTask
))
{
showWarning
(
"task.chosen"
);
showWarning
(
"task.chosen"
);
taskTableModel
.
setObjects
(
availableTasks
);
taskTableModel
.
setObjects
(
availableTasks
);
...
@@ -256,7 +257,7 @@ public class TaskController extends BasicController {
...
@@ -256,7 +257,7 @@ public class TaskController extends BasicController {
pushTaskToVC
();
pushTaskToVC
();
}
else
{
}
else
{
//if assignedTask selected, and deselectable, update taskTableModel
//if assignedTask selected, and deselectable, update taskTableModel
List
allTasks
=
compileAvailableTasks
();
List
<
String
>
allTasks
=
compileAvailableTasks
();
if
(!
samplingWithReplacement
)
{
if
(!
samplingWithReplacement
)
{
//if assignable to only one user, this means that the assignedTask is no more in the availableTasks, but show it in taskTableModel
//if assignable to only one user, this means that the assignedTask is no more in the availableTasks, but show it in taskTableModel
allTasks
.
add
(
assignedTask
);
allTasks
.
add
(
assignedTask
);
...
@@ -268,7 +269,7 @@ public class TaskController extends BasicController {
...
@@ -268,7 +269,7 @@ public class TaskController extends BasicController {
}
else
if
(
ta
.
getActionId
().
equals
(
TaskController
.
ACTION_DESELECT
))
{
}
else
if
(
ta
.
getActionId
().
equals
(
TaskController
.
ACTION_DESELECT
))
{
if
(
assignedTask
!=
null
)
{
if
(
assignedTask
!=
null
)
{
this
.
removeAssignedTask
(
ureq
.
getIdentity
(),
assignedTask
);
this
.
removeAssignedTask
(
ureq
.
getIdentity
(),
assignedTask
);
List
availableTasks
=
compileAvailableTasks
();
List
<
String
>
availableTasks
=
compileAvailableTasks
();
taskTableModel
.
setObjects
(
availableTasks
);
taskTableModel
.
setObjects
(
availableTasks
);
tableCtr
.
modelChanged
();
tableCtr
.
modelChanged
();
}
}
...
@@ -283,6 +284,9 @@ public class TaskController extends BasicController {
...
@@ -283,6 +284,9 @@ public class TaskController extends BasicController {
}
}
myContent
=
createVelocityContainer
(
"taskAssigned"
);
myContent
=
createVelocityContainer
(
"taskAssigned"
);
if
(
StringHelper
.
containsNonWhitespace
(
taskText
))
{
myContent
.
contextPut
(
VC_TASKTEXT
,
taskText
);
}
myContent
.
put
(
"task.launch"
,
taskLaunchButton
);
myContent
.
put
(
"task.launch"
,
taskLaunchButton
);
myContent
.
contextPut
(
VC_ASSIGNEDTASK
,
assignedTask
);
myContent
.
contextPut
(
VC_ASSIGNEDTASK
,
assignedTask
);
myContent
.
contextPut
(
VC_ASSIGNEDTASK_NEWWINDOW
,
Boolean
.
TRUE
);
myContent
.
contextPut
(
VC_ASSIGNEDTASK_NEWWINDOW
,
Boolean
.
TRUE
);
...
@@ -295,7 +299,7 @@ public class TaskController extends BasicController {
...
@@ -295,7 +299,7 @@ public class TaskController extends BasicController {
* @return name of the assigned task or null if no more tasks are available.
* @return name of the assigned task or null if no more tasks are available.
*/
*/
private
String
assignTask
(
Identity
identity
)
{
private
String
assignTask
(
Identity
identity
)
{
List
availableTasks
=
compileAvailableTasks
();
List
<
String
>
availableTasks
=
compileAvailableTasks
();
if
(
availableTasks
.
size
()
==
0
&&
samplingWithReplacement
)
{
if
(
availableTasks
.
size
()
==
0
&&
samplingWithReplacement
)
{
unmarkAllSampledTasks
();
// unmark all tasks if samplingWithReplacement and no more tasks available
unmarkAllSampledTasks
();
// unmark all tasks if samplingWithReplacement and no more tasks available
availableTasks
=
compileAvailableTasks
();
// refetch tasks
availableTasks
=
compileAvailableTasks
();
// refetch tasks
...
@@ -310,7 +314,7 @@ public class TaskController extends BasicController {
...
@@ -310,7 +314,7 @@ public class TaskController extends BasicController {
}
}
public
static
String
getAssignedTask
(
Identity
identity
,
CourseEnvironment
courseEnv
,
CourseNode
node
)
{
public
static
String
getAssignedTask
(
Identity
identity
,
CourseEnvironment
courseEnv
,
CourseNode
node
)
{
List
samples
=
courseEnv
.
getCoursePropertyManager
().
findCourseNodeProperties
(
node
,
identity
,
null
,
PROP_ASSIGNED
);
List
<
Property
>
samples
=
courseEnv
.
getCoursePropertyManager
().
findCourseNodeProperties
(
node
,
identity
,
null
,
PROP_ASSIGNED
);
if
(
samples
.
size
()
==
0
)
return
null
;
// no sample assigned yet
if
(
samples
.
size
()
==
0
)
return
null
;
// no sample assigned yet
return
((
Property
)
samples
.
get
(
0
)).
getStringValue
();
return
((
Property
)
samples
.
get
(
0
)).
getStringValue
();
}
}
...
@@ -329,9 +333,9 @@ public class TaskController extends BasicController {
...
@@ -329,9 +333,9 @@ public class TaskController extends BasicController {
private
void
removeAssignedTask
(
Identity
identity
,
String
task
)
{
private
void
removeAssignedTask
(
Identity
identity
,
String
task
)
{
CoursePropertyManager
cpm
=
courseEnv
.
getCoursePropertyManager
();
CoursePropertyManager
cpm
=
courseEnv
.
getCoursePropertyManager
();
//remove assigned
//remove assigned
List
properties
=
cpm
.
findCourseNodeProperties
(
node
,
identity
,
null
,
PROP_ASSIGNED
);
List
<
Property
>
properties
=
cpm
.
findCourseNodeProperties
(
node
,
identity
,
null
,
PROP_ASSIGNED
);
if
(
properties
!=
null
&&
properties
.
size
()>
0
)
{
if
(
properties
!=
null
&&
properties
.
size
()>
0
)
{
Property
propety
=
(
Property
)
properties
.
get
(
0
);
Property
propety
=
properties
.
get
(
0
);
cpm
.
deleteProperty
(
propety
);
cpm
.
deleteProperty
(
propety
);
assignedTask
=
null
;
assignedTask
=
null
;
}
}
...
@@ -358,10 +362,10 @@ public class TaskController extends BasicController {
...
@@ -358,10 +362,10 @@ public class TaskController extends BasicController {
* which have not been sampled so far.
* which have not been sampled so far.
* @return List of available tasks.
* @return List of available tasks.
*/
*/
private
List
compileAvailableTasks
()
{
private
List
<
String
>
compileAvailableTasks
()
{
File
[]
taskSources
=
taskFolder
.
listFiles
();
File
[]
taskSources
=
taskFolder
.
listFiles
();
List
tasks
=
new
ArrayList
(
taskSources
.
length
);
List
<
String
>
tasks
=
new
ArrayList
<
String
>
(
taskSources
.
length
);
List
sampledTasks
=
compileSampledTasks
();
List
<
String
>
sampledTasks
=
compileSampledTasks
();
for
(
int
i
=
0
;
i
<
taskSources
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
taskSources
.
length
;
i
++)
{
File
nextTask
=
taskSources
[
i
];
File
nextTask
=
taskSources
[
i
];
if
(
nextTask
.
isFile
()
&&
!
sampledTasks
.
contains
(
nextTask
.
getName
()))
if
(
nextTask
.
isFile
()
&&
!
sampledTasks
.
contains
(
nextTask
.
getName
()))
...
@@ -374,11 +378,11 @@ public class TaskController extends BasicController {
...
@@ -374,11 +378,11 @@ public class TaskController extends BasicController {
* Compile a list of tasks marked as sampled.
* Compile a list of tasks marked as sampled.
* @return List of sampled tasks.
* @return List of sampled tasks.
*/
*/
private
List
compileSampledTasks
()
{
private
List
<
String
>
compileSampledTasks
()
{
List
sampledTasks
=
new
ArrayList
();
List
<
String
>
sampledTasks
=
new
ArrayList
<
String
>
();
List
samples
=
courseEnv
.
getCoursePropertyManager
()
List
<
Property
>
samples
=
courseEnv
.
getCoursePropertyManager
()
.
findCourseNodeProperties
(
node
,
null
,
null
,
PROP_SAMPLED
);
.
findCourseNodeProperties
(
node
,
null
,
null
,
PROP_SAMPLED
);
for
(
Iterator
iter
=
samples
.
iterator
();
iter
.
hasNext
();)
{
for
(
Iterator
<
Property
>
iter
=
samples
.
iterator
();
iter
.
hasNext
();)
{
Property
sample
=
(
Property
)
iter
.
next
();
Property
sample
=
(
Property
)
iter
.
next
();
sampledTasks
.
add
(
sample
.
getStringValue
());
sampledTasks
.
add
(
sample
.
getStringValue
());
}
}
...
...
This diff is collapsed.
Click to expand it.
src/main/java/org/olat/course/properties/CoursePropertyManager.java
+
1
−
1
View file @
7d29e55c
...
@@ -91,7 +91,7 @@ public interface CoursePropertyManager extends IdentityAnonymizerCallback {
...
@@ -91,7 +91,7 @@ public interface CoursePropertyManager extends IdentityAnonymizerCallback {
* @param name
* @param name
* @return matching course node properties
* @return matching course node properties
*/
*/
public
List
findCourseNodeProperties
(
CourseNode
node
,
Identity
identity
,
BusinessGroup
grp
,
String
name
);
public
List
<
Property
>
findCourseNodeProperties
(
CourseNode
node
,
Identity
identity
,
BusinessGroup
grp
,
String
name
);
/**
/**
* Find a specific course node property (exact match. I.e. null values are taken into account)
* Find a specific course node property (exact match. I.e. null values are taken into account)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment