diff --git a/public/javascripts/admin/orders/add.js b/public/javascripts/admin/orders/add.js index 9bc8dc3..7b201e0 100644 --- a/public/javascripts/admin/orders/add.js +++ b/public/javascripts/admin/orders/add.js @@ -17,7 +17,7 @@ document.getElementById("add-order").addEventListener("click", () => {

${locals.order} ${id}

- +
diff --git a/public/javascripts/index.js b/public/javascripts/index.js index 03aaeb5..fd3ecb6 100644 --- a/public/javascripts/index.js +++ b/public/javascripts/index.js @@ -18,7 +18,7 @@ document.getElementById("add-order").addEventListener("click", () => {

${locals.order} ${id}

- +
diff --git a/public/stylesheets/style.css b/public/stylesheets/style.css index c8324d0..3270631 100644 --- a/public/stylesheets/style.css +++ b/public/stylesheets/style.css @@ -248,6 +248,17 @@ p.before-link a::before { width: min-content; } +input::-webkit-calendar-picker-indicator { + display: none;/* remove default arrow */ +} + +.list_arrow:after { + content: url(https://i.stack.imgur.com/i9WFO.png); + margin-left: -20px; + padding: .1em; + pointer-events:none; +} + @media (hover: none) and (pointer: coarse) { body { font-size: xx-large; diff --git a/views/admin/orders/add.pug b/views/admin/orders/add.pug index cff7684..2142773 100644 --- a/views/admin/orders/add.pug +++ b/views/admin/orders/add.pug @@ -6,7 +6,7 @@ block content form#order(method="POST") div.field label(for="department")=__("department") + ":" - input#department(type="list" list="department-list" name="department" autocomplete="off" required) + +list("department", "department-list", "department", "", "off", true) datalist#department-list each department in departments option(value=department.name) @@ -20,13 +20,13 @@ block content div.field label(for="username")=__("username") - input#username(list="usernames" name="username" autocomplete="off") + +list("username", "usernames", "username", "", "off") div#order1.order h2=__("order") + " 1" div.field label(for="sandwich1")=__("sandwich") + ":" - input#sandwich1(type="list" list="sandwich-list" name="sandwiches[1]" autocomplete="off" required) + +list("sandwich1", "sandwich-list", "sandwiches[1]", "", "off", true) div.field label(for="day1")=__("index.day") + ":" input#day1(type="date" name="dates[1]" required) diff --git a/views/admin/orders/edit.pug b/views/admin/orders/edit.pug index 8963ac7..5893736 100644 --- a/views/admin/orders/edit.pug +++ b/views/admin/orders/edit.pug @@ -7,7 +7,7 @@ block content input(type="hidden" name="id" value=order.id) div.field label(for="department")=__("department") + ":" - input#department(type="list" list="department-list" name="department" autocomplete="off" value=order.Department.name required) + +list("department", "department-list", "department", order.Department.name, "off", true) datalist#department-list each department in departments option(value=department.name) @@ -21,7 +21,7 @@ block content div.field label(for="username")=__("username") - input#username(list="usernames" name="username" value=order.User ? order.User.username : "" autocomplete="off") + +list("username", "usernames", "username", order.User ? order.User.username : "", "off") - i = 0; each sandwich in order.Sandwiches @@ -30,7 +30,7 @@ block content h2=__("order") + " " + i div.field label(for="sandwich"+i)=__("sandwich") + ":" - input(id="#sandwich"+i type="list" list="sandwich-list" name="sandwiches["+i+"]" autocomplete="off" value=sandwich.name required) + +list("#sandwich"+i, "sandwich-list", "sandwiches["+i+"]", sandwich.name, "off", true) div.field label(for="day"+i)=__("index.day") + ":" input(id="#day"+i type="date" name="dates["+i+"]" value=sandwich.SandwichOrder.date required) diff --git a/views/admin/users/add.pug b/views/admin/users/add.pug index 70872bd..d085264 100644 --- a/views/admin/users/add.pug +++ b/views/admin/users/add.pug @@ -19,7 +19,7 @@ block content input#lastName(type="text" name="lastName" required) div.field label(for="department")=__("department") + ":" - input#department(type="list" list="department-list" name="department" required) + +list("department", "department-list", "department", "", "off", true) div.field label(for="password")=__("password") + ":" input#password(type="password" name="password" required) diff --git a/views/admin/users/edit.pug b/views/admin/users/edit.pug index 5528b26..ea1c399 100644 --- a/views/admin/users/edit.pug +++ b/views/admin/users/edit.pug @@ -20,7 +20,7 @@ block content input#lastName(type="text" name="lastName" value=targetUser.lastName required) div.field label(for="department")=__("department") + ":" - input#department(type="list" list="department-list" name="department" value=targetUser.DepartmentName required) + +list("department", "department-list", "department", targetUser.DepartmentName, "off", true) div.field label(for="password")=__("password") + ":" input#password(type="password" name="password") diff --git a/views/index.pug b/views/index.pug index d22f5a0..33298b1 100644 --- a/views/index.pug +++ b/views/index.pug @@ -7,7 +7,7 @@ block content form#order(action="/order" method="POST") div.field label(for="department")=__("department")+":" - input#department(type="list" list="department-list" name="department" value=user ? user.DepartmentName : "" autocomplete="off" required) + +list("department", "department-list", "department", user ? user.DepartmentName : "", "off", true) datalist#department-list each department in departments option(value=department.name) @@ -23,7 +23,7 @@ block content h2=__("order")+" 1" div.field label(for="sandwich1")=__("sandwich")+":" - input#sandwich1(type="list" list="sandwich-list" name="sandwiches[1]" autocomplete="off" required) + +list("sandwich1", "sandwich-list", "sandwiches[1]", "", "off", true) div.field label(for="day1")=__("index.day")+":" input#day1(type="date" min=date.firstDate ? date.firstDate : "" max=date.lastDate ? date.lastDate : "" name="dates[1]" required) diff --git a/views/layout.pug b/views/layout.pug index e6f9974..dcb3e1f 100644 --- a/views/layout.pug +++ b/views/layout.pug @@ -76,7 +76,7 @@ html input#phoneNumberContact(type="tel" name="phoneNumber") div.field label(for="subjectContact")="* "+__("layout.subject") - input#subjectContact(list="subjectContactList" autocomplete="off" name="subject" required) + +list("subjectContact", "subjectContactList", "subject", "", "off", true) datalist#subjectContactList option(value=__("layout.commandEdit")) option(value=__("layout.commandRemove")) diff --git a/views/mixin.pug b/views/mixin.pug index fb8b888..07a6dc2 100644 --- a/views/mixin.pug +++ b/views/mixin.pug @@ -1,3 +1,7 @@ mixin submit(value) div.recaptcha.recaptcha-cb input(type="submit" value!=value) + +mixin list(id, list, name, value="", autocomplete="on", required="false") + span.list_arrow + input(id=id type="list" list=list name=name value=value autocomplete=autocomplete required=required) diff --git a/views/profile.pug b/views/profile.pug index ee77330..4dde51b 100644 --- a/views/profile.pug +++ b/views/profile.pug @@ -19,7 +19,7 @@ block content input#lastName(type="text" name="lastName" value=user.lastName required) div.field label(for="department")=__("department")+":" - input#department(type="list" list="department-list" name="department" value=user.DepartmentName required) + +list("department", "department-list", "department", user.DepartmentName, "off", true) div.field label(for="password")=__("password")+":" input#password(type="password" name="password") diff --git a/views/register.pug b/views/register.pug index 95e713e..9a0414c 100644 --- a/views/register.pug +++ b/views/register.pug @@ -17,7 +17,7 @@ block content input#lastName(type="text" name="lastName" required) div.field label(for="department")=__("department")+":" - input#department(type="list" list="department-list" name="department" required) + +list("department", "department-list", "department", "", "off", true) div.field label(for="password")=__("password")+":" input#password(type="password" name="password" required)