changeset f41f48770858 in chronos:default
details: https://hg.tryton.org/chronos?cmd=changeset;node=f41f48770858
description:
Use bootstrap-select for work
issue8708
review266131002
diffstat:
bower.json | 3 ++-
chronos.html | 5 ++++-
chronos.js | 6 +++++-
3 files changed, 11 insertions(+), 3 deletions(-)
diffs (71 lines):
diff -r 83fafb1fa807 -r f41f48770858 bower.json
--- a/bower.json Fri Oct 11 11:15:59 2019 +0200
+++ b/bower.json Fri Oct 18 14:49:04 2019 +0200
@@ -16,6 +16,7 @@
"dependencies": {
"jquery": "^3",
"bootstrap": "^3.3.7",
- "mousetrap": "^1.6.1"
+ "mousetrap": "^1.6.1",
+ "bootstrap-select": "^1.13.11"
}
}
diff -r 83fafb1fa807 -r f41f48770858 chronos.html
--- a/chronos.html Fri Oct 11 11:15:59 2019 +0200
+++ b/chronos.html Fri Oct 18 14:49:04 2019 +0200
@@ -8,6 +8,7 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet"
href="bower_components/bootstrap/dist/css/bootstrap.css"/>
+ <link rel="stylesheet"
href="bower_components/bootstrap-select/dist/css/bootstrap-select.css"/>
<link rel="stylesheet" href="chronos.css"/>
<link rel="manifest" href="manifest.webapp"/>
</head>
@@ -112,7 +113,8 @@
<label class="control-label"
for="selectWork">Work</label>
<select id="selectWork"
- class="form-control mousetrap"
+ class="form-control mousetrap selectpicker"
+ data-live-search="true"
required=""></select>
</div>
<div class="form-group">
@@ -136,6 +138,7 @@
</div>
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.js"></script>
+ <script
src="bower_components/bootstrap-select/dist/js/bootstrap-select.js"></script>
<script src="bower_components/mousetrap/mousetrap.js"></script>
<script src="backend.js"></script>
<script src="chronos.js"></script>
diff -r 83fafb1fa807 -r f41f48770858 chronos.js
--- a/chronos.js Fri Oct 11 11:15:59 2019 +0200
+++ b/chronos.js Fri Oct 18 14:49:04 2019 +0200
@@ -269,6 +269,9 @@
var current = new Date(date.attr('datetime')).setHours(0, 0, 0, 0);
sendMessage('works', function(works) {
selectWork.children().remove();
+ // Add an empty option to prevent bootstrap-select
+ // from setting the first one
+ selectWork.append('<option/>');
jQuery.each(works, function() {
if ((!this.start ||
(new Date(this.start).setHours(0, 0, 0, 0) <= current)) &
@@ -278,6 +281,7 @@
jQuery('<option/>').val(this.id).text(this.name));
}
});
+ selectWork.selectpicker('refresh');
});
}
@@ -329,7 +333,7 @@
formDate.attr('datetime', date.attr('datetime'));
inputId.val(id);
inputDuration.val(duration);
- selectWork.val(work);
+ selectWork.selectpicker('val', work || '');
inputDescription.val(description);
}