Skip to content

Commit

Permalink
SAK-40248: Begin the standardization of the toolbar for table control…
Browse files Browse the repository at this point in the history
…s (e.g. filtering and paging) across tools (sakaiproject#5744)
  • Loading branch information
plukasew authored and bjones86 committed Aug 27, 2018
1 parent 67ee53c commit f176f9e
Show file tree
Hide file tree
Showing 22 changed files with 681 additions and 473 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@



<script type="text/javascript" src="/library/js/spinner.js$!{portalCdnQuery}"></script>
<div class="portletBody container-fluid">
#if ($isOnWorkspaceTab.equals("false"))
#if($menu && $EnabledMenuItemExists)
Expand Down Expand Up @@ -418,101 +418,29 @@
#if ($toolId == "sakai.announcements") ##In tool or admin MOTD...

#if ($displayOptions.isShowAllColumns())
## <h3>$tlang.getString("gen.announcements")</h3>

<div class="page-header">
<h3>$tlang.getString("gen.announcements") <br /><small>$tlang.getFormattedMessage("gen.viewing.days.phrase.brackets", $daysList.toArray())</small></h3>
</div>

#if ($alertMessage)<div class="alertMessage">$tlang.getFormattedMessage("gen.alert.message", $alertMessage)</div><div class="clear"></div>#end
<div class="navPanel">
<div class="viewNav">
<form name="viewForm" class="inlineForm" method="post" action="#toolForm("$action")">
<input type="hidden" name="eventSubmit_doView" value="view" />
<label for="view">
$tlang.getString("view.label")
</label>
<span class="skip">$tlang.getString("gen.listnavselect")</span>
<select id="view" name="view" size="1" onchange="document.viewForm.submit();">
<option value="view.all" #if ($!view == "'view.all")selected="selected"#end >$!tlang.getString('view.all')</option>
<option value="view.public" #if ($!view == "view.public")selected="selected"#end >$!tlang.getString('view.public')</option>
##if ($!groups)
<option value="view.bygroup" #if ($!view == "view.bygroup")selected="selected"#end >$!tlang.getString('view.bygroup')</option>
##end
</select>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>

<div class="sakai-table-toolBar">
<div class="sakai-table-filterContainer">
#define($viewSelectOptions)
<option value="view.all" #if ($!view == "'view.all")selected="selected"#end >$!tlang.getString('view.all')</option>
<option value="view.public" #if ($!view == "view.public")selected="selected"#end >$!tlang.getString('view.public')</option>
<option value="view.bygroup" #if ($!view == "view.bygroup")selected="selected"#end >$!tlang.getString('view.bygroup')</option>
#end
#viewFilterPanel("viewFilterForm", "view", $viewSelectOptions, "doView")
</div>
#if ($messageListVector.iterator().hasNext())
<div class="listNav">
<div class="instruction">
$tlang.getFormattedMessage("gen.viewing.phrase", $topMsgPos, $btmMsgPos, $allMsgNumber)
</div>
#if ($pagesize != 0)
#if ($goFPButton == "true")
<form name="firstpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getString("gen.first")</legend><input type="submit" name="eventSubmit_doList_first" value="|&lt;" title="$tlang.getString("gen.first")" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#else
<form name="firstpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getString("gen.first")</legend><input type="submit" name="eventSubmit_doList_first" value="|&lt;" disabled="disabled" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#end
#if ($goPPButton == "true")
<form name="prevpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getFormattedMessage('gen.previous.pagesize', $pagesize)</legend><input type="submit" name="eventSubmit_doList_prev" value="&lt;" title="$tlang.getFormattedMessage('gen.previous.pagesize', $pagesize)" accesskey="p" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#else
<form name="prevpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getFormattedMessage('gen.previous.pagesize', $pagesize)</legend><input type="submit" name="eventSubmit_doList_prev" value="&lt;" disabled="disabled" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#end
#end

<form name="pagesizeForm" class="inlineForm" method="post" action="#toolForm("$action")">
<input type="hidden" name="eventSubmit_doChange_pagesize" value="changepagesize" />
<span class="skip">$tlang.getString("gen.listnavselect")</span>
<label for="selectPageSize" class="skip">$tlang.getString("gen.select.label")</label>
<select id="selectPageSize" name="selectPageSize" onchange="document.pagesizeForm.submit();">
<option value="5" #if($pagesize == 5) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "5")</option>
<option value="10" #if($pagesize == 10) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "10")</option>
<option value="20" #if($pagesize == 20) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "20")</option>
<option value="50" #if($pagesize == 50) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "50")</option>
<option value="100" #if($pagesize == 100) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "100")</option>
<option value="200" #if($pagesize == 200) selected="selected" #end>$tlang.getFormattedMessage("gen.show", "200")</option>
</select>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#if ($pagesize != 0)
#if ($goNPButton == "true")
<form name="nextpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getFormattedMessage('gen.next.pagesize', $pagesize)</legend><input type="submit" name="eventSubmit_doList_next" value="&gt;" title="$tlang.getFormattedMessage('gen.next.pagesize', $pagesize)" accesskey="n" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#else
<form name="nextpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getFormattedMessage('gen.next.pagesize', $pagesize)</legend><input type="submit" name="eventSubmit_doList_next" value="&gt;" disabled="disabled" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#end
#if ($goLPButton == "true")
<form name="lastpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getString("gen.last")</legend><input type="submit" name="eventSubmit_doList_last" value="&gt;|" title="$tlang.getString("gen.last")" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#else
<form name="lastpageForm" class="inlineForm" method="post" action="#toolForm("$action")">
<fieldset><legend>$tlang.getString("gen.last")</legend><input type="submit" name="eventSubmit_doList_last" value="&gt;|" disabled="disabled" /></fieldset>
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#end
#end
</div>
</div> ##end navPanel
<div class="sakai-table-pagerContainer">
#pagerPanel("pager1")
</div>
#end
</div> ##end sakai-table-toolBar

#if ($messageListVector.iterator().hasNext())
<form name="announcementListForm" action="#toolForm("AnnouncementAction")" method="post">
<div class="table-responsive">
<table class="table table-hover table-striped table-bordered" summary="$tlang.getString('gen.tablecaptionsite')">
Expand Down Expand Up @@ -715,7 +643,6 @@
</table>
</div>
#else
</div> ##end navPanel
<div class="instruction clear">
#if ($!view == "view.public")
$tlang.getString("gen.therearepublic")
Expand All @@ -729,7 +656,7 @@
<input type="hidden" name="sakai_csrf_token" value="$sakai_csrf_token" />
</form>
#end

#if ($messageListVector.iterator().hasNext())
#if ($isOnWorkspaceTab.equals("false"))
##if ($EnableItemCheckBoxes) ## SAK-14021. This checks for new ann permission, which is not a requirement to have update and cancel buttons
Expand Down
22 changes: 18 additions & 4 deletions assignment/bundles/resources/assignment.properties
Original file line number Diff line number Diff line change
Expand Up @@ -315,9 +315,8 @@ dateselectionwidget.ampm = Select AM or PM

letter = Letter grade

lisofass1 = Assignment List

lisofass2 = Assignment List by Student
lisofass1 = Assignments
lisofass2 = Assignments by Student

listassig.allgroups = All groups
listassig.filterbygroup = Filter by group:
Expand Down Expand Up @@ -524,7 +523,7 @@ youmust8 = You must upload an attachment
list.show = Show
list.itemsper = items...
update = Update
removedAssignmentList = Removed Assignments List
removedAssignmentList = Removed Assignments
removeSelected = Remove Selected
selectAssignments = Select Assignments
restoreSelected = Restore Selected
Expand Down Expand Up @@ -1080,3 +1079,18 @@ option.hidepoints=Hide point values (feedback only)
option.studentpreview=Hide Rubric preview from student
grading_rubric=Grading Rubric
asn.list.userubric=This assignment could be graded using a Rubric

# table toolbar common messages
view.label=View
gen.viewing.phrase=Viewing {0} - {1} of {2} items
gen.show=Show {0} items...
# {0} is the pagesize
gen.previous.pagesize = Previous {0}
# {0} is the pagesize
gen.next.pagesize = Next {0}
gen.select.label = Choose page size
gen.listnavselect = To operate the combo box, first press Alt+Down Arrow to open it, and then use the up and down arrow keys to scroll through the options.
search.label=Search
search.button=Search
search.clear=Clear Search

Original file line number Diff line number Diff line change
Expand Up @@ -4764,6 +4764,8 @@ private String build_instructor_view_students_assignment_context(VelocityPortlet

add2ndToolbarFields(data, context);

context.put("view", MODE_INSTRUCTOR_VIEW_STUDENTS_ASSIGNMENT);

return getContext(data).get("template") + TEMPLATE_INSTRUCTOR_VIEW_STUDENTS_ASSIGNMENT;

} // build_instructor_view_students_assignment_context
Expand Down Expand Up @@ -5267,13 +5269,7 @@ public void doView_submission_list_option(RunData data) {

ParameterParser params = data.getParameters();
String option = params.getString("option");
if ("changeView".equals(option)) {
doChange_submission_list_option(data);
} else if ("search".equals(option)) {
state.setAttribute(VIEW_SUBMISSION_SEARCH, params.getString("search"));
} else if ("clearSearch".equals(option)) {
state.removeAttribute(VIEW_SUBMISSION_SEARCH);
} else if ("download".equals(option)) {
if ("download".equals(option)) {
// go to download all page
doPrep_download_all(data);
} else if ("upload".equals(option)) {
Expand All @@ -5286,6 +5282,20 @@ public void doView_submission_list_option(RunData data) {

} // doView_submission_list_option

public void doView_submission_list_search(RunData data)
{
SessionState state = ((JetspeedRunData) data).getPortletSessionState(((JetspeedRunData) data).getJs_peid());

ParameterParser params = data.getParameters();
state.setAttribute(VIEW_SUBMISSION_SEARCH, params.getString("search"));
}

public void doView_submission_list_search_clear(RunData data)
{
SessionState state = ((JetspeedRunData) data).getPortletSessionState(((JetspeedRunData) data).getJs_peid());
state.removeAttribute(VIEW_SUBMISSION_SEARCH);
}

/**
* Action is to view the content of one specific assignment submission
*/
Expand Down
26 changes: 26 additions & 0 deletions assignment/tool/src/webapp/vm/assignment/assignment_macros.vm
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,15 @@
<span class="current">$!tlang.getString( "lisofass1" )</span>
#end
</li>
<li>
#if( !$!view.equals( "lisofass2" ) )
<span>
<a href="#toolLinkParam( "$action" "doView" "view=lisofass2" )" title="$!tlang.getString( "lisofass2" )">$!tlang.getString( "lisofass2" )</a>
</span>
#else
<span class="current">$!tlang.getString( "lisofass2" )</span>
#end
</li>

#if( $withGrade && $!allowGradeSubmission )
<li #if( $prevAction == false ) class="firstToolBarItem" #set( $prevAction = true ) #end>
Expand Down Expand Up @@ -214,6 +223,23 @@
<span class="disabled">$!tlang.getString( "lisofass1" )</span>
</li>
#end
#if( !$!view.equals( "lisofass2" ) )
<li>
<span>
<a href="javascript:void(0)" title="$!tlang.getString( "lisofass2" )" onclick="ASN.submitForm( '$formID', 'view', null, 'lisofass2' ); return false;">
$!tlang.getString( "lisofass2" )
</a>
</span>
</li>
#elseif( $current == "list" )
<li>
<span class="current">$!tlang.getString( "lisofass2" )</span>
</li>
#else
<li>
<span class="disabled">$!tlang.getString( "lisofass2" )</span>
</li>
#end
#if( $withGrade && $!allowGradeSubmission )
<li #if( $prevAction == false ) class="firstToolBarItem" #set( $prevAction = true ) #end>
#if( $current == "gradeReport" )
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,9 @@
$tlang.getString("gen.thearecur1")
</p>
#else
<div class="navPanel row">
<div class="col-sm-5 col-xs-12">
</div>
<div class="col-sm-7 col-xs-12">
#paginator( $topMsgPos $btmMsgPos $allMsgNumber $pagesize $goFPButton $goPPButton $goNPButton $goLPButton $sakai_csrf_token $pagesizes )
<div class="sakai-table-toolBar">
<div class="sakai-table-pagerContainer">
#pagerPanel("pager1")
</div>
</div>
<form name="listDeletedAssignmentsForm" action="#toolForm("$action")" method="post">
Expand Down
Loading

0 comments on commit f176f9e

Please sign in to comment.