Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Devrim Gunyel
core
Commits
2cc2a511
Commit
2cc2a511
authored
Nov 05, 2019
by
Piotr Gawron
Browse files
common code extracted to separate function
parent
4f3bb3e2
Changes
7
Hide whitespace changes
Inline
Side-by-side
frontend-js/src/main/js/gui/admin/AbstractAdminPanel.js
View file @
2cc2a511
...
...
@@ -9,9 +9,7 @@ var Panel = require('../Panel');
var
UserPreferences
=
require
(
'
../../map/data/UserPreferences
'
);
var
GuiConnector
=
require
(
'
../../GuiConnector
'
);
// noinspection JSUnusedLocalSymbols
var
logger
=
require
(
'
../../logger
'
);
// noinspection JSUnusedLocalSymbols
var
Functions
=
require
(
'
../../Functions
'
);
var
Promise
=
require
(
"
bluebird
"
);
...
...
@@ -109,6 +107,36 @@ AbstractAdminPanel.prototype.bindDataTablePageLengthToUserPreference = function
})
};
/**
*
* @param {Object} param
* @param {HTMLElement} param.element
* @param {string} param.preferenceName
*/
AbstractAdminPanel
.
prototype
.
bindDataTableOrderToUserPreference
=
function
(
param
)
{
var
jQueryObject
=
$
(
param
.
element
);
return
this
.
bindUserGuiPreference
({
jQueryObject
:
jQueryObject
,
event
:
'
order.dt
'
,
preferenceName
:
param
.
preferenceName
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
jQueryObject
.
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
jQueryObject
.
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
})
};
/**
*
...
...
frontend-js/src/main/js/gui/admin/ConfigurationAdminPanel.js
View file @
2cc2a511
...
...
@@ -144,25 +144,9 @@ ConfigurationAdminPanel.prototype.createOptionsTable = function (options, type)
return
Promise
.
all
([
self
.
bindDataTablePageLengthToUserPreference
({
element
:
configurationTable
,
preferenceName
:
'
admin-configuration-datatable-length
'
}),
self
.
bindUserGuiPreference
({
jQueryObject
:
$
(
configurationTable
),
event
:
'
order.dt
'
,
preferenceName
:
'
admin-configuration-
'
+
type
+
'
-datatable-order
'
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
$
(
configurationTable
).
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
$
(
configurationTable
).
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
}),
self
.
bindDataTableOrderToUserPreference
({
element
:
configurationTable
,
preferenceName
:
'
admin-configuration-
'
+
type
+
'
-datatable-order
'
})]);
};
...
...
frontend-js/src/main/js/gui/admin/GenomeAdminPanel.js
View file @
2cc2a511
...
...
@@ -173,25 +173,9 @@ GenomeAdminPanel.prototype.init = function () {
}).
then
(
function
()
{
var
genomesTable
=
$
(
"
[name='genomeTable']
"
,
self
.
getElement
())[
0
];
return
self
.
bindUserGuiPreference
({
jQueryObject
:
$
(
genomesTable
),
event
:
'
order.dt
'
,
preferenceName
:
'
admin-genome-datatable-order
'
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
$
(
genomesTable
).
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
$
(
genomesTable
).
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
return
self
.
bindDataTableOrderToUserPreference
({
element
:
genomesTable
,
preferenceName
:
'
admin-genome-datatable-order
'
});
});
};
...
...
frontend-js/src/main/js/gui/admin/MapsAdminPanel.js
View file @
2cc2a511
...
...
@@ -197,25 +197,9 @@ MapsAdminPanel.prototype.init = function () {
var
projectsTable
=
$
(
"
[name='projectsTable']
"
,
self
.
getElement
())[
0
];
return
self
.
bindUserGuiPreference
({
jQueryObject
:
$
(
projectsTable
),
event
:
'
order.dt
'
,
preferenceName
:
'
admin-projects-datatable-order
'
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
$
(
projectsTable
).
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
$
(
projectsTable
).
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
return
self
.
bindDataTableOrderToUserPreference
({
element
:
projectsTable
,
preferenceName
:
'
admin-projects-datatable-order
'
});
});
};
...
...
frontend-js/src/main/js/gui/admin/PluginAdminPanel.js
View file @
2cc2a511
...
...
@@ -145,25 +145,9 @@ PluginAdminPanel.prototype.init = function () {
}).
then
(
function
()
{
var
pluginsTable
=
$
(
"
[name='pluginsTable']
"
,
self
.
getElement
())[
0
];
return
self
.
bindUserGuiPreference
({
jQueryObject
:
$
(
pluginsTable
),
event
:
'
order.dt
'
,
preferenceName
:
'
admin-plugins-datatable-order
'
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
$
(
pluginsTable
).
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
$
(
pluginsTable
).
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
return
self
.
bindDataTableOrderToUserPreference
({
element
:
pluginsTable
,
preferenceName
:
'
admin-plugins-datatable-order
'
});
});
};
...
...
frontend-js/src/main/js/gui/admin/UsersAdminPanel.js
View file @
2cc2a511
...
...
@@ -261,25 +261,9 @@ UsersAdminPanel.prototype.init = function () {
}).
then
(
function
()
{
var
usersTable
=
$
(
"
[name='usersTable']
"
,
self
.
getElement
())[
0
];
return
self
.
bindUserGuiPreference
({
jQueryObject
:
$
(
usersTable
),
event
:
'
order.dt
'
,
preferenceName
:
'
admin-users-datatable-order
'
,
defaultValue
:
'
0-asc
'
,
getter
:
function
()
{
var
order
=
$
(
usersTable
).
DataTable
().
order
();
return
order
[
0
][
0
]
+
"
-
"
+
order
[
0
][
1
];
},
setter
:
function
(
value
)
{
var
tmp
=
value
.
split
(
"
-
"
);
var
column
=
parseInt
(
tmp
[
0
]);
var
order
=
tmp
[
1
];
if
(
Functions
.
isInt
(
column
)
&&
(
order
===
"
asc
"
||
order
===
"
desc
"
))
{
return
$
(
usersTable
).
DataTable
().
order
([
column
,
order
]).
draw
();
}
else
{
logger
.
warn
(
"
Invalid order:
"
+
column
+
"
;
"
+
order
);
}
}
return
self
.
bindDataTableOrderToUserPreference
({
element
:
usersTable
,
preferenceName
:
'
admin-users-datatable-order
'
});
});
};
...
...
frontend-js/src/test/js/minerva-test.js
View file @
2cc2a511
...
...
@@ -282,6 +282,7 @@ describe('minerva global', function () {
});
describe
(
'
createAdmin
'
,
function
()
{
this
.
timeout
(
3000
);
it
(
'
as admin
'
,
function
()
{
helper
.
loginAsAdmin
();
var
options
=
helper
.
createCustomMapOptions
(
null
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment