From 61cf4822e1f4080e0625610470f232dd32cb4dd6 Mon Sep 17 00:00:00 2001 From: ulrich Date: Wed, 01 Feb 2017 07:08:31 +0000 Subject: [PATCH] Mustache eingebaut --- src/java/de/uhilger/um/web/NiceFilter.java | 8 +++++++- web/ui/index.html | 8 ++++++++ web/WEB-INF/sql.properties | 2 +- src/java/de/uhilger/um/web/Initialiser.java | 5 ++++- src/java/de/uhilger/um/api/UserMgr.java | 11 ++++++++++- web/ui/ui.js | 12 ++++++------ 6 files changed, 36 insertions(+), 10 deletions(-) diff --git a/src/java/de/uhilger/um/api/UserMgr.java b/src/java/de/uhilger/um/api/UserMgr.java index dcffb9c..24cf481 100644 --- a/src/java/de/uhilger/um/api/UserMgr.java +++ b/src/java/de/uhilger/um/api/UserMgr.java @@ -24,10 +24,13 @@ import de.uhilger.transit.web.WebKontext; import de.uhilger.um.Digester; import de.uhilger.um.daten.User; +import de.uhilger.um.daten.UserData; import de.uhilger.um.daten.UserRole; +import de.uhilger.um.web.Initialiser; import java.sql.Connection; import java.util.List; import java.util.Properties; +import java.util.logging.Logger; import javax.servlet.ServletContext; /** @@ -57,6 +60,8 @@ */ public class UserMgr implements WebKontext { + private static final Logger logger = Logger.getLogger(UserMgr.class.getName()); + /** Zeiger zum Servlet-Kontext dieser Anwendung */ private ServletContext ctx; @@ -85,6 +90,8 @@ /** Mapper-Objekt fuer Benutzer */ private static final Record UserMapper = new GenericRecord(User.class); + /** Mapper-Objekt fuer Benutzerdaten */ + private static final Record UserDataMapper = new GenericRecord(UserData.class); /** Mapper-Objekt fuer Benutzerrollen */ private static final Record UserRoleMapper = new GenericRecord(UserRole.class); @@ -105,7 +112,9 @@ } public List getUserNameList() { - return getDb().select(getSql(SQL_GET_USER_NAME_LIST), WITHOUT_BLOBS); + String sql = getSql(SQL_GET_USER_NAME_LIST); + logger.info(sql); + return getDb().select(sql, UserDataMapper); } public User deleteUser(User user) { diff --git a/src/java/de/uhilger/um/web/Initialiser.java b/src/java/de/uhilger/um/web/Initialiser.java index 1895344..0feeecd 100644 --- a/src/java/de/uhilger/um/web/Initialiser.java +++ b/src/java/de/uhilger/um/web/Initialiser.java @@ -131,6 +131,9 @@ User admin = new User(); admin.setId("admin"); admin.setPw("admin"); + admin.setFirstName("admin"); + admin.setLastName("admin"); + admin.setEmail("none"); UserMgr um = new UserMgr(); um.setServletContext(servletContext); um.createUser(admin); @@ -144,7 +147,7 @@ private boolean dbVorhanden(PersistenceManager pm, String sql) { boolean istVorhanden = false; List<List<String>> list = pm.select(sql, Record.WITHOUT_BLOBS); - if(list.size() > 1) { + if(list != null && list.size() > 1) { istVorhanden = true; logger.fine("Datenbank ist vorhanden"); } diff --git a/src/java/de/uhilger/um/web/NiceFilter.java b/src/java/de/uhilger/um/web/NiceFilter.java index c0d120b..ceb1373 100644 --- a/src/java/de/uhilger/um/web/NiceFilter.java +++ b/src/java/de/uhilger/um/web/NiceFilter.java @@ -28,8 +28,14 @@ import javax.servlet.http.HttpServletRequest; /** + * Filter zum Verkuerzen von URLs * - * @author hilgeru + * @author Copyright (c) Ulrich Hilger, http://uhilger.de + * @author Published under the terms and conditions of the + * <a href="http://www.gnu.org/licenses/agpl-3.0" target="_blank">GNU Affero + * General Public License</a> + * + * @version 2, February 1, 2017 */ public class NiceFilter implements Filter { diff --git a/web/WEB-INF/sql.properties b/web/WEB-INF/sql.properties index 8de6b17..9dac09e 100644 --- a/web/WEB-INF/sql.properties +++ b/web/WEB-INF/sql.properties @@ -24,7 +24,7 @@ where key_name = ? </entry> <entry key="getUserNameList"> - select user_name from app.users + select user_name,user_first,user_last,user_email from app.users </entry> <entry key="getUserList"> select * from app.users diff --git a/web/ui/index.html b/web/ui/index.html index 383671b..498839c 100644 --- a/web/ui/index.html +++ b/web/ui/index.html @@ -6,6 +6,13 @@ <title>Benutzer</title> <link rel="stylesheet" type="text/css" href="/jslib/bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="stile.css"> + <script id="tpl-user-list" type="x-tmpl-mustache"> + {{#List}} + {{#UserData}} + <option value="{{ id }}">{{ id }}</option>' + {{/UserData}} + {{/List}} + </script> </head> <body> <div id="inhalt"> @@ -49,6 +56,7 @@ </div> </div> <script src="/jslib/jquery/jquery.min.js"></script> + <script src="/jslib/mustache/mustache.min.js"></script> <script src="ui.js"></script> <script type="text/javascript" charset="utf-8"> //var ui; diff --git a/web/ui/ui.js b/web/ui/ui.js index 0e7b427..9b362fb 100644 --- a/web/ui/ui.js +++ b/web/ui/ui.js @@ -134,14 +134,14 @@ return user; } +/* + * {"List":[{"List":[{"String":"USER_NAME"},{"String":"admin"},{"String":"ulli"}]}]} + */ function um_show_user_list(resp) { $("#nutzerliste").empty(); - var users = resp.List[0]; - for(var i = 1; i < users.List.length; i++) { - var user = users.List[i]; - $("#nutzerliste").append('<option value=' + user.String + '>' + user.String + '</option>'); - } - $('#nutzerLoeschen').prop( "disabled", true ); + var template = $('#tpl-user-list').html(); + Mustache.parse(template); // optional, speeds up future uses + $("#nutzerliste").append( Mustache.render(template, resp) ); } function um_clear_user_form() { -- Gitblit v1.9.3