Example #1
0
        static void Boot()
        {
            bool hasFile = File.Exists(FilePath), hasData = File.Exists(DataPath);

            if (!hasFile || !hasData)
            {
                string file = !hasFile?Path.GetFileName(FilePath) : Path.GetFileName(DataPath);

                throw new Exception($"File '{file}' missing. Sorry :(");
            }

            XDocument document, data;

            try
            {
                document = XDocument.Load(FilePath);
                data     = XDocument.Load(DataPath);
            }
            catch (XmlException)
            {
                throw new Exception($"Invalid format loaded files. Sorry :(");
            }

            foreach (var item in document.Element(Tags["body"]).Elements())
            {
                FuncHelp.Add(item.Name.LocalName, item);

                if (item.Element(Tags["param"]) != null && item.Element(Tags["alias"]).Value.Trim().Length != 0)
                {
                    AliasFunc.Add(item.Name.LocalName, item.Element(Tags["alias"]).Value);
                }

                var attrs = new Dictionary <string, char> {
                };

                if (item.Element(Tags["param"]) != null)
                {
                    foreach (var attr in item.Element(Tags["param"]).Elements())
                    {
                        attrs.Add(attr.Name.LocalName, attr.Value.Trim()[0]);
                    }
                }
                else
                {
                    continue;
                }

                Attributes.Add(item.Name.LocalName, attrs);
            }

            foreach (var item in data.Element(Tags["body"]).Elements())
            {
                Accaunts.Add(item.Attribute(Tags["id"]).Value, item);
            }
        }
Example #2
0
 private void Button_Click_update(object sender, RoutedEventArgs e)
 {
     accaunts.Clear();
     foreach (var ac in context.Clients.Find(currentUser.Id).accaunts)
     {
         Accaunts viewAcc = new Accaunts();
         viewAcc.link = GetPhoto.PhotoById(int.Parse(ac.link));
         viewAcc.Id   = ac.Id;
         accaunts.Add(viewAcc);
     }
 }
Example #3
0
 public MainWindow(Client user)
 {
     context     = new MyDbContext();
     currentUser = user;
     DataContext = user;
     InitializeComponent();
     Title    = user.Login;
     accaunts = new BindingList <Accaunts>();
     foreach (var acc in user.accaunts)
     {
         Accaunts viewAcc = new Accaunts();
         viewAcc.link = GetPhoto.PhotoById(int.Parse(acc.link));
         viewAcc.Id   = acc.Id;
         accaunts.Add(viewAcc);
     }
 }
Example #4
0
        private void Button_Click_AddAcc(object sender, RoutedEventArgs e)
        {
            System.Windows.Controls.Button button = (System.Windows.Controls.Button)sender;
            Accaunts accaunts = new Accaunts();

            accaunts.Clients.Add(context.Clients.Find(clientId));
            accaunts.link = button.Tag.ToString();
            foreach (var it in context.Clients.Find(clientId).accaunts)
            {
                if (it.link.Equals(accaunts.link))
                {
                    MessageBox.Show("пользователь уже отслеживается"); return;
                }
            }
            if (context.Clients.Find(clientId).accaunts.Count() > context.Clients.Find(clientId).maxCount)
            {
                MessageBox.Show("превышен лемит подписок"); return;
            }
            context.Accaunts.Add(accaunts);
            context.SaveChanges();
        }