コード例 #1
0
        private async void initScore()
        {
            //await Utils.ShowSystemTrayAsync(Color.FromArgb(255, 2, 140, 253), Colors.White, text: "正在紧张批改试卷...", isIndeterminate: true);
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);
            credentialList[0].RetrievePassword();
            List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
            //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
            //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
            paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
            paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
            string score = await NetWork.getHttpWebRequest("api/examGrade", paramList);
            Debug.WriteLine("score->" + score);
#if DEBUG
            //score = "{\"status\":200,\"term\":\"20151\",\"info\":\"success\",\"data\":[{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"},{\"student\":\"2013211594\",\"course\":\"英语口笔译基础\",\"grade\":\"99\",\"property\":\"必修\",\"status\":\"1\",\"term\":\"2\"}],\"version\":\"0.1.0\",\"stuNum\":\"2013211594\",\"idNum\":\"160155\"}";
#endif
            if (score != "")
            {
                JObject obj = JObject.Parse(score);
                if (Int32.Parse(obj["status"].ToString()) == 200)
                {
                    List<ScoreList> scoreList = new List<ScoreList>();
                    JArray ScoreListArray = Utils.ReadJso(score);
                    for (int i = 0; i < ScoreListArray.Count; i++)
                    {
                        ScoreList classitem = new ScoreList();
                        classitem.GetAttribute((JObject)ScoreListArray[i]);
                        scoreList.Add(classitem);
                    }
                    ScoreListView.ItemsSource = scoreList;
                }
                else if (Int32.Parse(obj["status"].ToString()) == 300)
                {
                    ListFailedStackPanelTextBlock.Text = "暂无数据,过几天再来看看";

                    ListFailedStackPanel.Visibility = Visibility.Visible;
                    ListFailedStackPanelImage.Visibility = Visibility.Collapsed;
                    ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                }
                else
                {
                    ListFailedStackPanelTextBlock.Text = "加载失败,点击重试";

                    ListFailedStackPanel.Visibility = Visibility.Visible;
                    ListFailedStackPanelImage.Visibility = Visibility.Visible;
                    ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                }
            }
            else
            {
                ListFailedStackPanelTextBlock.Text = "加载失败,点击重试";

                ListFailedStackPanel.Visibility = Visibility.Visible;
                ListFailedStackPanelImage.Visibility = Visibility.Visible;
                ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
            }

            //StatusBar statusBar = StatusBar.GetForCurrentView();
            //await statusBar.ProgressIndicator.HideAsync();
        }
コード例 #2
0
        public static async Task<HotFeed> GetHotFeed(int type_id, string article_id)
        {
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);
            credentialList[0].RetrievePassword();
            List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
            //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
            //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
            paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
            paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password.ToString()));
            paramList.Add(new KeyValuePair<string, string>("type_id", type_id.ToString()));
            paramList.Add(new KeyValuePair<string, string>("article_id", article_id.ToString()));
            string response = await NetWork.getHttpWebRequest(api, paramList);
            Debug.WriteLine(response);
            try
            {
                if (response != "" || response != "[]")
                {
                    JObject bbddfeeds = JObject.Parse(response);
                    if (bbddfeeds["status"].ToString() == "200")
                    {
                        JObject feed = (JObject)bbddfeeds["data"][0];
                        HotFeed f = new HotFeed();
                        f.GetAttributes(feed);
                        return f;
                    }
                }
            }
            catch (Exception) { }
            return null;

        }
コード例 #3
0
 public static async Task<PeoInfo> GetPerson(string stunum_other)
 {
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName);
     credentialList[0].RetrievePassword();
     List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
     //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
     //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
     paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
     paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
     paramList.Add(new KeyValuePair<string, string>("stunum_other", stunum_other));
     string response = await NetWork.getHttpWebRequest(api, paramList);
     try
     {
         if (response != "" && response != "[]")
         {
             JObject bbddfeeds = JObject.Parse(response);
             if (bbddfeeds["status"].ToString() == "200")
             {
                 JObject feed = (JObject)bbddfeeds["data"];
                 PeoInfo f = new PeoInfo();
                 f.GetAttributes(feed);
                 return f;
             }
         }
     }
     catch (Exception) { }
     return null;
 }
コード例 #4
0
 private void URLTextBlock_TextChanged(object sender, TextChangedEventArgs e)
 {
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName); 
     credentialList[0].RetrievePassword();
     //URLTextBlock.Text = "http://hongyan.cqupt.edu.cn/api/kebiao_ics?xh=" + appSetting.Values["stuNum"].ToString();
     URLTextBlock.Text = "http://hongyan.cqupt.edu.cn/api/kebiao_ics?xh=" + credentialList[0].UserName;
 }
コード例 #5
0
 private ApplicationDataContainer appSetting = ApplicationData.Current.LocalSettings; //本地存储
 public async void Run(IBackgroundTaskInstance taskInstance)
 {
     var deferral = taskInstance.GetDeferral();
     if (bool.Parse(appSetting.Values["isUseingBackgroundTask"].ToString()))
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         var credentialList = vault.FindAllByResource(resourceName);
         credentialList[0].RetrievePassword();
         stuNum = credentialList[0].UserName;
         idNum = credentialList[0].Password;
         ToastNotificationActionTriggerDetail details = taskInstance.TriggerDetails as ToastNotificationActionTriggerDetail;
         if (details != null)
         {
             // 是否选择“确定”
             string arg = details.Argument;
             if ((arg.Split('+'))[0].Substring(0, 2) == "ok")
             {
                 // 获取数据
                 string value = details.UserInput["content"] as string;
                 Debug.WriteLine(arg.Substring(2));
                 if (value != "")
                 {
                     List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
                     paramList.Add(new KeyValuePair<string, string>("article_id", arg.Substring(2)));
                     paramList.Add(new KeyValuePair<string, string>("type_id", "5"));
                     paramList.Add(new KeyValuePair<string, string>("stuNum", stuNum));
                     paramList.Add(new KeyValuePair<string, string>("idNum", idNum));
                     paramList.Add(new KeyValuePair<string, string>("content", "回复 " + arg.Split('+')[2] + " : " + value));
                     paramList.Add(new KeyValuePair<string, string>("answer_user_id", arg.Split('+')[1]));
                     string sendMark = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/ArticleRemark/postremarks", paramList);
                     Debug.WriteLine(sendMark);
                     try
                     {
                         if (sendMark != "")
                         {
                             JObject obj = JObject.Parse(sendMark);
                             if (Int32.Parse(obj["state"].ToString()) == 200)
                             {
                                 Utils.Toast("评论成功");
                             }
                             else
                             {
                                 Utils.Toast("评论失败");
                             }
                         }
                         else
                         {
                             Utils.Toast("评论失败");
                         }
                     }
                     catch (Exception) { }
                 }
             }
             deferral.Complete();
         }
     }
 }
コード例 #6
0
 /// <summary>
 /// 在此页将要在 Frame 中显示时进行调用。
 /// </summary>
 /// <param name="e">描述如何访问此页的事件数据。
 /// 此参数通常用于配置页。</param>
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName);
     credentialList[0].RetrievePassword();
     //URLTextBlock.Text = "http://hongyan.cqupt.edu.cn/api/kebiao_ics?xh=" + appSetting.Values["stuNum"].ToString();
     URLTextBlock.Text = "http://hongyan.cqupt.edu.cn/api/kebiao_ics?xh=" + credentialList[0].UserName;
     UmengSDK.UmengAnalytics.TrackPageStart("ImportKB2CalendarPage");
 }
コード例 #7
0
 static void Main(string[] args)
 {
     Windows.Security.Credentials.PasswordVault vault = new Windows.Security.Credentials.PasswordVault();
     Console.WriteLine("{0}", vault.GetType());
     foreach (var cred in vault.RetrieveAll())
     {
         cred.RetrievePassword();
         DumpCredentials(cred);
     }
 }
コード例 #8
0
 public string Unprotect(string key)
 {
     try
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         return(vault.Retrieve(Windows.ApplicationModel.Package.Current.Id.Name, key).Password);
     }
     catch
     {
         return(null);
     }
 }
コード例 #9
0
        public string Retrieve(string key)
        {
            var vault     = new Windows.Security.Credentials.PasswordVault();
            var resources = vault.FindAllByResource(key);

            if (resources.Any())
            {
                return(resources.First().Password);
            }

            return(null);
        }
コード例 #10
0
 private void GetHostKeyFromVault()
 {
     try
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         hostKey = vault.Retrieve(AnkiWebLogin.VAULT_RESOURCE, AnkiWebLogin.VAULT_USERNAME).Password;
     }
     catch
     {
         throw new PasswordVaulException("No hostkeys!");
     }
 }
コード例 #11
0
ファイル: AuthStorage.cs プロジェクト: Clancey/SimpleAuth
		public string GetSecured(string id, string clientId, string service, string sharedGroup)
		{
			var vault = new Windows.Security.Credentials.PasswordVault();
			try
			{
				return vault.Retrieve(ResourceIdentifier, $"{clientId}-{id}-{service}").Password;
			}
			catch
			{
				return "";
			}
		}
コード例 #12
0
        public async void Run(IBackgroundTaskInstance taskInstance)
        {
            try
            {
                Debug.WriteLine("开始动态磁贴后台任务");
                //获取参数列表
                var vault          = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                stuNum = credentialList[0].UserName;
                idNum  = credentialList[0].Password;
                curriculumParamList.Add(new KeyValuePair <string, string>("stuNum", stuNum));
                transactionParamList.Add(new KeyValuePair <string, string>("stuNum", stuNum));
                transactionParamList.Add(new KeyValuePair <string, string>("idNum", idNum));

                //异步后台任务开始
                BackgroundTaskDeferral deferral = taskInstance.GetDeferral();

                #region 获取课表

                string curriculumTemp1 = await NetWork.getCurriculum(@"redapi2/api/kebiao", curriculumParamList);

                JObject          jObject1        = (JObject)JsonConvert.DeserializeObject(curriculumTemp1);
                string           curriculumTemp2 = jObject1["data"].ToString();
                JArray           jArray1         = (JArray)JsonConvert.DeserializeObject(curriculumTemp2);
                int              nowWeek         = int.Parse(jObject1["nowWeek"].ToString());
                List <ClassList> tempList1       = JsonConvert.DeserializeObject <List <ClassList> >(jArray1.ToString());

                #endregion 获取课表

                #region 获取事项

                string transactionTemp1 = await NetWork.getTransaction(@"http://hongyan.cqupt.edu.cn/cyxbsMobile/index.php/Home/Person/getTransaction", transactionParamList);

                JObject            jObject2         = (JObject)JsonConvert.DeserializeObject(transactionTemp1);
                string             transactionTemp2 = jObject2["data"].ToString();
                JArray             jArray2          = (JArray)JsonConvert.DeserializeObject(transactionTemp2);
                List <Transaction> tempList2        = JsonConvert.DeserializeObject <List <Transaction> >(jArray2.ToString());

                #endregion 获取事项

                //获取当地星期
                string weekDay = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek);
                Util.UpdateTile(tempList1, tempList2, nowWeek, weekDay);
                deferral.Complete();
                //异步后台任务结束
                Debug.WriteLine("结束动态磁贴后台任务");
            }
            catch (Exception)
            {
                Debug.WriteLine("动态磁贴后台任务出现异常");
            }
        }
コード例 #13
0
ファイル: AuthStorage.cs プロジェクト: Clancey/SimpleAuth
		public void SetSecured(string id, string value, string clientId, string service, string sharedGroup)
		{
			var vault = new Windows.Security.Credentials.PasswordVault();
			try
			{
				var pass = vault.Retrieve(ResourceIdentifier, $"{clientId}-{id}-{service}");
				if (pass != null)
					vault.Remove(pass);
			}
			catch { }
			vault.Add(new Windows.Security.Credentials.PasswordCredential(ResourceIdentifier, $"{clientId}-{id}-{service}", value));
		}
コード例 #14
0
 public static async Task <List <HotFeed> > GetHot(int type = 0, int page = 0, int size = 15, int typeid = 5)
 {
     //TODO:未登陆时 不添加参数stuNum和idNum
     return(await Task.Run(async() =>
     {
         List <KeyValuePair <String, String> > paramList = new List <KeyValuePair <String, String> >();
         try
         {
             var vault = new Windows.Security.Credentials.PasswordVault();
             var credentialList = vault.FindAllByResource(resourceName);
             credentialList[0].RetrievePassword();
             if (credentialList.Count > 0)
             {
                 //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                 //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                 paramList.Add(new KeyValuePair <string, string>("stuNum", credentialList[0].UserName));
                 paramList.Add(new KeyValuePair <string, string>("idNum", credentialList[0].Password));
             }
         }
         catch
         {
         }
         paramList.Add(new KeyValuePair <string, string>("page", page.ToString()));
         paramList.Add(new KeyValuePair <string, string>("size", size.ToString()));
         if (typeid != 0)
         {
             paramList.Add(new KeyValuePair <string, string>("type_id", typeid.ToString()));
         }
         string response = await NetWork.getHttpWebRequest(feedsapi[type], paramList);
         //response = Utils.ConvertUnicodeStringToChinese(response);
         List <HotFeed> feeds = new List <HotFeed>();
         try
         {
             if (response != "" || response != "[]")
             {
                 JArray hotfeed = JArray.Parse(response);
                 for (int i = 0; i < hotfeed.Count; i++)
                 {
                     JObject hot = (JObject)hotfeed[i];
                     if (hot["status"].ToString() == "200")
                     {
                         JObject data = (JObject)hot["data"];
                         HotFeed f = new HotFeed();
                         f.GetAttributes(data);
                         feeds.Add(f);
                     }
                 }
             }
         }
         catch (Exception) { }
         return feeds;
     }));
 }
コード例 #15
0
        public string GetSecured(string id, string clientId, string service, string sharedGroup)
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            try
            {
                return(vault.Retrieve(ResourceIdentifier, $"{clientId}-{id}-{service}").Password);
            }
            catch
            {
                return("");
            }
        }
コード例 #16
0
 public bool Contains(string key)
 {
     try
     {
         var vault     = new Windows.Security.Credentials.PasswordVault();
         var resources = vault.FindAllByResource(key);
         return(resources.Any());
     }
     catch (System.Runtime.InteropServices.COMException)
     {
         return(false);
     }
 }
コード例 #17
0
ファイル: Login.xaml.cs プロジェクト: obiwan007/bettrdiet
        private async void ShowLogin()
        {
            CredentialPickerOptions opt = new CredentialPickerOptions();
            opt.AuthenticationProtocol = AuthenticationProtocol.Basic;
            opt.Message = CultureHelper.GetLocalString("Login to BettrDiet with your email adress|Mit deiner email Adresse bei BettrDiet anmelden");
            opt.TargetName = ".";
            opt.Caption = "BettrDiet Login";
            opt.CredentialSaveOption = CredentialSaveOption.Selected;
            
            var vault = new Windows.Security.Credentials.PasswordVault();

            var vm = DataContext as BettrDiet.Core.ViewModels.LoginViewModel;
            
            var credentialPicker = await Windows.Security.Credentials.UI.CredentialPicker.PickAsync(opt);

            if (credentialPicker.ErrorCode!=0)
            {
                
                vm.DoClose();
            }

            if (credentialPicker.CredentialUserName != null && credentialPicker.CredentialPassword != null)
            {

                if (credentialPicker.CredentialSaveOption == CredentialSaveOption.Selected)
                {

                    var s = credentialPicker.Credential;

                    var str = System.Runtime.InteropServices.WindowsRuntime.WindowsRuntimeBufferExtensions.AsStream(s);
                    byte[] bytes = new byte[100];
                    var sr = new System.IO.StreamReader(str);
                    while (!sr.EndOfStream)
                    {
                        var line = await sr.ReadLineAsync();
                        Debug.WriteLine("line:" + line);
                    }

                    vm.Username = credentialPicker.CredentialUserName;
                    vm.Pwd = credentialPicker.CredentialPassword;
                    var ret=await vm.DoLogin();
                    if (!string.IsNullOrEmpty(ret))
                    {
                        ShowLogin();
                    }
                }



            }
        }        
コード例 #18
0
        public void Store(string key, string value)
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            var pwdCred = new Windows.Security.Credentials.PasswordCredential()
            {
                Password = value,
                UserName = key,
                Resource = key,
            };


            vault.Add(pwdCred);
        }
コード例 #19
0
 public PersonalIno()
 {
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName);
     credentialList[0].RetrievePassword();
     appSetting = ApplicationData.Current.LocalSettings; //本地存储
     //this.Stunum = appSetting.Values["stuNum"].ToString();
     this.Stunum = credentialList[0].UserName;
     this.Name = appSetting.Values["name"].ToString();
     this.Classnum = appSetting.Values["classNum"].ToString();
     this.Major = appSetting.Values["major"].ToString();
     this.College = appSetting.Values["college"].ToString();
     this.Gender = appSetting.Values["gender"].ToString();
 }
コード例 #20
0
        public static void SignOut()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            vault.Remove(new Windows.Security.Credentials.PasswordCredential(
                             resourceName, DiscordUser.DiscordId, DiscordToken));

            IsLoggedIn          = false;
            DiscordToken        = "";
            DiscordRefreshToken = "";
            DiscordUser         = null;

            OnLoginStateChanged(IsLoggedIn);
        }
コード例 #21
0
        private async void GetBaseTopInfo()
        {
            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);

            credentialList[0].RetrievePassword();
            if (credentialList[0] != null)
            {
                try
                {
                    List <KeyValuePair <String, String> > paramList = new List <KeyValuePair <String, String> >();
                    paramList.Add(new KeyValuePair <string, string>("stuNum", credentialList[0].UserName));
                    string Topictemp = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Topic/topicList", paramList);

                    JObject Tobj = JObject.Parse(Topictemp);
                    if (Int32.Parse(Tobj["status"].ToString()) == 200)
                    {
                        JArray TopicArray = Utils.ReadJso(Topictemp);
                        for (int i = 0; i < TopicArray.Count; i++)
                        {
                            Topic item = new Topic();
                            item.GetAttribute((JObject)TopicArray[i]);
                            if (item.imgdata.Equals(""))
                            {
                                item.imgdata = "/Assets/base.jpg"; item.color = "DarkGray";
                            }
                            item.keyword = $"#{item.keyword}#";
                            if (item.is_my_join)
                            {
                                MyTopicList.Add(item);
                            }
                            TopicList.Add(item);
                        }
                    }
                    if (MyTopicList.Count == 0)
                    {
                        MyTopic.Visibility = Visibility.Collapsed; noMyTopic.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        MyTopic.ItemsSource = MyTopicList;
                    }
                }
                catch
                {
                    NotifyPopup notifyPopup = new NotifyPopup("网络异常 无法读取事项~");
                    notifyPopup.Show();
                }
            }
        }
コード例 #22
0
        public static async Task<List<MyFeed>> GetMyFeeds(string stunum_other,int page = 0, int size = 15)
        {
            //TODO:未登陆时 不传入参数stuNum和idNum
            return await Task.Run(async () =>
            {
                List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
                try
                {
                    var vault = new Windows.Security.Credentials.PasswordVault();
                    var credentialList = vault.FindAllByResource(resourceName);
                    credentialList[0].RetrievePassword();
                    if (credentialList.Count > 0)
                    {
                        //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                        //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                        paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
                        paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
                    }
                }
                catch { }
                paramList.Add(new KeyValuePair<string, string>("page", page.ToString()));
                paramList.Add(new KeyValuePair<string, string>("size", size.ToString()));
                paramList.Add(new KeyValuePair<string, string>("stunum_other", stunum_other.ToString()));
                //string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Article/searchtrends", paramList);
                string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/NewArticle/searchtrends", paramList);
                Debug.WriteLine(response);
                List<MyFeed> feeds = new List<MyFeed>();
                try
                {
                    if (response != "" || response != "[]")
                    {
                        JObject bbddfeeds = JObject.Parse(response);
                        if (bbddfeeds["status"].ToString() == "200")
                        {
                            JArray bbddarray = JArray.Parse(bbddfeeds["data"].ToString());
                            for (int i = 0; i < bbddarray.Count; i++)
                            {
                                MyFeed f = new MyFeed();
                                f.GetAttributes((JObject)bbddarray[i]);
                                feeds.Add(f);
                            }
                        }
                    }
                }
                catch (Exception) { }
                return feeds;
            });

            return null;
        }
コード例 #23
0
        public static async Task <List <MyFeed> > GetMyFeeds(string stunum_other, int page = 0, int size = 15)
        {
            //TODO:未登陆时 不传入参数stuNum和idNum
            return(await Task.Run(async() =>
            {
                List <KeyValuePair <String, String> > paramList = new List <KeyValuePair <String, String> >();
                try
                {
                    var vault = new Windows.Security.Credentials.PasswordVault();
                    var credentialList = vault.FindAllByResource(resourceName);
                    credentialList[0].RetrievePassword();
                    if (credentialList.Count > 0)
                    {
                        //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                        //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                        paramList.Add(new KeyValuePair <string, string>("stuNum", credentialList[0].UserName));
                        paramList.Add(new KeyValuePair <string, string>("idNum", credentialList[0].Password));
                    }
                }
                catch { }
                paramList.Add(new KeyValuePair <string, string>("page", page.ToString()));
                paramList.Add(new KeyValuePair <string, string>("size", size.ToString()));
                paramList.Add(new KeyValuePair <string, string>("stunum_other", stunum_other.ToString()));
                //string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Article/searchtrends", paramList);
                string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/NewArticle/searchtrends", paramList);
                Debug.WriteLine(response);
                List <MyFeed> feeds = new List <MyFeed>();
                try
                {
                    if (response != "" || response != "[]")
                    {
                        JObject bbddfeeds = JObject.Parse(response);
                        if (bbddfeeds["status"].ToString() == "200")
                        {
                            JArray bbddarray = JArray.Parse(bbddfeeds["data"].ToString());
                            for (int i = 0; i < bbddarray.Count; i++)
                            {
                                MyFeed f = new MyFeed();
                                f.GetAttributes((JObject)bbddarray[i]);
                                feeds.Add(f);
                            }
                        }
                    }
                }
                catch (Exception) { }
                return feeds;
            }));

            return(null);
        }
コード例 #24
0
        private static Windows.Security.Credentials.PasswordCredential GetCredentialFromLocker()
        {
            Windows.Security.Credentials.PasswordCredential credential = null;

            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.RetrieveAll();

            if (credentialList.Count > 0)
            {
                credential = credentialList[0];
            }

            return(credential);
        }
コード例 #25
0
ファイル: MainPage.xaml.cs プロジェクト: nunanas21/CIS-109
        private void SetWifiProfile(string ssid, string password)
        {
            //Clear pre-existing WiFi Profiles.
            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.RetrieveAll();

            foreach (var cred in credentialList)
            {
                vault.Remove(cred);
            }

            //Save current WiFi Profile
            vault.Add(new Windows.Security.Credentials.PasswordCredential("wifiProfile", ssid, password));
        }
コード例 #26
0
        public static async Task <string> setPraise(string type_id, string article_id, bool addORcancel)
        {
            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);

            credentialList[0].RetrievePassword();
            List <KeyValuePair <String, String> > paramList = new List <KeyValuePair <String, String> >();

            //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
            //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
            paramList.Add(new KeyValuePair <string, string>("stuNum", credentialList[0].UserName));
            paramList.Add(new KeyValuePair <string, string>("idNum", credentialList[0].Password));
            paramList.Add(new KeyValuePair <string, string>("type_id", type_id));
            paramList.Add(new KeyValuePair <string, string>("article_id", article_id));
            string praise = "";

            if (addORcancel)
            {
                praise = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Praise/addone", paramList);
            }
            else
            {
                praise = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Praise/cancel", paramList);
            }
            Debug.WriteLine(praise);
            try
            {
                if (praise != "")
                {
                    JObject obj = JObject.Parse(praise);
                    if (obj["state"].ToString() == "200")
                    {
                        return(obj["like_num"].ToString());
                    }
                    else
                    {
                        return("");
                    }
                }
                else
                {
                    return("");
                }
            }
            catch (Exception)
            {
                return("");
            }
        }
コード例 #27
0
        //fonction executée quand on appuie sur le bouton
        private async void login_button(object sender, RoutedEventArgs ev)
        {
            string login = nom.Text.ToLower();

            if (pass.Password == "" || login == "")
            {
                ecrire("Veuillez entrer vos identifiants.");
                return;
            }

            loginProgress.IsActive = true;
            ecrire("");
            //loginProgress.Visibility = Visibility.Visible;
            await Task.Delay(500);


            //Bypass pour le test de certification Windows Store:
            //Active le mode TEST pour cette session, qui fournira pour chaque call API des données préparées à l'avance.
            if (login == "windows10test" && pass.Password == "Developers")
            {
                ArelAPI.DataStorage.enableTestMode();
                Frame.Navigate(typeof(acceuil));
                return;
            }

            Boolean connectionState = await API.LoginARELUserAsync(login, pass.Password);

            if (connectionState)
            {
                if (stayConnect)
                {
                    //On déclare un flag pour indiquer qu'on sauvegarde les données de login
                    localSettings.Values["stayConnect"] = true;
                    //On stocke login/pass dans un Credential Locker
                    var vault = new Windows.Security.Credentials.PasswordVault();
                    vault.Add(new Windows.Security.Credentials.PasswordCredential(
                                  "ARELUWP_User", login, pass.Password));
                }

                Frame.Navigate(typeof(acceuil));
            }
            else
            {
                //L'objet API logge l'erreur de connexion si il en arrive une.
                ecrire("Erreur de connexion: " + ArelAPI.DataStorage.getData("erreurLogin"));
                loginProgress.IsActive = false;
                await Task.Delay(500);
            }
        }
コード例 #28
0
        public void OnTimer(object sender, System.Timers.ElapsedEventArgs args)
        {
            System.Console.WriteLine("Application service is recalled after 10s");

            SQLiteConnection conn = new SQLiteConnection(DB_Link.conn_link); // to store in SQLite daabase

            string     strurltest    = String.Format("url");                 // fetch API
            WebRequest requestObjGet = WebRequest.Create(strurltest);

            requestObjGet.Method = "GET";
            HttpWebResponse responseObjGet = null;

            responseObjGet = (HttpWebResponse)requestObjGet.GetResponse();

            string strresult = null;                                   // set null

            using (Stream stream = responseObjGet.GetResponseStream()) // in json format
            {
                StreamReader sr = new StreamReader(stream);
                strresult = sr.ReadToEnd();
                sr.Close();
            }

            var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();

            List <Comments> objList = (List <Comments>)serializer.Deserializer(strresult, typeof((List <Comments>)));

            foreach (Comments obj in objList)
            {
                string username = obj.username;
                string password = obj.password;

                SQLiteCommand cmd = new SQLiteCommand("insert into userInfo (user_name,user_pass) values ('" + text_user.Text + "','" + text_pass.Text + "')");
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();



                var vault      = new Windows.Security.Credentials.PasswordVault();
                var credential = new Windows.Security.Credentials.PasswordCredential(
                    resource: "Sample Application",
                    userName: this.text_username.Text,
                    password: this.text_password.Text);
                vault.Add(credential);

                System.Console.WriteLine("Insertion Done in SQLite......");
            }
        }
コード例 #29
0
ファイル: DiscordContext.cs プロジェクト: neat8/Uncord
        public void RemoveRecentLoginAccount()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            try
            {
                var oldItems = vault.FindAllByResource(nameof(Uncord));
                foreach (var vaultItem in oldItems)
                {
                    vault.Remove(vaultItem);
                }
                oldItems = null;
            }
            catch { }
        }
コード例 #30
0
        static void GetCredentialFromLocker()
        {
            Windows.Security.Credentials.PasswordCredential credential = null;
            var vault = new Windows.Security.Credentials.PasswordVault();

            credential = vault.Retrieve("My App", "username");
            if (credential != null)
            {
                Console.WriteLine("GetCredentialFromLocker: " + credential.Password);
            }
            else
            {
                Console.WriteLine("Could not retrieve password from PasswordVault");
            }
        }
コード例 #31
0
        public PersonalIno()
        {
            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);

            credentialList[0].RetrievePassword();
            appSetting = ApplicationData.Current.LocalSettings; //本地存储
            //this.Stunum = appSetting.Values["stuNum"].ToString();
            this.Stunum   = credentialList[0].UserName;
            this.Name     = appSetting.Values["name"].ToString();
            this.Classnum = appSetting.Values["classNum"].ToString();
            this.Major    = appSetting.Values["major"].ToString();
            this.College  = appSetting.Values["college"].ToString();
            this.Gender   = appSetting.Values["gender"].ToString();
        }
コード例 #32
0
        private void onLogout(object sender, RoutedEventArgs e)
        {
            if (Config.JWT == "")
            {
                return;
            }
            var vault = new Windows.Security.Credentials.PasswordVault();

            vault.Remove(
                new Windows.Security.Credentials.PasswordCredential(
                    AuthViewModel.AUTH_JWT_TOKEN_NS, AuthViewModel.AUTH_USERNAME_NS, Config.JWT
                    )
                );
            Config.JWT = "";
        }
コード例 #33
0
        public void SetSecured(string id, string value, string clientId, string service, string sharedGroup)
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            try
            {
                var pass = vault.Retrieve(ResourceIdentifier, $"{clientId}-{id}-{service}");
                if (pass != null)
                {
                    vault.Remove(pass);
                }
            }
            catch { }
            vault.Add(new Windows.Security.Credentials.PasswordCredential(ResourceIdentifier, $"{clientId}-{id}-{service}", value));
        }
コード例 #34
0
        private void markListView_ItemClick(object sender, ItemClickEventArgs e)
        {
            var clickMarkItem = (Mark)e.ClickedItem;

            mark2PeoNameNum = clickMarkItem.nickname.Length;
            try
            {
                var vault          = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                if (!isMark2Peo)
                {
                    isMark2Peo = true;
                }
                else
                {
                    //@lj 好了·
                    sendMarkTextBox.Text = sendMarkTextBox.Text.Substring(sendMarkTextBox.Text.IndexOf(":") + 2);
                }
                //if (clickMarkItem.stunum != appSetting.Values["stuNum"].ToString())
                if (clickMarkItem.stunum != credentialList[0].UserName)
                {
                    sendMarkTextBox.Text = "回复 " + clickMarkItem.nickname + " : " + sendMarkTextBox.Text;
                    Mark2PeoNum          = clickMarkItem.stunum;
                }
                else
                {
                    isMark2Peo  = false;
                    Mark2PeoNum = "0";
                }
            }
            catch
            {
                if (!isMark2Peo)
                {
                    isMark2Peo = true;
                }
                else
                {
                    //@lj 好了·
                    sendMarkTextBox.Text = sendMarkTextBox.Text.Substring(sendMarkTextBox.Text.IndexOf(":") + 2);
                }
                isMark2Peo  = false;
                Mark2PeoNum = "0";
            }
            sendMarkTextBox.Focus(FocusState.Keyboard);
            sendMarkTextBox.SelectionStart = sendMarkTextBox.Text.Length;
        }
コード例 #35
0
        private async void Button_Click_3(object sender, RoutedEventArgs e)
        {
            RemoteTaskManager.UserName = UserNameText.Text;
            RemoteTaskManager.Password = PasswordText.Password;

            var vault = new Windows.Security.Credentials.PasswordVault();

            vault.Add(new Windows.Security.Credentials.PasswordCredential(
                          resourceName, RemoteTaskManager.UserName, RemoteTaskManager.Password));

            await RemoteTaskManager.Login();

            RemoteTaskManager.GetUsers(OnGetUsersCompleted);

            ((TaskListViewModel)DataContext).BeginUpdate();
        }
コード例 #36
0
        public ElectricityPage()
        {
            this.InitializeComponent();
            frame.Navigate(typeof(Page));
            //获取stuNum参数
            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);

            credentialList[0].RetrievePassword();
            stuNum = credentialList[0].UserName;
            paramIniList.Add(new KeyValuePair <string, string>("stuNum", stuNum));
            if (!settings.Values.ContainsKey("isBindingRoom"))
            {
                settings.Values["isBindingRoom"] = false;
            }
        }
コード例 #37
0
        public static async Task <List <MyNotification> > GetNotifications(int page = 0, int size = 15)
        {
            return(await Task.Run(async() =>
            {
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                List <KeyValuePair <String, String> > paramList = new List <KeyValuePair <String, String> >();
                //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                paramList.Add(new KeyValuePair <string, string>("stuNum", credentialList[0].UserName));
                paramList.Add(new KeyValuePair <string, string>("idNum", credentialList[0].Password));
                paramList.Add(new KeyValuePair <string, string>("page", page.ToString()));
                paramList.Add(new KeyValuePair <string, string>("size", size.ToString()));
                string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Article/aboutme", paramList);
                //response = Utils.ConvertUnicodeStringToChinese(response);
                Debug.WriteLine(response);
                List <MyNotification> feeds = new List <MyNotification>();
                try
                {
                    if (response != "" || response != "[]")
                    {
                        JObject bbddfeeds = JObject.Parse(response);
                        if (bbddfeeds["status"].ToString() == "200")
                        {
                            JArray bbddarray = JArray.Parse(bbddfeeds["data"].ToString());
                            for (int i = 0; i < bbddarray.Count; i++)
                            {
                                MyNotification f = new MyNotification();
                                f.GetAttributes((JObject)bbddarray[i]);
                                feeds.Add(f);
                            }
                        }
                        if (page == 0) //将第一面的数据存入文件,用于后台任务
                        {
                            IStorageFolder applicationFolder = ApplicationData.Current.LocalFolder;
                            IStorageFile storageFileWR = await applicationFolder.CreateFileAsync("aboutme.txt", CreationCollisionOption.ReplaceExisting);
                            await FileIO.WriteTextAsync(storageFileWR, response);
                        }
                    }
                }
                catch (Exception) { }
                return feeds;
            }));

            return(null);
        }
コード例 #38
0
        /// <summary>
        /// 在应用程序由最终用户正常启动时进行调用。
        /// 将在启动应用程序以打开特定文件等情况下使用。
        /// </summary>
        /// <param name="e">有关启动请求和过程的详细信息。</param>
        protected override void OnLaunched(LaunchActivatedEventArgs e)
        {
#if DEBUG
            if (System.Diagnostics.Debugger.IsAttached)
            {
                this.DebugSettings.EnableFrameRateCounter = true;
            }
#endif

            Frame rootFrame = Window.Current.Content as Frame;

            // 不要在窗口已包含内容时重复应用程序初始化,
            // 只需确保窗口处于活动状态
            if (rootFrame == null)
            {
                // 创建要充当导航上下文的框架,并导航到第一页
                rootFrame = new Frame();

                rootFrame.NavigationFailed += OnNavigationFailed;

                if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
                {
                    //TODO: 从之前挂起的应用程序加载状态
                }

                // 将框架放在当前窗口中
                Window.Current.Content = rootFrame;
            }

            if (rootFrame.Content == null)
            {
                // 当导航堆栈尚未还原时,导航到第一页,
                // 并通过将所需信息作为导航参数传入来配置
                // 参数
                var vault = new Windows.Security.Credentials.PasswordVault();
                if (vault.RetrieveAll().Count == 0)
                {
                    rootFrame.Navigate(typeof(View.Login), e.Arguments);
                }
                else
                {
                    rootFrame.Navigate(typeof(View.MainPage), e.Arguments);
                }
            }
            // 确保当前窗口处于活动状态
            Window.Current.Activate();
        }
コード例 #39
0
        public static async Task<List<MyNotification>> GetNotifications(int page = 0, int size = 15)
        {
            return await Task.Run(async () =>
            {
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
                //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
                paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
                paramList.Add(new KeyValuePair<string, string>("page", page.ToString()));
                paramList.Add(new KeyValuePair<string, string>("size", size.ToString()));
                string response = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Article/aboutme", paramList);
                //response = Utils.ConvertUnicodeStringToChinese(response);
                Debug.WriteLine(response);
                List<MyNotification> feeds = new List<MyNotification>();
                try
                {
                    if (response != "" || response != "[]")
                    {
                        JObject bbddfeeds = JObject.Parse(response);
                        if (bbddfeeds["status"].ToString() == "200")
                        {
                            JArray bbddarray = JArray.Parse(bbddfeeds["data"].ToString());
                            for (int i = 0; i < bbddarray.Count; i++)
                            {
                                MyNotification f = new MyNotification();
                                f.GetAttributes((JObject)bbddarray[i]);
                                feeds.Add(f);
                            }
                        }
                        if (page == 0) //将第一面的数据存入文件,用于后台任务
                        {
                            IStorageFolder applicationFolder = ApplicationData.Current.LocalFolder;
                            IStorageFile storageFileWR = await applicationFolder.CreateFileAsync("aboutme.txt", CreationCollisionOption.ReplaceExisting);
                            await FileIO.WriteTextAsync(storageFileWR, response);
                        }
                    }
                }
                catch (Exception) { }
                return feeds;
            });

            return null;
        }
コード例 #40
0
        public Windows.Security.Credentials.PasswordCredential GetCredentialFromLocker()
        {
            Windows.Security.Credentials.PasswordCredential credential = null;

            var vault          = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource("User");

            if (credentialList.Count > 0)
            {
                if (credentialList.Count == 1)
                {
                    credential = credentialList[0];
                }
            }

            return(credential);
        }
コード例 #41
0
        public void LogOutVk()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            vault.Remove(vault.Retrieve("VkApp", ApplicationService.Instance.Settings.UserId));
            this._vkontakte.AccessToken.Token  = null;
            this._vkontakte.AccessToken.UserId = null;
            ApplicationService.Instance.Settings.AccessToken = null;
            ApplicationService.Instance.Settings.UserId      = null;
            ApplicationService.Instance.Settings.Save();

            Messenger.Default.Send <LoginMessage>(new LoginMessage
            {
                Type      = LoginType.LogOut,
                IsSuccess = true
            });
        }
コード例 #42
0
ファイル: Setting.xaml.cs プロジェクト: gKevinK/LearnTHU-UWP
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                await MainModel.Current.Save();

                var vault = new Windows.Security.Credentials.PasswordVault();
                foreach (var record in vault.FindAllByResource("LearnTHU"))
                {
                    vault.Remove(record);
                }
            }
            finally
            {
                ((Frame)Window.Current.Content).Navigate(typeof(Login));
            }
        }
コード例 #43
0
        public void Delete(string key)
        {
            var vault = new Windows.Security.Credentials.PasswordVault();

            try
            {
                var resources = vault.FindAllByResource(key);
                if (resources.Any())
                {
                    vault.Remove(resources.First());
                }
            }
            catch (System.Runtime.InteropServices.COMException)
            {
                /* try to remove something that isn't there...not gonna throw an exception */
            }
        }
コード例 #44
0
        public async void Run(IBackgroundTaskInstance taskInstance)
        {
            try
            {
                Debug.WriteLine("开始动态磁贴后台任务");
                //获取参数列表
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                stuNum = credentialList[0].UserName;
                idNum = credentialList[0].Password;
                curriculumParamList.Add(new KeyValuePair<string, string>("stuNum", stuNum));
                transactionParamList.Add(new KeyValuePair<string, string>("stuNum", stuNum));
                transactionParamList.Add(new KeyValuePair<string, string>("idNum", idNum));

                //异步后台任务开始
                BackgroundTaskDeferral deferral = taskInstance.GetDeferral();
                #region 获取课表
                string curriculumTemp1 = await NetWork.getCurriculum(@"redapi2/api/kebiao", curriculumParamList);
                JObject jObject1 = (JObject)JsonConvert.DeserializeObject(curriculumTemp1);
                string curriculumTemp2 = jObject1["data"].ToString();
                JArray jArray1 = (JArray)JsonConvert.DeserializeObject(curriculumTemp2);
                int nowWeek = int.Parse(jObject1["nowWeek"].ToString());
                List<ClassList> tempList1 = JsonConvert.DeserializeObject<List<ClassList>>(jArray1.ToString());
                #endregion

                #region 获取事项
                string transactionTemp1 = await NetWork.getTransaction(@"http://hongyan.cqupt.edu.cn/cyxbsMobile/index.php/Home/Person/getTransaction", transactionParamList);
                JObject jObject2 = (JObject)JsonConvert.DeserializeObject(transactionTemp1);
                string transactionTemp2 = jObject2["data"].ToString();
                JArray jArray2 = (JArray)JsonConvert.DeserializeObject(transactionTemp2);
                List<Transaction> tempList2 = JsonConvert.DeserializeObject<List<Transaction>>(jArray2.ToString());
                #endregion
                //获取当地星期
                string weekDay = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek);
                Util.UpdateTile(tempList1, tempList2, nowWeek, weekDay);
                deferral.Complete();
                //异步后台任务结束
                Debug.WriteLine("结束动态磁贴后台任务");
            }
            catch (Exception)
            {
                Debug.WriteLine("动态磁贴后台任务出现异常");
            }
        }
コード例 #45
0
        private string CheckForValidToken()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();
            try
            {
                var cred = vault.Retrieve(IdentityManager.AccessControlNamespace, Name);
                IsActive = !IsExpired(cred.Password);
                if (!IsActive)
                    vault.Remove(cred);


                return cred.Password;

            }
            catch
            {
                IsActive = false;
                return string.Empty;
            }

        }
コード例 #46
0
        public MainPage_m()
        {
            this.InitializeComponent();
            appSetting = ApplicationData.Current.LocalSettings; //本地存储
            appSettingclass = ApplicationData.Current.RoamingSettings;
            this.InitializeComponent();
            this.NavigationCacheMode = NavigationCacheMode.Required;

            //MoreGRNameTextBlock.Text = appSetting.Values["name"].ToString();
            //MoreGRClassTextBlock.Text = appSetting.Values["classNum"].ToString();
            //MoreGRNumTextBlock.Text = appSetting.Values["stuNum"].ToString();
            //this.navigationHelper = new NavigationHelper(this);
            //this.navigationHelper.LoadState += this.NavigationHelper_LoadState;

            //stuNum = appSetting.Values["stuNum"].ToString();
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);
            credentialList[0].RetrievePassword();
            stuNum = credentialList[0].UserName;
            //initKB();
            initJW();
        }
コード例 #47
0
 //private ObservableCollection<uIdList> muIdList = new ObservableCollection<uIdList>();
 public SearchFreeTimeNumPage()
 {
     appSetting = ApplicationData.Current.LocalSettings; //本地存储
     this.InitializeComponent();
     //HubSectionKBNum.Text = appSetting.Values["nowWeek"].ToString();
     appSetting.Values["FreeWeek"] = appSetting.Values["nowWeek"];
     this.SizeChanged += (s, e) =>
     {
         //uIdListView.Height = e.NewSize.Height - 20 - 40;
     };
     //SystemNavigationManager.GetForCurrentView().BackRequested += App_BackRequested;
     //TODO:未登陆时 不能自动添加自己的信息
     try
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         var credentialList = vault.FindAllByResource(resourceName);
         credentialList[0].RetrievePassword();
         //if (App.muIdList.Count == 0&&appSetting.Values.ContainsKey("idNum"))
         if (App.muIdList.Count == 0 && credentialList.Count > 0)
             //App.muIdList.Add(new uIdList { uId = appSetting.Values["stuNum"].ToString(), uName = appSetting.Values["name"].ToString() });
             App.muIdList.Add(new uIdList { uId = credentialList[0].UserName, uName = appSetting.Values["name"].ToString() });
     }
     catch { }
 }
コード例 #48
0
 private async Task SaveCredentialsAsync()
 {
     if (!string.IsNullOrWhiteSpace(Settings.Username) && !string.IsNullOrWhiteSpace(Settings.Password))
     {
         await Task.Run(() =>
             {
                 var vault = new Windows.Security.Credentials.PasswordVault();
                 vault.Add(new Windows.Security.Credentials.PasswordCredential("BuildLight", Settings.Username, Settings.Password));
             });
     }
 }
コード例 #49
0
 private async void mlogin()
 {
     var vault = new Windows.Security.Credentials.PasswordVault();
     StuNumTextBox.IsEnabled = false;
     IdNumPasswordBox.IsEnabled = false;
     LoginProgressBar.IsActive = true;
     this.Focus(FocusState.Pointer);
     LoginButton.Visibility = Visibility.Collapsed;
     noLoginButton.Visibility = Visibility.Collapsed;
     List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
     paramList.Add(new KeyValuePair<string, string>("stuNum", StuNumTextBox.Text));
     paramList.Add(new KeyValuePair<string, string>("idNum", System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(IdNumPasswordBox.Password))));
     //paramList.Add(new KeyValuePair<string, string>("idNum", IdNumPasswordBox.Password));
     string login = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Verify/verifyLogin", paramList);
     Debug.WriteLine("login->" + login);
     if (login != "")
     {
         try
         {
             JObject obj = JObject.Parse(login);
             if (Int32.Parse(obj["status"].ToString()) == 200)
             {
                 vault.Add(new Windows.Security.Credentials.PasswordCredential(resourceName, StuNumTextBox.Text, IdNumPasswordBox.Password));
                 //appSetting.Values["stuNum"] = StuNumTextBox.Text;
                 //appSetting.Values["idNum"] = IdNumPasswordBox.Password;
                 JObject dataobj = JObject.Parse(obj["data"].ToString());
                 appSetting.Values["name"] = dataobj["name"].ToString();
                 appSetting.Values["classNum"] = dataobj["classNum"].ToString();
                 appSetting.Values["gender"] = dataobj["gender"].ToString();
                 appSetting.Values["major"] = dataobj["major"].ToString();
                 appSetting.Values["college"] = dataobj["college"].ToString();
                 appSetting.Values["CommunityPerInfo"] = false;
                 if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.UI.StartScreen.JumpList"))
                 {
                     if (JumpList.IsSupported())
                         SetSystemGroupAsync();
                     else if (JumpList.IsSupported())
                         DisableSystemJumpListAsync();
                 }
                 appSetting.Values["isUseingBackgroundTask"] = true;
                 Frame.Navigate(typeof(MainPage), "/kb");
             }
             else if (Int32.Parse(obj["status"].ToString()) == -100)
             {
                 Utils.Message("学号不存在");
                 noLoginButton.Visibility = Visibility.Visible;
             }
             else if (Int32.Parse(obj["status"].ToString()) == 201)
             {
                 Utils.Message("学号或密码错误");
                 noLoginButton.Visibility = Visibility.Visible;
             }
             else
             {
                 Utils.Message(obj["info"].ToString());
                 noLoginButton.Visibility = Visibility.Visible;
             }
         }
         catch (Exception)
         {
             Debug.WriteLine("登陆->返回值解析异常");
         }
     }
     else
         Utils.Message("网络异常");
     LoginButton.Visibility = Visibility.Visible;
     LoginProgressBar.IsActive = false;
     StuNumTextBox.IsEnabled = true;
     IdNumPasswordBox.IsEnabled = true;
     // Debug.WriteLine(StuNumTextBox.FocusState);
     //StuNumTextBox.Focus(FocusState.Unfocused);
     // IdNumPasswordBox.Focus(FocusState.Pointer);
 }
コード例 #50
0
 private void CommunityAddAppBarButton_Click(object sender, RoutedEventArgs e)
 {
     //TODO:未登陆时 无法发表新帖
     CommunityFrame.Visibility = Visibility.Visible;
     SystemNavigationManager.GetForCurrentView().BackRequested += App_BackRequested;
     SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible;
     //if (appSetting.Values.ContainsKey("idNum"))
     try
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         var credentialList = vault.FindAllByResource(resourceName);
         credentialList[0].RetrievePassword();
         if (credentialList.Count > 0)
             CommunityFrame.Navigate(typeof(CommunityAddPage));
         else
         {
             var msgPopup = new Data.loginControl("您还没有登录 无法发布新帖~");
             msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
             msgPopup.RightClick += (s, c) => { Debug.WriteLine("您可以先去社区逛一逛~"); };
             msgPopup.ShowWIndow();
         }
     }
     catch
     {
         var msgPopup = new Data.loginControl("您还没有登录 无法发布新帖~");
         msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
         msgPopup.RightClick += (s, c) => { Debug.WriteLine("您可以先去社区逛一逛~"); };
         msgPopup.ShowWIndow();
     }
 }
コード例 #51
0
        private async void liskButton_Click(object sender, RoutedEventArgs e)
        {
            //TODO:未登陆时 不能点赞
            //if (appSetting.Values.ContainsKey("idNum"))
            try
            {
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                if (credentialList.Count > 0)
                {
                    var b = sender as Button;

                    string num_id = b.TabIndex.ToString();
                    Debug.WriteLine(num_id);
                    Debug.WriteLine("id " + num_id.Substring(2));
                    string like_num = "";
                    try
                    {
                        if (int.Parse(num_id[0].ToString()) < 5) //hot
                        {
                            HotFeed hotfeed = ViewModel.HotFeeds.First(p => p.article_id.Equals(num_id.Substring(2)));
                            if (hotfeed.is_my_Like == "true" || hotfeed.is_my_Like == "True")
                            {
                                like_num = await CommunityFeedsService.setPraise(hotfeed.type_id, num_id.Substring(2), false);
                                if (like_num != "")
                                {
                                    hotfeed.like_num = like_num;
                                    hotfeed.is_my_Like = "false";
                                    if (ViewModel.BBDD.Count(p => p.id.Equals(num_id.Substring(2))) != 0)
                                    {
                                        BBDDFeed s = ViewModel.BBDD.First(p => p.id.Equals(num_id.Substring(2)));
                                        if (s != null)
                                        {
                                            s.like_num = like_num;
                                            s.is_my_like = "false";
                                        }
                                    }
                                }
                            }
                            else
                            {
                                like_num = await CommunityFeedsService.setPraise(hotfeed.type_id, num_id.Substring(2), true);
                                if (like_num != "")
                                {
                                    hotfeed.like_num = like_num;
                                    hotfeed.is_my_Like = "true";
                                    if (ViewModel.BBDD.Count(p => p.id.Equals(num_id.Substring(2))) != 0)
                                    {
                                        BBDDFeed s = ViewModel.BBDD.First(p => p.id.Equals(num_id.Substring(2)));
                                        if (s != null)
                                        {
                                            s.like_num = like_num;
                                            s.is_my_like = "true";
                                        }
                                    }
                                }
                            }
                        }
                        else if (num_id[0] == '5') //bbdd
                        {
                            BBDDFeed bbddfeed = ViewModel.BBDD.First(p => p.id.Equals(num_id.Substring(2)));
                            if (bbddfeed.is_my_like == "true" || bbddfeed.is_my_like == "True")
                            {
                                like_num = await CommunityFeedsService.setPraise(bbddfeed.type_id, num_id.Substring(2), false);
                                if (like_num != "")
                                {
                                    bbddfeed.like_num = like_num;
                                    bbddfeed.is_my_like = "false";
                                    if (ViewModel.HotFeeds.Count(p => p.article_id.Equals(num_id.Substring(2))) != 0)
                                    {
                                        HotFeed h = ViewModel.HotFeeds.First(p => p.article_id.Equals(num_id.Substring(2)));
                                        if (h != null)
                                        {
                                            h.like_num = like_num;
                                            h.is_my_Like = "false";
                                        }
                                    }
                                }
                            }
                            else
                            {
                                like_num = await CommunityFeedsService.setPraise(bbddfeed.type_id, num_id.Substring(2), true);
                                if (like_num != "")
                                {
                                    bbddfeed.like_num = like_num;
                                    bbddfeed.is_my_like = "true";
                                    if (ViewModel.HotFeeds.Count(p => p.article_id.Equals(num_id.Substring(2))) != 0)
                                    {
                                        HotFeed h = ViewModel.HotFeeds.First(p => p.article_id.Equals(num_id.Substring(2)));
                                        if (h != null)
                                        {
                                            h.like_num = like_num;
                                            h.is_my_Like = "true";
                                        }
                                    }
                                }
                            }
                        }
                    }
                    catch (Exception)
                    {
                        Debug.WriteLine("点赞异常");
                    }
                }
                else
                {
                    var msgPopup = new Data.loginControl("您还没有登录 无法点赞~");
                    msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                    msgPopup.RightClick += (s, c) => { Debug.WriteLine("您可以先去社区逛一逛~"); };
                    msgPopup.ShowWIndow();
                }
            }
            catch
            {
                var msgPopup = new Data.loginControl("您还没有登录 无法点赞~");
                msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                msgPopup.RightClick += (s, c) => { Debug.WriteLine("您可以先去社区逛一逛~"); };
                msgPopup.ShowWIndow();
            }
        }
コード例 #52
0
 private void StackPanel_Tapped(object sender, TappedRoutedEventArgs e)
 {
     //if (appSetting.Values.ContainsKey("idNum"))
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName);
     credentialList[0].RetrievePassword();
     if (credentialList.Count > 0)
     {
         BBDDFeed b = ((StackPanel)sender).DataContext as BBDDFeed;
         App.ViewModel = ViewModel;
         App.CommunityPivotState = CommunityPivot.SelectedIndex;
         App.CommunityScrollViewerOffset = BBDDScrollViewer.VerticalOffset;
         isPersonInfo = true;
         Frame.Navigate(typeof(CommunityPersonInfo), b.stunum);
     }
     else
     {
         var msgPopup = new Data.loginControl("登录即可查看他人动态~");
         msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
         msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先四处逛一逛~"); };
         msgPopup.ShowWIndow();
     }
 }
コード例 #53
0
        public MainPage()
        {
            this.InitializeComponent();
            // HamburgerButton.Click += HamburgerButton_Click;
            this.Loaded += (sender, args) =>
            {
                Current = this;
                //然并卵
                this.TogglePaneButton.Focus(FocusState.Programmatic);
            };
            //this.AppFrame.Navigate(navlist[0].DestPage, navlist[0].Arguments);
            if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.UI.ViewManagement.StatusBar"))
            {
                Utils.ShowSystemTrayAsync(Color.FromArgb(255, 6, 140, 253), Colors.White);
            }
            else if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
            {
                Windows.Phone.UI.Input.HardwareButtons.BackPressed += OnBackPressed;
            }
            else
            {
                var view = ApplicationView.GetForCurrentView();
                view.TitleBar.BackgroundColor = Color.FromArgb(255, 4, 131, 239);
                view.TitleBar.ButtonBackgroundColor = Color.FromArgb(255, 4, 131, 239);
                view.TitleBar.ButtonHoverBackgroundColor = Color.FromArgb(255, 2, 126, 231);
                view.TitleBar.ButtonPressedBackgroundColor = Color.FromArgb(255, 2, 111, 203);
            }
            this.SizeChanged += (s, e) =>
            {
                Debug.WriteLine(e.NewSize.Width);
                if (e.NewSize.Width >= 400)
                {
                    RootSplitView.CompactPaneLength = 48;
                    TogglePaneButton.Visibility = Visibility.Visible;
                    TogglePaneLightButton.Visibility = Visibility.Collapsed;
                    App.showpane = true;
                }
                else
                {
                    RootSplitView.CompactPaneLength = 0;
                    TogglePaneButton.Visibility = Visibility.Collapsed;
                    TogglePaneLightButton.Visibility = Visibility.Visible;
                    App.showpane = false;
                }
                if (e.NewSize.Height - 96 < navlist.Count * 48)
                {
                    //高度太小
                    NavMenuList.Margin = new Thickness(0, 48, 0, 48);
                }
                else
                {
                    NavMenuList.Margin = new Thickness(0, 48, 0, 0);
                }
            };
            //TODO:未登录时 没有名字 
            //if (appSetting.Values.ContainsKey("idNum"))
            try
            {
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                if (credentialList.Count > 0)
                    stuNameTextBlock.Text = appSetting.Values["name"].ToString();
                else
                    stuNameTextBlock.Text = "尚未登陆~";
            }
            catch
            {
                stuNameTextBlock.Text = "尚未登陆~";
            }

            SystemNavigationManager.GetForCurrentView().BackRequested += SystemNavigationManager_BackRequseted;
            //如果是在手机上,有实体键,隐藏返回键。
            if (ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
            {
                //this.BackButton.Visibility = Visibility.Collapsed;
            }
            NavMenuList.ItemsSource = navlist;
            ActivateWindow();
            //NavMenuList.SelectedIndex = 0;
            var a = DateTime.Now;
            if (DateTimeOffset.Now < DateTimeOffset.Parse("2016/3/15 00:00:00"))
                showNotice();
            else
                appSetting.Values.Remove("showNotice");
            //TODO:未登录时采用默认头像
            //if (appSetting.Values.ContainsKey("idNum"))
            try
            {
                var vault = new Windows.Security.Credentials.PasswordVault();
                var credentialList = vault.FindAllByResource(resourceName);
                credentialList[0].RetrievePassword();
                if (credentialList.Count > 0)
                    initHeadImage();
            }
            catch { }
        }
コード例 #54
0
 private async void clipHeadOKButton_Click(object sender, RoutedEventArgs e)
 {
     upClipHeadProgressBar.Visibility = Visibility.Visible;
     try
     {
         //HttpClient _httpClient = new HttpClient();
         //CancellationTokenSource _cts = new CancellationTokenSource();
         RenderTargetBitmap mapBitmap = new RenderTargetBitmap();
         await mapBitmap.RenderAsync(headScrollViewer);
         var pixelBuffer = await mapBitmap.GetPixelsAsync();
         IStorageFolder applicationFolder = ApplicationData.Current.LocalFolder;
         IStorageFile saveFile = await applicationFolder.CreateFileAsync("temphead.png", CreationCollisionOption.OpenIfExists);
         using (var fileStream = await saveFile.OpenAsync(FileAccessMode.ReadWrite))
         {
             var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, fileStream);
             encoder.SetPixelData(
                 BitmapPixelFormat.Bgra8,
                 BitmapAlphaMode.Ignore,
                 (uint)mapBitmap.PixelWidth,
                 (uint)mapBitmap.PixelHeight,
                 DisplayInformation.GetForCurrentView().LogicalDpi,
                 DisplayInformation.GetForCurrentView().LogicalDpi,
                 pixelBuffer.ToArray());
             await encoder.FlushAsync();
         }
         var vault = new Windows.Security.Credentials.PasswordVault();
         var credentialList = vault.FindAllByResource(resourceName);
         credentialList[0].RetrievePassword();
         //string uphead = await NetWork.headUpload(appSetting.Values["stuNum"].ToString(), "ms-appdata:///local/temphead.png");
         string uphead = await NetWork.headUpload(credentialList[0].UserName, "ms-appdata:///local/temphead.png");
         Debug.WriteLine(uphead);
         if (uphead != "")
         {
             JObject obj = JObject.Parse(uphead);
             if (Int32.Parse(obj["state"].ToString()) == 200)
             {
                 ClipHeadGrid.Visibility = Visibility.Collapsed;
                 BackOpacityGrid.Visibility = Visibility.Collapsed;
                 initHeadImage();
             }
             else
             {
                 Utils.Toast("头像上传错误");
             }
         }
         else
         {
             Utils.Toast("头像上传错误");
         }
         upClipHeadProgressBar.Visibility = Visibility.Collapsed;
     }
     catch (Exception)
     {
         Debug.WriteLine("设置头像,保存新头像异常");
     }
 }
コード例 #55
0
 //TODO:未登录时不能选择上传头像
 private async void headimgRectangle_Tapped(object sender, TappedRoutedEventArgs e)
 {
     //if (appSetting.Values.ContainsKey("idNum"))
     try
     {
         var vault = new Windows.Security.Credentials.PasswordVault();
         var credentialList = vault.FindAllByResource(resourceName);
         credentialList[0].RetrievePassword();
         if (credentialList.Count > 0)
         {
             FileOpenPicker openPicker = new FileOpenPicker();
             openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
             openPicker.FileTypeFilter.Add(".png");
             openPicker.FileTypeFilter.Add(".jpg");
             openPicker.FileTypeFilter.Add(".bmp");
             openPicker.FileTypeFilter.Add(".gif");
             openPicker.ContinuationData["Operation"] = "img";
             StorageFile file = await openPicker.PickSingleFileAsync();
             if (file != null)
             {
                 ClipHeadGrid.Visibility = Visibility.Visible;
                 BackOpacityGrid.Visibility = Visibility.Visible;
                 SoftwareBitmap sb = null;
                 using (IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.Read))
                 {
                     // Create the decoder from the stream
                     BitmapDecoder decoder = await BitmapDecoder.CreateAsync(stream);
                     // Get the SoftwareBitmap representation of the file
                     SoftwareBitmap softwareBitmap = await decoder.GetSoftwareBitmapAsync(BitmapPixelFormat.Bgra8, BitmapAlphaMode.Premultiplied);
                     sb = softwareBitmap;
                     // return softwareBitmap;
                 }
                 SoftwareBitmapSource source = new SoftwareBitmapSource();
                 await source.SetBitmapAsync(sb);
                 headImage.Source = source;
             }
         }
         else
         {
             var msgPopup = new Data.loginControl("您还没有登录 不能上传头像哦~");
             msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
             msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
             msgPopup.ShowWIndow();
         }
     }
     catch
     {
         var msgPopup = new Data.loginControl("您还没有登录 不能上传头像哦~");
         msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
         msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
         msgPopup.ShowWIndow();
     }
 }
コード例 #56
0
        /// <summary>
        /// Navigate to the Page for the selected <paramref name="listViewItem"/>.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="listViewItem"></param>
        private async void NavMenuList_ItemInvoked(object sender, ListViewItem listViewItem)
        {
            var item = (NavMenuItem)((NavMenuListView)sender).ItemFromContainer(listViewItem);
            if (item != null)
            {
                if (item.DestPage != null &&
                    item.DestPage != this.AppFrame.CurrentSourcePageType)
                {
                    //appSetting.Values["CommunityPerInfo"] = false;
                    //TODO:未登录时 不能传入社区个人信息和个人信息页信息 谨慎处理
                    //if (!bool.Parse(appSetting.Values["CommunityPerInfo"].ToString()) && (item.DestPage == typeof(MyPage) || item.DestPage == typeof(CommunityPage)))
                    try
                    {
                        var vault = new Windows.Security.Credentials.PasswordVault();
                        var credentialList = vault.FindAllByResource(resourceName);
                        credentialList[0].RetrievePassword();
                        if (!bool.Parse(appSetting.Values["CommunityPerInfo"].ToString()) && (item.DestPage == typeof(MyPage)))
                        {
                            if (credentialList.Count > 0)
                            {
                                BackOpacityGrid.Visibility = Visibility.Visible;
                                loadingStackPanel.Visibility = Visibility.Visible;
                                List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
                                //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                                //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                                paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
                                paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
                                string perInfo = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Person/search", paramList);
                                if (perInfo != "")
                                {
                                    JObject jPerInfo = JObject.Parse(perInfo);
                                    if (jPerInfo["data"].ToString() == "")
                                    {
                                        var dig = new MessageDialog("没有完善资料不能登入友谊的小船哟");
                                        var btnOk = new UICommand("马上完善");
                                        dig.Commands.Add(btnOk);
                                        var btnCancel = new UICommand("暂时不了");
                                        dig.Commands.Add(btnCancel);
                                        var result = await dig.ShowAsync();
                                        if (null != result && result.Label == "马上完善")
                                        {
                                            Debug.WriteLine("添加信息");
                                            BackOpacityGrid.Visibility = Visibility.Collapsed;
                                            loadingStackPanel.Visibility = Visibility.Collapsed;
                                            this.AppFrame.Navigate(typeof(SetPersonInfoPage), item.DestPage);

                                        }
                                        else if (null != result && result.Label == "暂时不了")
                                        {
                                            BackOpacityGrid.Visibility = Visibility.Collapsed;
                                            loadingStackPanel.Visibility = Visibility.Collapsed;
                                        }
                                    }
                                    else
                                    {
                                        appSetting.Values["CommunityPerInfo"] = true;
                                        appSetting.Values["Community_people_id"] = jPerInfo["data"]["id"].ToString();
                                        appSetting.Values["Community_nickname"] = jPerInfo["data"]["nickname"].ToString();
                                        appSetting.Values["Community_headimg_src"] = jPerInfo["data"]["photo_src"].ToString();
                                        appSetting.Values["Community_introduction"] = jPerInfo["data"]["introduction"].ToString();
                                        appSetting.Values["Community_phone"] = jPerInfo["data"]["phone"].ToString();
                                        appSetting.Values["Community_qq"] = jPerInfo["data"]["qq"].ToString();
                                        Debug.WriteLine(appSetting.Values["Community_headimg_src"].ToString());

                                        Debug.WriteLine(jPerInfo["data"]["id"].ToString());
                                        BackOpacityGrid.Visibility = Visibility.Collapsed;
                                        loadingStackPanel.Visibility = Visibility.Collapsed;
                                        if ((item.DestPage != typeof(MyPage)))
                                            this.AppFrame.Navigate(item.DestPage, item.Arguments);
                                        SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
                                    }
                                }
                            }
                            else
                            {
                                if ((item.DestPage != typeof(MyPage)))
                                {
                                    this.AppFrame.Navigate(item.DestPage, item.Arguments);
                                    var msgPopup = new Data.loginControl("您还没有登录 不能访问个人中心~");
                                    msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                                    msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
                                    msgPopup.ShowWIndow();
                                }
                                else
                                {
                                    var msgPopup = new Data.loginControl("您还没有登录 不能访问个人中心~");
                                    msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                                    msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
                                    msgPopup.ShowWIndow();
                                }
                            }
                        }
                        else
                        {
                            this.AppFrame.Navigate(item.DestPage, item.Arguments);
                            SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
                        }
                    }
                    catch
                    {
                        if (!bool.Parse(appSetting.Values["CommunityPerInfo"].ToString()) && (item.DestPage == typeof(MyPage)))
                        {
                            if ((item.DestPage != typeof(MyPage)))
                            {
                                this.AppFrame.Navigate(item.DestPage, item.Arguments);
                                var msgPopup = new Data.loginControl("您还没有登录 不能访问个人中心~");
                                msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                                msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
                                msgPopup.ShowWIndow();
                            }
                            else
                            {
                                var msgPopup = new Data.loginControl("您还没有登录 不能访问个人中心~");
                                msgPopup.LeftClick += (s, c) => { Frame rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(LoginPage)); };
                                msgPopup.RightClick += (s, c) => { new MessageDialog("您可以先去社区逛一逛~"); };
                                msgPopup.ShowWIndow();
                            }
                        }
                        else
                        {
                            this.AppFrame.Navigate(item.DestPage, item.Arguments);
                            SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Collapsed;
                        }
                    }
                }
            }
        }
コード例 #57
0
        private async void initHeadImage()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);
            credentialList[0].RetrievePassword();
            List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
            //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
            //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
            paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
            paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
            string headimg = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Person/search", paramList);
            if (headimg != "")
            {
                try
                {
                    JObject obj = JObject.Parse(headimg);
                    if (Int32.Parse(obj["status"].ToString()) == 200)
                    {
                        if (obj["data"].ToString() != "")
                        {
                            string a = obj["data"].ToString();
                            JObject objdata = JObject.Parse(obj["data"].ToString());
                            headimgImageBrush.ImageSource = new BitmapImage(new Uri(objdata["photo_src"].ToString()));
                            appSetting.Values["Community_headimg_src"] = objdata["photo_src"].ToString();

                            Size downloadSize = new Size(48, 48);
                            await Utils.DownloadAndScale("headimg.png", objdata["photo_src"].ToString(), new Size(100, 100));
                        }
                    }
                }
                catch (Exception)
                {
                    Debug.WriteLine("头像下载失败");
                }
            }
            else
            {
                try
                {
                    appSetting.Values["Community_headimg_src"] = "";
                    IStorageFolder applicationFolder = ApplicationData.Current.LocalFolder;
                    IStorageFile storageFileRE = await applicationFolder.GetFileAsync("headimg.png");
                    headimgImageBrush.ImageSource = new BitmapImage(new Uri(storageFileRE.Path));
                }
                catch (Exception)
                {
                    Debug.WriteLine("缓存头像文件不存在");
                }

            }
        }
コード例 #58
0
 private async void SetPersonInfoOKAppBarButton_Click(object sender, RoutedEventArgs e)
 {
     appSetting.Values["Community_nickname"] = nameTextBox.Text;
     var vault = new Windows.Security.Credentials.PasswordVault();
     var credentialList = vault.FindAllByResource(resourceName);
     credentialList[0].RetrievePassword();
     List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
     //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
     //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
     //paramList.Add(new KeyValuePair<string, string>("stuuum", appSetting.Values["stuNum"].ToString()));
     paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
     paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
     paramList.Add(new KeyValuePair<string, string>("stuuum", credentialList[0].UserName));
     paramList.Add(new KeyValuePair<string, string>("nickname", nameTextBox.Text));
     paramList.Add(new KeyValuePair<string, string>("introduction", abstractTextBox.Text));
     paramList.Add(new KeyValuePair<string, string>("qq", qqTextBox.Text));
     paramList.Add(new KeyValuePair<string, string>("phone", phoneTextBox.Text));
     string setinfo = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Person/setInfo", paramList);
     try
     {
         if (setinfo != "")
         {
             JObject obj = JObject.Parse(setinfo);
             if (Int32.Parse(obj["status"].ToString()) == 200)
             {
                 string perInfo = await NetWork.getHttpWebRequest("cyxbsMobile/index.php/Home/Person/search", paramList);
                 if (perInfo != "")
                 {
                     JObject jPerInfo = JObject.Parse(perInfo);
                     appSetting.Values["Community_people_id"] = jPerInfo["data"]["id"].ToString();
                     Debug.WriteLine(jPerInfo["data"]["id"].ToString());
                 }
                 var navPage = ee.Parameter;
                 if (navPage == typeof(CommunityPage))
                 {
                     Utils.Toast("新建个人信息成功~~,尽情享用吧");
                     this.Frame.Navigate(typeof(CommunityPage));
                 }
                 else if (navPage == typeof(MyPage))
                 {
                     Utils.Toast("新建个人信息成功~~,尽情享用吧");
                     this.Frame.Navigate(typeof(MyPage));
                 }
                 else
                 {
                     Frame.GoBack();
                 }
             }
             else if (Int32.Parse(obj["status"].ToString()) == 801)
             {
                 Utils.Toast("更新资料失败,请检查是否包含特殊词");
             }
         }
     }
     catch (Exception) { }
 }
コード例 #59
0
        private async void initExam()
        {
            string exam = "";
            List<KeyValuePair<String, String>> paramList = new List<KeyValuePair<String, String>>();
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialList = vault.FindAllByResource(resourceName);
            credentialList[0].RetrievePassword();

            //await Utils.ShowSystemTrayAsync(Color.FromArgb(255, 2, 140, 253), Colors.White, text: "正在紧张安排考试...", isIndeterminate: true);
            //TODO:未登陆时 没有考试/补考信息
            if (IsExamOrRe == 2)
            {
                //paramList.Add(new KeyValuePair<string, string>("stuNum", appSetting.Values["stuNum"].ToString()));
                //paramList.Add(new KeyValuePair<string, string>("idNum", appSetting.Values["idNum"].ToString()));
                paramList.Add(new KeyValuePair<string, string>("stuNum", credentialList[0].UserName));
                paramList.Add(new KeyValuePair<string, string>("idNum", credentialList[0].Password));
                exam = await NetWork.getHttpWebRequest("api/examSchedule", paramList);
            }
            else if (IsExamOrRe == 3)
            {
#if DEBUG
                paramList.Add(new KeyValuePair<string, string>("stu", "2014214136"));
#else   
                //paramList.Add(new KeyValuePair<string, string>("stu", appSetting.Values["stuNum"].ToString()));
                paramList.Add(new KeyValuePair<string, string>("stu", credentialList[0].UserName));
#endif
                exam = await NetWork.getHttpWebRequest("examapi/index.php", paramList);
            }
            Debug.WriteLine("exam->" + exam);
            if (exam != "")
            {
                try
                {
                    JObject obj = JObject.Parse(exam);
                    if (Int32.Parse(obj["status"].ToString()) == 200)
                    {
                        List<ExamList> examList = new List<ExamList>();
                        JArray ExamListArray = Utils.ReadJso(exam);
                        for (int i = 0; i < ExamListArray.Count; i++)
                        {
                            ExamList examitem = new ExamList();
                            examitem.GetAttribute((JObject)ExamListArray[i]);
                            if (IsExamOrRe == 2)
                                examitem.DateTime = "第" + examitem.Week + "周周" + examitem.Weekday + "\r\n" + examitem.Begin_time + "-" + examitem.End_time;
                            else if (IsExamOrRe == 3)
                                examitem.DateTime = "日期:" + examitem.Date + "\r\n" + "时间:" + examitem.Time;
                            examList.Add(examitem);
                        }
                        examList = examList.OrderBy(x => x.DateTime).ToList();
                        var nonzeroweek = from x in examList where x.Begin_time=="待定" select x;//    examList.Select(x => !x.DateTime.Contains("周0")).ToList();
                        var zeroweek = from x in examList where x.Begin_time!="待定" select x;// examList.Select(x => x.DateTime.Contains("周0"));
                        List<ExamList> orderedlist = new List<ExamList>();
                        orderedlist.AddRange(zeroweek);
                        orderedlist.AddRange(nonzeroweek);
                        ObservableCollection<ExamList> move = new ObservableCollection<ExamList>();
                        ExamListView.ItemsSource = move;
                        for (int i = 0; i < orderedlist.Count; i++)
                        {
                            move.Add(orderedlist[i]);
                            await Task.Delay(60);
                        }
                    }
                    else if (Int32.Parse(obj["status"].ToString()) == 300)
                    {
                        ListFailedStackPanelTextBlock.Text = "暂无数据,过几天再来看看";

                        ListFailedStackPanel.Visibility = Visibility.Visible;
                        ListFailedStackPanelImage.Visibility = Visibility.Collapsed;
                        ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                    }
                    else if (Int32.Parse(obj["status"].ToString()) == 0)
                    {
                        ListFailedStackPanelTextBlock.Text = "没补考的孩子别瞎点";

                        ListFailedStackPanel.Visibility = Visibility.Visible;
                        ListFailedStackPanelImage.Visibility = Visibility.Collapsed;
                        ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        ListFailedStackPanelTextBlock.Text = "加载失败,点击重试";

                        ListFailedStackPanel.Visibility = Visibility.Visible;
                        ListFailedStackPanelImage.Visibility = Visibility.Visible;
                        ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                    }
                }
                catch (Exception)
                {
                    Debug.WriteLine("考试信息->解析异常");
                    ListFailedStackPanelTextBlock.Text = "加载失败,点击重试";

                    ListFailedStackPanel.Visibility = Visibility.Visible;
                    ListFailedStackPanelImage.Visibility = Visibility.Visible;
                    ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
                }
            }
            else
            {
                ListFailedStackPanelTextBlock.Text = "加载失败,点击重试";

                ListFailedStackPanel.Visibility = Visibility.Visible;
                ListFailedStackPanelImage.Visibility = Visibility.Visible;
                ListFailedStackPanelTextBlock.Visibility = Visibility.Visible;
            }
            //StatusBar statusBar = StatusBar.GetForCurrentView();
            //await statusBar.ProgressIndicator.HideAsync();
        }
コード例 #60
0
        private bool GetCredentials()
        {
            var vault = new Windows.Security.Credentials.PasswordVault();
            var credentialsLoaded = true;

            try
            {
                var allCreds = vault.FindAllByResource("BuildLight");
                var credential = allCreds.FirstOrDefault();
                if (credential != null)
                {
                    credential.RetrievePassword();
                    Settings.Username = credential.UserName;
                    Settings.Password = credential.Password;
                }
                else
                {
                    credentialsLoaded = false;
                }
            }
            catch (Exception ex)
            {
                credentialsLoaded = false;
                Telemetry.TrackError(ex);
            }

            return credentialsLoaded;
        }