public async void attemptLogin() { loginProgress.IsActive = true; btnLogin.IsEnabled = false; btnRegister.IsEnabled = false; string user = txtUser.Text; string pass = txtPass.Password; //bool loginResult = await CloureManager.login(user, pass, chKeepConnected.IsChecked.Value); List <CloureParam> cloureParams = new List <CloureParam>(); cloureParams.Add(new CloureParam("module", "cloure_user")); cloureParams.Add(new CloureParam("topic", "login")); cloureParams.Add(new CloureParam("user", user)); cloureParams.Add(new CloureParam("pass", pass)); string res = await CloureManager.ExecuteAsync(cloureParams); JsonObject api_result = JsonObject.Parse(res); string error = api_result.GetNamedString("error"); if (error == "") { } else { btnLogin.IsEnabled = true; btnRegister.IsEnabled = true; loginProgress.IsActive = false; CloureManager.ShowDialog(error); } /* * if (loginResult) * { * Frame.Navigate(typeof(MainPage)); * } * else * { * btnLogin.IsEnabled = true; * btnRegister.IsEnabled = true; * loginProgress.IsActive = false; * } */ }
private async void LoadModuleInfo(string ModuleName) { string namespace_name = "Cloure.Modules." + ModuleName; string class_name = "mod_" + ModuleName; ActiveModule = ModuleName; ModuleInfo moduleInfo = new ModuleInfo(); try { var module_obj = Activator.CreateInstance(Type.GetType(namespace_name + "." + class_name)); if (module_obj is CloureModule) { CloureModule module = (CloureModule)module_obj; List <CloureParam> cloureParams = new List <CloureParam>(); cloureParams.Add(new CloureParam("topic", "get_module_info")); cloureParams.Add(new CloureParam("module", ModuleName)); string api_response = await CloureManager.ExecuteAsync(cloureParams); JsonObject ApiResponse = JsonObject.Parse(api_response); moduleInfo.Title = ApiResponse.GetNamedString("title"); JsonArray globalCommandsArr = ApiResponse.GetNamedArray("global_commands"); JsonArray filtersArr = ApiResponse.GetNamedArray("filters"); foreach (JsonValue value in globalCommandsArr) { JsonObject jobj = value.GetObject(); int cmd_id = (int)jobj.GetNamedNumber("Id"); string cmd_name = jobj.GetNamedString("Name"); string cmd_title = jobj.GetNamedString("Title"); GlobalCommand globalCommand = new GlobalCommand(cmd_id, cmd_name, cmd_title); moduleInfo.globalCommands.Add(globalCommand); } JsonValue localesValue = ApiResponse.GetNamedValue("locales"); if (localesValue.ValueType != JsonValueType.Null) { moduleInfo.locales = ApiResponse.GetNamedObject("locales"); } if (filtersArr.Count > 0) { foreach (JsonValue value in filtersArr) { JsonObject jobj = value.GetObject(); string filter_name = jobj.GetNamedString("Name"); string filter_title = jobj.GetNamedString("Title"); string filter_type = jobj.GetNamedString("Type"); string filter_default = jobj.GetNamedString("Default"); ModuleFilter moduleFilter = new ModuleFilter(filter_name, filter_title, filter_type, filter_default); JsonArray filterItems = jobj.GetNamedArray("Items"); foreach (JsonValue item in filterItems) { JsonObject item_obj = item.GetObject(); JsonValue item_id = item_obj.GetNamedValue("Id"); string item_title = item_obj.GetNamedString("Title"); string item_id_str = ""; if (item_id.ValueType.ToString() == "String") { item_id_str = item_id.GetString(); } if (item_id.ValueType.ToString() == "Number") { item_id_str = item_id.GetNumber().ToString(); } string item_title_str = item_title.ToString(); ModuleFilterItem moduleFilterItem = new ModuleFilterItem(item_id_str, item_title_str); moduleFilter.AddItem(moduleFilterItem); } moduleInfo.moduleFilters.Add(moduleFilter); } } //Core.Core.ModuleInfo = moduleInfo; CloureManager.SetModuleInfo(moduleInfo); module.OnModuleCreated(); } else { var dialog = new MessageDialog("Module " + ModuleName + " doesn't implement CloureModule interface"); await dialog.ShowAsync(); } } catch (Exception e) { var dialog = new MessageDialog(e.Message); await dialog.ShowAsync(); } }