mirror of
https://github.com/lrsjng/h5ai.git
synced 2025-05-25 12:34:47 -04:00
Cleans and refactors.
This commit is contained in:
parent
aa725f11f8
commit
24b4f4ce8a
5 changed files with 22 additions and 52 deletions
|
@ -34,7 +34,7 @@ modulejs.define('ext/l10n', ['_', '$', 'core/settings', 'core/langs', 'core/form
|
||||||
'</span>',
|
'</span>',
|
||||||
langOptionTemplate = '<li class="langOption"/>',
|
langOptionTemplate = '<li class="langOption"/>',
|
||||||
|
|
||||||
storekey = 'l10n.lang',
|
storekey = 'ext/l10n',
|
||||||
|
|
||||||
loaded = {
|
loaded = {
|
||||||
en: _.extend({}, defaultTranslations)
|
en: _.extend({}, defaultTranslations)
|
||||||
|
|
|
@ -23,7 +23,7 @@ modulejs.define('ext/preview', ['_', '$', 'core/settings', 'core/resource', 'cor
|
||||||
'</div>' +
|
'</div>' +
|
||||||
'</div>',
|
'</div>',
|
||||||
|
|
||||||
storekey = 'preview.isFullscreen',
|
storekey = 'ext/preview',
|
||||||
|
|
||||||
currentEntries = [],
|
currentEntries = [],
|
||||||
currentIdx = 0,
|
currentIdx = 0,
|
||||||
|
|
|
@ -9,7 +9,7 @@ modulejs.define('ext/sort', ['_', '$', 'core/settings', 'core/resource', 'core/e
|
||||||
natural: false
|
natural: false
|
||||||
}, allsettings.sort),
|
}, allsettings.sort),
|
||||||
|
|
||||||
storekey = 'sort.order',
|
storekey = 'ext/sort',
|
||||||
template = '<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />' +
|
template = '<img src="' + resource.image('ascending') + '" class="sort ascending" alt="ascending" />' +
|
||||||
'<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />',
|
'<img src="' + resource.image('descending') + '" class="sort descending" alt="descending" />',
|
||||||
|
|
||||||
|
|
|
@ -25,25 +25,6 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c
|
||||||
'</a>' +
|
'</a>' +
|
||||||
'</li>',
|
'</li>',
|
||||||
|
|
||||||
// sizeSelectorTemplate = '<li id="sizeSelector" class="view">' +
|
|
||||||
// '<span class="element">' +
|
|
||||||
// '<img src="' + resource.image('size') + '" alt="size"/>' +
|
|
||||||
// '<span class="size-current">small</span>' +
|
|
||||||
// '</span>' +
|
|
||||||
// '<span class="sizeOptions hidden"><ul/></span>' +
|
|
||||||
// '</li>',
|
|
||||||
// sizeOptionTemplate = '<li class="sizeOption"/>',
|
|
||||||
|
|
||||||
// viewSelectorTemplate = '<li id="viewSelector" class="view">' +
|
|
||||||
// '<span class="element">' +
|
|
||||||
// '<img src="' + resource.image('view-details') + '" alt="view-details"/>' +
|
|
||||||
// '<span class="view-current">details</span>' +
|
|
||||||
// '</span>' +
|
|
||||||
// '<span class="viewOptions hidden"><ul/></span>' +
|
|
||||||
// '</li>',
|
|
||||||
// viewOptionTemplate = '<li class="viewOption"/>',
|
|
||||||
|
|
||||||
|
|
||||||
adjustSpacing = function () {
|
adjustSpacing = function () {
|
||||||
|
|
||||||
var contentWidth = $('#content').width(),
|
var contentWidth = $('#content').width(),
|
||||||
|
@ -53,12 +34,16 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c
|
||||||
$view.width(Math.floor(contentWidth / itemWidth) * itemWidth);
|
$view.width(Math.floor(contentWidth / itemWidth) * itemWidth);
|
||||||
},
|
},
|
||||||
|
|
||||||
updateMode = function (mode) {
|
update = function (mode, size) {
|
||||||
|
|
||||||
var $view = $('#view');
|
var $view = $('#view'),
|
||||||
|
stored = store.get(storekey);
|
||||||
|
|
||||||
|
mode = mode || stored && stored.mode;
|
||||||
|
size = size || stored && stored.size;
|
||||||
mode = _.contains(settings.modes, mode) ? mode : settings.modes[0];
|
mode = _.contains(settings.modes, mode) ? mode : settings.modes[0];
|
||||||
store.put(storekey, mode);
|
size = _.contains(settings.sizes, size) ? size : settings.sizes[0];
|
||||||
|
store.put(storekey, {mode: mode, size: size});
|
||||||
|
|
||||||
_.each(modes, function (m) {
|
_.each(modes, function (m) {
|
||||||
if (m === mode) {
|
if (m === mode) {
|
||||||
|
@ -70,16 +55,6 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
adjustSpacing();
|
|
||||||
},
|
|
||||||
|
|
||||||
updateSize = function (size) {
|
|
||||||
|
|
||||||
var $view = $('#view');
|
|
||||||
|
|
||||||
size = _.contains(settings.sizes, size) ? size : settings.sizes[0];
|
|
||||||
// store.put(storekey, viewmode);
|
|
||||||
|
|
||||||
_.each(sizes, function (s) {
|
_.each(sizes, function (s) {
|
||||||
if (s === size) {
|
if (s === size) {
|
||||||
$('#view-' + s).addClass('current');
|
$('#view-' + s).addClass('current');
|
||||||
|
@ -99,41 +74,33 @@ modulejs.define('view/viewmode', ['_', '$', 'core/settings', 'core/resource', 'c
|
||||||
|
|
||||||
settings.modes = _.intersection(settings.modes, modes);
|
settings.modes = _.intersection(settings.modes, modes);
|
||||||
|
|
||||||
if (settings.modes.length) {
|
if (settings.modes.length > 1) {
|
||||||
_.each(modes.slice(0).reverse(), function (mode) {
|
_.each(modes.slice(0).reverse(), function (mode) {
|
||||||
if (_.contains(settings.modes, mode)) {
|
if (_.contains(settings.modes, mode)) {
|
||||||
$(template.replace(/\[MODE\]/g, mode))
|
$(template.replace(/\[MODE\]/g, mode))
|
||||||
.appendTo($navbar)
|
.appendTo($navbar)
|
||||||
.on('click', 'a', function (event) {
|
.on('click', 'a', function (event) {
|
||||||
updateMode(mode);
|
update(mode);
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (settings.sizes.length > 1) {
|
||||||
if (settings.sizes.length) {
|
|
||||||
_.each(sizes.slice(0).reverse(), function (size) {
|
_.each(sizes.slice(0).reverse(), function (size) {
|
||||||
if (_.contains(settings.sizes, size)) {
|
if (_.contains(settings.sizes, size)) {
|
||||||
$(sizeTemplate.replace(/\[SIZE\]/g, size))
|
$(sizeTemplate.replace(/\[SIZE\]/g, size))
|
||||||
.appendTo($navbar)
|
.appendTo($navbar)
|
||||||
.on('click', 'a', function (event) {
|
.on('click', 'a', function (event) {
|
||||||
updateSize(size);
|
update(null, size);
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// $(sizeSelectorTemplate)
|
update();
|
||||||
// .appendTo($navbar);
|
|
||||||
|
|
||||||
// $(viewSelectorTemplate)
|
|
||||||
// .appendTo($navbar);
|
|
||||||
|
|
||||||
updateMode(store.get(storekey));
|
|
||||||
updateSize(sizes[0]);
|
|
||||||
|
|
||||||
event.sub('location.changed', adjustSpacing);
|
event.sub('location.changed', adjustSpacing);
|
||||||
$(window).on('resize', adjustSpacing);
|
$(window).on('resize', adjustSpacing);
|
||||||
|
|
|
@ -23,13 +23,16 @@ Options
|
||||||
/*
|
/*
|
||||||
General view options.
|
General view options.
|
||||||
|
|
||||||
- modes: array of "details", "grid" and/or "icons"
|
- modes: array, subset of ["details", "grid", "icons"]
|
||||||
|
the first value indicates the default view mode. If only one value
|
||||||
|
is given the view mode is fixed and the selector buttons are hidden.
|
||||||
|
The user selected view mode is also stored local in modern browsers
|
||||||
|
so that it will be persistent.
|
||||||
|
- sizes: array, subset of [16, 24, 32, 48, 64, 96]
|
||||||
the first value indicates the default view mode. If only one value
|
the first value indicates the default view mode. If only one value
|
||||||
is given the view mode is fixed and the selector buttons are hidden.
|
is given the view mode is fixed and the selector buttons are hidden.
|
||||||
The user selected view mode is also stored local in modern browsers
|
The user selected view mode is also stored local in modern browsers
|
||||||
so that it will be persistent.
|
so that it will be persistent.
|
||||||
- sizes: array of numbers
|
|
||||||
the numbers seen below are the only accepted values, you may only remove some
|
|
||||||
- setParentFolderLabels: set parent folder labels to real folder names
|
- setParentFolderLabels: set parent folder labels to real folder names
|
||||||
- hideParentFolderLinks: hide parent folder links
|
- hideParentFolderLinks: hide parent folder links
|
||||||
- binaryPrefix: set to true uses 1024B=1KiB when formatting file sizes (see http://en.wikipedia.org/wiki/Binary_prefix)
|
- binaryPrefix: set to true uses 1024B=1KiB when formatting file sizes (see http://en.wikipedia.org/wiki/Binary_prefix)
|
||||||
|
@ -40,7 +43,7 @@ Options
|
||||||
*/
|
*/
|
||||||
"view": {
|
"view": {
|
||||||
"modes": ["details", "grid", "icons"],
|
"modes": ["details", "grid", "icons"],
|
||||||
"sizes": [16, 24, 32, 48, 64, 96],
|
"sizes": [48, 24, 96],
|
||||||
"setParentFolderLabels": true,
|
"setParentFolderLabels": true,
|
||||||
"hideParentFolderLinks": false,
|
"hideParentFolderLinks": false,
|
||||||
"binaryPrefix": false,
|
"binaryPrefix": false,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue