From d31eecef7830c723ff24ed1d8a33effbec1eca9f Mon Sep 17 00:00:00 2001
From: vvashchenko <vitaliy.vashchenko@nic.cz>
Date: Mon, 1 Aug 2016 14:50:54 +0200
Subject: [PATCH] #422 added regex

---
 .../cz/nic/tablexia/menu/user/UserMenu.java   | 20 +++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/core/src/cz/nic/tablexia/menu/user/UserMenu.java b/core/src/cz/nic/tablexia/menu/user/UserMenu.java
index dc4c99319..7a22d759e 100644
--- a/core/src/cz/nic/tablexia/menu/user/UserMenu.java
+++ b/core/src/cz/nic/tablexia/menu/user/UserMenu.java
@@ -61,6 +61,8 @@ public class UserMenu extends AbstractMenu {
     private static final int    SYNC_REQUEST_DIALOG_MAXIMUM_LENGTH   = 36;
     private static final float  SYNC_DIALOG_TITLE_PAD                = 0.15f;
     private static final float  SYNC_DIALOG_TEXT_FIELD_PAD           = 0.05f;
+    
+    public static final String  CODE_REGEX                           = "(([0-9]|[a-f]){8})-(([0-9]|[a-f]){4})-(([0-9]|[a-f]){4})-(([0-9]|[a-f]){4})-(([0-9]|[a-f]){12})$";
 
     private List<User> users;
 
@@ -166,14 +168,16 @@ public class UserMenu extends AbstractMenu {
                                 @Override
                                 public void clicked(InputEvent event, float x, float y) {
                                     super.clicked(event, x, y);
-                                    DownloadUser syncWork = new DownloadUser(textFiledDialogComponent.getText());
-                                    syncWork.registerListener(new SyncWork.RestSyncListener() {
-                                        @Override
-                                        public void onSuccess(User user) {
-                                            ApplicationBus.getInstance().post(new RefreshUserMenu()).asynchronously();
-                                        }
-                                    });
-                                    RestSynchronizationService.doSyncWork(syncWork);
+                                    if (textFiledDialogComponent.getText().length()>0 && textFiledDialogComponent.getText().toLowerCase().matches(CODE_REGEX)) {
+                                        DownloadUser syncWork = new DownloadUser(textFiledDialogComponent.getText());
+                                        syncWork.registerListener(new SyncWork.RestSyncListener() {
+                                            @Override
+                                            public void onSuccess(User user) {
+                                                ApplicationBus.getInstance().post(new RefreshUserMenu()).asynchronously();
+                                            }
+                                        });
+                                        RestSynchronizationService.doSyncWork(syncWork);
+                                    }
                                     //Prevents keyboard getting stuck
                                     Gdx.input.setOnscreenKeyboardVisible(false);
                                 }
-- 
GitLab