mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-23 18:03:17 +00:00
Merge branch '3.8'
This commit is contained in:
@@ -37,16 +37,13 @@
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
var container = $('#reorder_box');//p4.Dialog.get(1).getDomElement();
|
||||
|
||||
$('button.autoorder', container).bind('click', function(){
|
||||
console.log("click autoorder");
|
||||
autoorder();
|
||||
return false;
|
||||
});
|
||||
$('button.reverseorder', container).bind('click', function(){
|
||||
console.log("click reverse order");
|
||||
reverse_order();
|
||||
return false;
|
||||
});
|
||||
@@ -54,102 +51,43 @@
|
||||
function autoorder()
|
||||
{
|
||||
var val = $.trim($('#auto_order').val());
|
||||
|
||||
if(val == '') {
|
||||
return;
|
||||
}
|
||||
|
||||
var sorter = {};
|
||||
|
||||
var diapos = [];
|
||||
$('#reorder_box .diapo form').each(function(i,n){
|
||||
var id = $('input[name=id]',n).val();
|
||||
|
||||
switch(val)
|
||||
{
|
||||
case 'title':
|
||||
default:
|
||||
var data = $('input[name=title]',n).val();
|
||||
break;
|
||||
case 'default':
|
||||
var data = $('input[name=default]',n).val();
|
||||
break;
|
||||
}
|
||||
sorter[id] = data;
|
||||
diapos.push({
|
||||
"title": $('input[name=title]',n).val(),
|
||||
"order" : parseInt($('input[name=default]',n).val()),
|
||||
"id" : $('input[name=id]',n).val()
|
||||
});
|
||||
});
|
||||
|
||||
var data_type = 'string';
|
||||
var sorterCallback;
|
||||
|
||||
switch(val)
|
||||
{
|
||||
case 'default':
|
||||
var data_type = 'integer';
|
||||
break;
|
||||
}
|
||||
|
||||
sorter = arraySortByValue(sorter, data_type);
|
||||
|
||||
var last_moved = false;
|
||||
|
||||
for(i in sorter)
|
||||
{
|
||||
var elem = $('#ORDER_'+i);
|
||||
if(last_moved) {
|
||||
elem.after(last_moved);
|
||||
if (val === "default") {
|
||||
sorterCallback = function(diapo) {return diapo.order;};
|
||||
} else {
|
||||
$('#reorder_box .elements').prepend(elem);
|
||||
}
|
||||
last_moved = elem;
|
||||
sorterCallback = function(diapo) {return diapo.title;};
|
||||
}
|
||||
|
||||
}
|
||||
var elements = [];
|
||||
|
||||
function arraySortByValue(datas, data_type) {
|
||||
var tmp = new Array();
|
||||
|
||||
for (i in datas) {
|
||||
tmp.push({
|
||||
v: i,
|
||||
c: datas[i].toUpperCase(),
|
||||
o: datas[i]
|
||||
_.chain(diapos)
|
||||
.sortBy(sorterCallback)
|
||||
.each(function(diapo) {
|
||||
elements.push($('#ORDER_'+ diapo.id));
|
||||
});
|
||||
|
||||
$('#reorder_box .elements').append(elements);
|
||||
}
|
||||
|
||||
switch(data_type)
|
||||
{
|
||||
case 'string':
|
||||
tmp.sort(function (x, y) {
|
||||
return y.c < x.c;
|
||||
});
|
||||
break;
|
||||
case 'integer':
|
||||
tmp.sort(function (x, y) {
|
||||
return parseInt(y.c) < parseInt(x.c);
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
||||
var out = {};
|
||||
|
||||
for (i in tmp) {
|
||||
out[tmp[i].v] = tmp[i].o;
|
||||
}
|
||||
|
||||
return out;
|
||||
}
|
||||
|
||||
|
||||
function reverse_order() {
|
||||
var elems = $('#reorder_box .diapo');
|
||||
|
||||
var last_moved = false;
|
||||
|
||||
elems.each(function(i,n){
|
||||
var elem = $(n);
|
||||
if(last_moved) {
|
||||
elem.before(last_moved);
|
||||
} else {
|
||||
$('#reorder_box .elements').append(elem);
|
||||
}
|
||||
last_moved = elem;
|
||||
var $container = $('#reorder_box .elements');
|
||||
$('#reorder_box .diapo').each(function() {
|
||||
$(this).prependTo($container);
|
||||
});
|
||||
}
|
||||
|
||||
|
@@ -44,115 +44,53 @@
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
$('button.reverseorder', container).bind('click', function(){
|
||||
reverse_order();
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
function autoorder()
|
||||
{
|
||||
var val = $.trim($('#auto_order').val());
|
||||
if(val == '')
|
||||
|
||||
if(val == '') {
|
||||
return;
|
||||
}
|
||||
|
||||
var sorter = {};
|
||||
|
||||
var diapos = [];
|
||||
$('#reorder_box .diapo form').each(function(i,n){
|
||||
var id = $('input[name=id]',n).val();
|
||||
|
||||
switch(val)
|
||||
{
|
||||
case 'title':
|
||||
default:
|
||||
var data = $('input[name=title]',n).val();
|
||||
break;
|
||||
case 'default':
|
||||
var data = $('input[name=default]',n).val();
|
||||
break;
|
||||
}
|
||||
sorter[id] = data;
|
||||
diapos.push({
|
||||
"title": $('input[name=title]',n).val(),
|
||||
"order" : parseInt($('input[name=default]',n).val()),
|
||||
"id" : $('input[name=id]',n).val()
|
||||
});
|
||||
});
|
||||
|
||||
var data_type = 'string';
|
||||
var sorterCallback;
|
||||
|
||||
switch(val)
|
||||
{
|
||||
case 'default':
|
||||
var data_type = 'integer';
|
||||
break;
|
||||
if (val === "default") {
|
||||
sorterCallback = function(diapo) {return diapo.order;};
|
||||
} else {
|
||||
sorterCallback = function(diapo) {return diapo.title;};
|
||||
}
|
||||
|
||||
sorter = arraySortByValue(sorter, data_type);
|
||||
var elements = [];
|
||||
|
||||
var last_moved = false;
|
||||
|
||||
for(i in sorter)
|
||||
{
|
||||
var elem = $('#ORDER_'+i);
|
||||
if(last_moved)
|
||||
{
|
||||
elem.after(last_moved);
|
||||
}
|
||||
else
|
||||
{
|
||||
$('#reorder_box .elements').prepend(elem);
|
||||
}
|
||||
last_moved = elem;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function arraySortByValue(datas, data_type) {
|
||||
|
||||
var tmp = new Array();
|
||||
for (i in datas) {
|
||||
tmp.push({
|
||||
v: i,
|
||||
c: datas[i].toUpperCase(),
|
||||
o: datas[i]
|
||||
_.chain(diapos)
|
||||
.sortBy(sorterCallback)
|
||||
.each(function(diapo) {
|
||||
elements.push($('#ORDER_'+ diapo.id));
|
||||
});
|
||||
}
|
||||
switch(data_type)
|
||||
{
|
||||
case 'string':
|
||||
tmp.sort(function (x, y) {
|
||||
return y.c < x.c;
|
||||
});
|
||||
break;
|
||||
case 'integer':
|
||||
tmp.sort(function (x, y) {
|
||||
return parseInt(y.c) < parseInt(x.c);
|
||||
});
|
||||
break;
|
||||
|
||||
$('#reorder_box .elements').append(elements);
|
||||
}
|
||||
|
||||
var out = {};
|
||||
for (i in tmp) {
|
||||
out[tmp[i].v] = tmp[i].o;
|
||||
}
|
||||
|
||||
return out;
|
||||
}
|
||||
|
||||
|
||||
function reverse_order()
|
||||
{
|
||||
var elems = $('#reorder_box .diapo');
|
||||
|
||||
var last_moved = false;
|
||||
|
||||
elems.each(function(i,n){
|
||||
var elem = $(n);
|
||||
if(last_moved)
|
||||
{
|
||||
elem.before(last_moved);
|
||||
}
|
||||
else
|
||||
{
|
||||
$('#reorder_box .elements').append(elem);
|
||||
}
|
||||
last_moved = elem;
|
||||
function reverse_order() {
|
||||
var $container = $('#reorder_box .elements');
|
||||
$('#reorder_box .diapo').each(function() {
|
||||
$(this).prependTo($container);
|
||||
});
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user