Adds 2 buttons to easily reorder selected columns (#4272).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3106 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
66540afc08
commit
4c2264ee42
|
@ -5,15 +5,19 @@
|
||||||
:multiple => true, :size => 10, :style => "width:150px" %>
|
:multiple => true, :size => 10, :style => "width:150px" %>
|
||||||
</td>
|
</td>
|
||||||
<td align="center" valign="middle">
|
<td align="center" valign="middle">
|
||||||
<input type="button" value="-->"
|
<input type="button" value="→"
|
||||||
onclick="moveOptions(this.form.available_columns, this.form.selected_columns);" /><br />
|
onclick="moveOptions(this.form.available_columns, this.form.selected_columns);" /><br />
|
||||||
<input type="button" value="<--"
|
<input type="button" value="←"
|
||||||
onclick="moveOptions(this.form.selected_columns, this.form.available_columns);" />
|
onclick="moveOptions(this.form.selected_columns, this.form.available_columns);" />
|
||||||
</td>
|
</td>
|
||||||
<td><%= select_tag 'query[column_names][]',
|
<td><%= select_tag 'query[column_names][]',
|
||||||
options_for_select(query.columns.collect {|column| [column.caption, column.name]}),
|
options_for_select(query.columns.collect {|column| [column.caption, column.name]}),
|
||||||
:id => 'selected_columns', :multiple => true, :size => 10, :style => "width:150px" %>
|
:id => 'selected_columns', :multiple => true, :size => 10, :style => "width:150px" %>
|
||||||
</td>
|
</td>
|
||||||
|
<td align="center" valign="middle">
|
||||||
|
<input type="button" value="↑" onclick="moveOptionUp(this.form.selected_columns);" /><br />
|
||||||
|
<input type="button" value="↓" onclick="moveOptionDown(this.form.selected_columns);" />
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,17 @@ function addOption(theSel, theText, theValue)
|
||||||
theSel.options[selLength] = newOpt;
|
theSel.options[selLength] = newOpt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function swapOptions(theSel, index1, index2)
|
||||||
|
{
|
||||||
|
var text, value;
|
||||||
|
text = theSel.options[index1].text;
|
||||||
|
value = theSel.options[index1].value;
|
||||||
|
theSel.options[index1].text = theSel.options[index2].text;
|
||||||
|
theSel.options[index1].value = theSel.options[index2].value;
|
||||||
|
theSel.options[index2].text = text;
|
||||||
|
theSel.options[index2].value = value;
|
||||||
|
}
|
||||||
|
|
||||||
function deleteOption(theSel, theIndex)
|
function deleteOption(theSel, theIndex)
|
||||||
{
|
{
|
||||||
var selLength = theSel.length;
|
var selLength = theSel.length;
|
||||||
|
@ -45,6 +56,22 @@ function moveOptions(theSelFrom, theSelTo)
|
||||||
if(NS4) history.go(0);
|
if(NS4) history.go(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function moveOptionUp(theSel) {
|
||||||
|
var index = theSel.selectedIndex;
|
||||||
|
if (index > 0) {
|
||||||
|
swapOptions(theSel, index-1, index);
|
||||||
|
theSel.selectedIndex = index-1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function moveOptionDown(theSel) {
|
||||||
|
var index = theSel.selectedIndex;
|
||||||
|
if (index < theSel.length - 1) {
|
||||||
|
swapOptions(theSel, index, index+1);
|
||||||
|
theSel.selectedIndex = index+1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function selectAllOptions(id)
|
function selectAllOptions(id)
|
||||||
{
|
{
|
||||||
var select = $(id);
|
var select = $(id);
|
||||||
|
|
Loading…
Reference in New Issue