public void DoCheckIn()
    {
        if (!PlayerStatus.Instance.CheckExistCheckin(placeID))
        {
            if (isLocationEnable)
            {
                GPSSystem gps = GPSSystem.Instance;
                if (!gps.dataReady)
                {
                    //if (false) {
                    Popup.Instance.showPopup("Checkin", "GPS ยังไม่พร้อมใช้งาน \r\nกรุณาลองใหม่อีกครั้งภายหลัง");
                    gps.startGPSService();
                }
                else
                {
                    if (GPSSystem.IsInPolygon(points, gps.getCurrentLocationPoint()))
                    {
                        PlayerStatus ps = PlayerStatus.Instance;
                        //if (true) {
                        // Get Special Item
                        //Debug.Log("You got item");
                        PlaceData pd = new PlaceData(placeID, title, detail, city, imgCollection);
                        pd.SetTimeNow();
                        ps.AddPlaceToList(pd);
                        DGTRemote.GetInstance().RequestSendCheckin(placeID, pd.time);
                        if (itemID != 0)
                        {
                            //Debug.Log("Give item by Checkin");
                            // OLD

                            /*GameObject reward = ItemManager.GetItemGameObject(itemID);
                             * Popup.Instance.showPopup("Checkin" , "Checkin ที่ " + title +
                             *  "สำเร็จ. \r\nคุณได้รับไอเท็ม " + reward.GetComponent<Item>().getItemName() );
                             * Inventory.Instance.CollectItemToInventory(reward, true);*/
                            Item reward = ItemManager.GetItemComponent(itemID);
                            Popup.Instance.showPopup("Checkin", "Checkin ที่ " + title +
                                                     "สำเร็จ. \r\nคุณได้รับไอเท็ม " + reward.GetItemName());
                            Inventory.Instance.CollectItemToInventory(reward);
                        }
                        else if (equipment)
                        {
                            Item equipmentReward = ItemManager.GetItemEquipmentBodyByEquipmentValue(equipmentValue, ps.gender, ps.job);
                            Popup.Instance.showPopup("Checkin", "Checkin ที่ " + title +
                                                     "สำเร็จ. \r\nคุณได้รับไอเท็ม " + equipmentReward.GetItemName());
                            Inventory.Instance.CollectItemToInventory(equipmentReward);
                        }
                    }
                    else
                    {
                        Popup.Instance.showPopup("Checkin", "Checkin ล้มเหลว \r\nคุณไม่ได้อยู่ในสถานที่ดังกล่าว");
                        // You not stay in this place :(
                        //Debug.Log("You not in this place :(");
                    }
                }
            }
            else
            {
                Popup.Instance.showPopup("Checkin " + title, "ยังไม่สามารถ Checkin สถานที่นี้ได้ \r\n ขออภัยในความไม่สะดวก");
            }
        }
        else
        {
            Popup.Instance.showPopup("Checkin " + title, "คุณเคย Checkin สถานที่นี้ไปแล้ว");
        }
    }