| 
					
				 | 
			
			
				@@ -7,6 +7,7 @@ import android.content.Context; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.content.Intent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.content.IntentFilter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.graphics.Color; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.os.AsyncTask; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.os.Bundle; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.os.Handler; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import android.os.Message; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -32,6 +33,9 @@ import com.util.LogUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.json.JSONException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.json.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.io.IOException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.InetAddress; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.net.UnknownHostException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.ArrayList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -41,6 +45,7 @@ import kr.co.icontrols.wallpadconfig.data.ResultData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadconfig.declare.Common; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadconfig.declare.ID; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadconfig.imap.iMAPDeleteNewMobileDevice; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import kr.co.icontrols.wallpadsupport.WpadActivity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadsupport.WpadImageView; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadsupport.WpadImageView.TOUCH_KIND; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kr.co.icontrols.wallpadsupport.WpadScreen; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -225,6 +230,8 @@ public class ConfigMobileDeviceAddScreen extends WpadScreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 try 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     listView[index].NumText.setText(String.format("%d", Num)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //명칭 가장 앞에 '_' 붙는 것 제거 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(Name.startsWith("_")) Name = Name.substring(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     listView[index].ContentsText.setText(Name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     listView[index].DateText.setText(RegDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     listView[index].AreaBtn.setButtonEventOffDisable(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -466,6 +473,8 @@ public class ConfigMobileDeviceAddScreen extends WpadScreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 8. BR 등록 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (MainActivity.bRemoteCallUse) registerBRReceiver(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //doPingTest("10.1.1.2", "10.1.1.3"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -564,69 +573,85 @@ public class ConfigMobileDeviceAddScreen extends WpadScreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         DebugLogOutput("[[[[ onBrReceive ]]]]  ActionName = " + ActionName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private final int PING_TIMEOUT = 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private String pingResult = "fail"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private class PingTestTask extends AsyncTask<Object, Void, String[]> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        protected String[] doInBackground(Object... params) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            pingResult = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String type = (String)params[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String testIP1 = (String)params[1]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String testIP2 = (String)params[2]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // ================================================================================================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // [[ Touch & Key Event ]] region 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    // ================================================================================================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * 본 클래스에서 등록한 [WpadImageView] [WpadTextView] 의 TouchEvent 가 있을시 호출됨 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    protected void onTouchEvent(View v, MotionEvent event) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        super.onTouchEvent(v, event); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String arrResult[] = new String[2]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        int TargetId = v.getId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        int MoveEvent = event.getAction(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            StringBuilder result = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(MoveEvent == MotionEvent.ACTION_UP) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(TargetId == ID.configMobileDeviceAddScreen.button.REG) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // [등록] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                DebugLogOutput("onTouchEvent [REG] BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                InetAddress ia = InetAddress.getByName(testIP1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(ia.isReachable(PING_TIMEOUT) == true) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    result.append("success"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    result.append("fail"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                InetAddress ia2 = InetAddress.getByName(testIP2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(ia2.isReachable(PING_TIMEOUT) == true) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    result.append("success"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    result.append("fail"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (UnknownHostException e){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                result.append("fail"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (IOException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                result.append("fail"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (IllegalArgumentException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                result.append("fail"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(mData.DataList.size() >= MAX_MOBILE_USER_CNT) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            arrResult[0] = type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            arrResult[1] = result.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return arrResult; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        protected void onPostExecute(String[] arrResult) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (arrResult[1].contains("fail")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileNetworkCheck); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (arrResult[0].contains("reg")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (mData.DataList.size() >= MAX_MOBILE_USER_CNT) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 등록개수가 최대 개수(100개) 이상 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Sound().Play(SND.effect.WARNING005); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Toast.makeText(getContext(), "모바일 기기는 " + MAX_MOBILE_USER_CNT + "대를 초과할 수 없습니다.", Toast.LENGTH_SHORT).show(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    boolean bRet = ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileDeviceAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(bRet) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    boolean bRet = ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (bRet) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        bRet = ((MainActivity) mContext).setFinishTimerDestroyFromScreen(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         /*PowerManager pm = (PowerManager) ((MainActivity)(getContext())).getSystemService(Context.POWER_SERVICE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         pm.userActivity(2, true);*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        ((Activity)this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ((Activity) mContext).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            else if(TargetId == ID.configMobileDeviceAddScreen.button.DEL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // [삭제] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                DebugLogOutput("onTouchEvent [DEL] BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                //DB_DeleteAll(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else if (arrResult[0].contains("del")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Intent data = new Intent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 int Number = (chartView.getCurEnabledIndex() + 1) + (mData.CurPageIdx * ChartView.ROWS_COUNT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 data.putExtra("DEL_TYPE", 1);                               // 개별삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                data.putExtra("DEL_NAME", mData.DataList.get(Number-1).Name);     // 개별 NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                data.putExtra("DEL_UID", mData.DataList.get(Number-1).Uid);       // 개별 UID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.putExtra("DEL_NAME", mData.DataList.get(Number - 1).Name);     // 개별 NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.putExtra("DEL_UID", mData.DataList.get(Number - 1).Uid);       // 개별 UID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                Log.d(TAG, "[onTouchEvent] Number [" + Number + "]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 방문객원격통화 사용자 DB에서 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (MainActivity.bRemoteCallUse) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if (mData.DataList.get(Number-1).Name.contains("remotecall_")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (mData.DataList.get(Number - 1).Name.contains("remotecall_")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (wallPadRemoteCallUserData != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             nRemoteCallUserCnt = wallPadRemoteCallUserData.GetRemoteCallUserCnt(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             Log.d(TAG, "[onTouchEvent] nRemoteCallUserCnt [" + nRemoteCallUserCnt + "]"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -648,32 +673,28 @@ public class ConfigMobileDeviceAddScreen extends WpadScreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                boolean bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                boolean bRet = ((MainActivity) mContext).setFinishTimerDestroyFromScreen(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                PowerManager pm = (PowerManager) ((MainActivity)(getContext())).getSystemService(Context.POWER_SERVICE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                pm.userActivity(2, true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ((Activity)this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ((Activity) mContext).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            else if(TargetId == ID.configMobileDeviceAddScreen.button.ALLDEL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(mData == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(mData.DataList == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else if (arrResult[0].contains("alldel")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (mData == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (mData.DataList == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 int size = mData.DataList.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(size == 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (size == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // [INIT] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     DebugLogOutput("onTouchEvent [ALLDEL] - INIT BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileDeviceInit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                else if(size > 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceInit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else if (size > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // [전체 삭제] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     DebugLogOutput("onTouchEvent [ALLDEL] DELETE BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -682,27 +703,189 @@ public class ConfigMobileDeviceAddScreen extends WpadScreen 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 제휴사 삭제를 구분하기 위한 용도로 추가함 yskim 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     String KindName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    for (int i = 0 ; i < mData.DataList.size() ; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    for (int i = 0; i < mData.DataList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         KindName += mData.DataList.get(i).Name; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         KindName += "_"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     data.putExtra("DEL_NAME", KindName);     // 개별 NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    boolean bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    boolean bRet = ((MainActivity) mContext).setFinishTimerDestroyFromScreen(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 방문객원격통화 사용자 DB 전체 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (MainActivity.bRemoteCallUse) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (wallPadRemoteCallUserData != null) wallPadRemoteCallUserData.DeleteAllRemoteCallUserInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (wallPadRemoteCallUserData != null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            wallPadRemoteCallUserData.DeleteAllRemoteCallUserInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                /*PowerManager pm = (PowerManager) ((MainActivity)(getContext())).getSystemService(Context.POWER_SERVICE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                pm.userActivity(2, true);*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ((Activity)this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((Activity) mContext).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // testIP로 ping test를 수행 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private void doPingTest2(String type, String IP1, String IP2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        new PingTestTask().execute(type, IP1, IP2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // ================================================================================================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // [[ Touch & Key Event ]] region 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // ================================================================================================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 본 클래스에서 등록한 [WpadImageView] [WpadTextView] 의 TouchEvent 가 있을시 호출됨 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    protected void onTouchEvent(View v, MotionEvent event) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        super.onTouchEvent(v, event); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int TargetId = v.getId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int MoveEvent = event.getAction(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(MoveEvent == MotionEvent.ACTION_UP) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(TargetId == ID.configMobileDeviceAddScreen.button.REG) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // [등록] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                DebugLogOutput("onTouchEvent [REG] BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(((MainActivity)getContext()).myIP.equals("10.1.1.1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    doPingTest2("reg", "10.1.2.1", "10.1.3.1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (mData.DataList.size() >= MAX_MOBILE_USER_CNT) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 등록개수가 최대 개수(100개) 이상 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Sound().Play(SND.effect.WARNING005); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Toast.makeText(getContext(), "모바일 기기는 " + MAX_MOBILE_USER_CNT + "대를 초과할 수 없습니다.", Toast.LENGTH_SHORT).show(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        boolean bRet = ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (bRet) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ((Activity) this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileNotUseConfirm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else if(TargetId == ID.configMobileDeviceAddScreen.button.DEL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // [삭제] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                DebugLogOutput("onTouchEvent [DEL] BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(((MainActivity)getContext()).myIP.equals("10.1.1.1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    doPingTest2("del", "10.1.2.1", "10.1.3.1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    Intent data = new Intent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    int Number = (chartView.getCurEnabledIndex() + 1) + (mData.CurPageIdx * ChartView.ROWS_COUNT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    data.putExtra("DEL_TYPE", 1);                               // 개별삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    data.putExtra("DEL_NAME", mData.DataList.get(Number - 1).Name);     // 개별 NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    data.putExtra("DEL_UID", mData.DataList.get(Number - 1).Uid);       // 개별 UID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//                Log.d(TAG, "[onTouchEvent] Number [" + Number + "]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 방문객원격통화 사용자 DB에서 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (MainActivity.bRemoteCallUse) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (mData.DataList.get(Number - 1).Name.contains("remotecall_")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (wallPadRemoteCallUserData != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                nRemoteCallUserCnt = wallPadRemoteCallUserData.GetRemoteCallUserCnt(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Log.d(TAG, "[onTouchEvent] nRemoteCallUserCnt [" + nRemoteCallUserCnt + "]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if (nRemoteCallUserCnt > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    List<RemoteCallUserClass> dataList = wallPadRemoteCallUserData.GetRemoteCallUserData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    if (dataList != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        for (int i = 0; i < dataList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//                                        Log.d(TAG, "[onTouchEvent] dataList.get(" + i + ").Name = " + dataList.get(i).Name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//                                        Log.d(TAG, "[onTouchEvent] mData.DataList.get(" + (Number - 1) + ").Name = " + mData.DataList.get(Number - 1).Name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            if (mData.DataList.get(Number - 1).Name.equals("remotecall_".concat(dataList.get(i).Name))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                String targetPhoneKey = dataList.get(i).PhoneKey; // 삭제할 방문객원격통화 사용자의 phonekey 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                Log.d(TAG, "[onTouchEvent] targetPhoneKey [" + targetPhoneKey + "]"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                data.putExtra("DEL_PHONEKEY", targetPhoneKey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    boolean bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((Activity) this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileNotUseConfirm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else if(TargetId == ID.configMobileDeviceAddScreen.button.ALLDEL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(((MainActivity)getContext()).myIP.equals("10.1.1.1")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    doPingTest2("alldel", "10.1.2.1", "10.1.3.1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (mData == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (mData.DataList == null) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    int size = mData.DataList.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (size == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // [INIT] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        DebugLogOutput("onTouchEvent [ALLDEL] - INIT BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceInit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else if (size > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // [전체 삭제] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        DebugLogOutput("onTouchEvent [ALLDEL] DELETE BUTTON !!!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Intent data = new Intent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        data.putExtra("DEL_TYPE", 2); //전체삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 제휴사 삭제를 구분하기 위한 용도로 추가함 yskim 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        String KindName = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        for (int i = 0; i < mData.DataList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            KindName += mData.DataList.get(i).Name; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            KindName += "_"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        data.putExtra("DEL_NAME", KindName);     // 개별 NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ((MainActivity) (getContext())).StartPopup(ID.screen.PopupMobileDeviceDel, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 자동종료 타이머 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        boolean bRet = super.setFinishTimerDestroy(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        DebugLogOutput("setFinishTimerDestroy = " + bRet); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 방문객원격통화 사용자 DB 전체 삭제 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (MainActivity.bRemoteCallUse) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (wallPadRemoteCallUserData != null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                wallPadRemoteCallUserData.DeleteAllRemoteCallUserInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // LCD 항상 켜져 있게 하는 기능 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ((Activity) this.getContext()).getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    Sound().Play(SND.effect.TOUCH_LATCHED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ((MainActivity)(getContext())).StartPopup(ID.screen.PopupMobileNotUseConfirm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             else if((TargetId == ID.configMobileDeviceAddScreen.button.NEXT) || (TargetId == ID.configMobileDeviceAddScreen.button.BEFORE)) 
			 |