/// <summary> /// Create a new floor. /// </summary> /// <param name = "libId">Id of the library.</param> /// <param name = "floorName">Name of the new floor.</param> /// <param name = "floorOrder">Order of the new floor.</param> /// <param name="callback">Callback function for data handling.</param> public void CreateFloor(int libId, string floorName, int floorOrder, CreateFloorCallback callback) { if (createFloorCoroutine != null) { return; } Debug.Log("Creating floor"); createFloorCoroutine = StartCoroutine(CreateFloorLoop(libId, floorName, floorOrder, callback)); }
IEnumerator CreateFloorLoop(int libId, string floorName, int floorOrder, CreateFloorCallback callback) { WWWForm form = new WWWForm(); form.AddField("request", "create_floor"); form.AddField("token", token); form.AddField("library_id", libId); form.AddField("floor_name", floorName); form.AddField("floor_order", floorOrder); // Create a download object WWW request = new WWW(apiUrl, form); // Wait until the download is done yield return(request); if (!string.IsNullOrEmpty(request.error)) { Debug.Log("Unable to create floor: " + request.error); callback(false, false, 0); } else { Debug.Log(request.text); JSONNode root = JSON.Parse(request.text); if (root["success"] != null && root["success"].AsBool) { callback(true, true, root["id"]); } else { callback(true, false, 0); } } createFloorCoroutine = null; }