public PhoneBookItemInfo(PhoneBookItem item)
 {
     Username    = item.Username;
     Name        = item.Name;
     PhoneNumber = item.PhoneNumber;
     Extensions  = item.Extensions;
     Email       = item.Email;
     PictureUrl  = item.PictureUrl;
 }
 public PhoneBookItemInfo(PhoneBookItem item)
 {
     Username = item.Username;
     Name = item.Name;
     PhoneNumber = item.PhoneNumber;
     Extensions = item.Extensions;
     Email = item.Email;
     PictureUrl = item.PictureUrl;
 }
        public IActionResult GetPhoneBookItem(long id)
        {
            XDocument doc     = XDocument.Load("data.xml");
            XElement  element = doc.Element("phonebookitems").Elements("phonebookitem").Elements("id").SingleOrDefault(x => x.Value == id.ToString());

            XElement parent = element.Parent;

            PhoneBookItem phonebookitem = new PhoneBookItem
            {
                Id     = Convert.ToInt64(parent.Element("id").Value),
                Name   = parent.Element("name").Value,
                Type   = (PhoneTypeEnumeration.PhoneType)Enum.Parse(typeof(PhoneTypeEnumeration.PhoneType), parent.Element("type").Value),
                Number = parent.Element("number").Value
            };

            return(Ok(phonebookitem));
        }
        public void PostPhoneBookItem(long id, PhoneBookItem PhoneBookItem)
        {
            XDocument doc = XDocument.Load("data.xml");

            var items = from item in doc.Descendants("phonebookitem")
                        where item.Element("id").Value == id.ToString()
                        select item;

            foreach (XElement itemElement in items)
            {
                itemElement.SetElementValue("name", PhoneBookItem.Name);
                itemElement.SetElementValue("type", PhoneBookItem.Type);
                itemElement.SetElementValue("number", PhoneBookItem.Number);
            }

            doc.Save("data.xml");
        }
示例#5
0
 void AddPhoneBookItem(PhoneBookItem phone_book_item)
 {
     lock (phone_book_sync)
     {
         var node = new TreeNode(phone_book_item.Name, Constants.USER_ICON_INDEX, Constants.USER_ICON_INDEX)
         {
             Tag = phone_book_item
         };
         var phone_number_node = new TreeNode(phone_book_item.PhoneNumber, Constants.PHONE_NUMBER_ICON_INDEX, Constants.PHONE_NUMBER_ICON_INDEX)
         {
             Tag = phone_book_item.PhoneNumber
         };
         node.Nodes.Add(phone_number_node);
         node.Expand();
         AddNodeToTreeNode(phone_book_root_node, node);
     }
 }
        public IActionResult GetPhoneBookItems()
        {
            List <PhoneBookItem> PhoneBookItems = new List <PhoneBookItem>();
            XDocument            doc            = XDocument.Load("data.xml");

            foreach (XElement element in doc.Descendants("phonebookitems")
                     .Descendants("phonebookitem"))
            {
                PhoneBookItem phonebookitem = new PhoneBookItem
                {
                    Id     = Convert.ToInt64(element.Element("id").Value),
                    Name   = element.Element("name").Value,
                    Type   = (PhoneTypeEnumeration.PhoneType)Enum.Parse(typeof(PhoneTypeEnumeration.PhoneType), element.Element("type").Value),
                    Number = element.Element("number").Value
                };

                PhoneBookItems.Add(phonebookitem);
                PhoneBookItems = PhoneBookItems.OrderBy(p => p.Name).ToList();
            }

            return(Ok(PhoneBookItems));
        }
示例#7
0
        public IActionResult SearchPhoneBookItems(string term = "")
        {
            var data = new List <PhoneBookItem>();

            var filter = "(&(objectCategory=person)(objectclass=user)";

            if (!string.IsNullOrEmpty(term))
            {
                filter += $"(name=*{term}*)";
            }

            filter += ")";

            var entry = Domain.GetCurrentDomain().GetDirectoryEntry();

            var searcher = new DirectorySearcher(entry, filter);

            searcher.PropertiesToLoad.Add("name");
            searcher.PropertiesToLoad.Add("mobile");
            searcher.PropertiesToLoad.Add("mail");
            searcher.PropertiesToLoad.Add("telephonenumber");

            var result = searcher.FindAll();

            foreach (SearchResult searchResult in result)
            {
                var user = new PhoneBookItem(searchResult);

                if (user.HasContactsInformation())
                {
                    data.Add(user);
                }
            }

            data = data.OrderBy(c => c.Name).ToList();

            return(Json(data));
        }
        public void PostPhoneBookItem(PhoneBookItem PhoneBookItem)
        {
            int       maxId;
            XDocument doc          = XDocument.Load("data.xml");
            bool      elementExist = doc.Descendants("phonebookitem").Any();

            if (elementExist)
            {
                maxId = doc.Descendants("phonebookitem").Max(x => (int)x.Element("id"));
            }
            else
            {
                maxId = 0;
            }
            XElement root = new XElement("phonebookitem");

            root.Add(new XElement("id", maxId + 1));
            root.Add(new XElement("name", PhoneBookItem.Name));
            root.Add(new XElement("type", PhoneBookItem.Type));
            root.Add(new XElement("number", PhoneBookItem.Number));
            doc.Element("phonebookitems").Add(root);
            doc.Save("data.xml");
        }
 public UserStatistics(PhoneBookItem phone_book_item)
 {
     PhoneBookItem = phone_book_item;
     NumberStatistics = PhoneNumberStatistics.GetPhoneNumberStatisticsList(phone_book_item.PhoneNumber);
 }
 void AddPhoneBookItem(PhoneBookItem phone_book_item)
 {
     lock (phone_book_sync)
     {
         var node = new TreeNode(phone_book_item.Name, Constants.USER_ICON_INDEX, Constants.USER_ICON_INDEX) { Tag = phone_book_item };
         var phone_number_node = new TreeNode(phone_book_item.PhoneNumber, Constants.PHONE_NUMBER_ICON_INDEX, Constants.PHONE_NUMBER_ICON_INDEX)
             {
                 Tag = phone_book_item.PhoneNumber
             };
         node.Nodes.Add(phone_number_node);
         node.Expand();
         AddNodeToTreeNode(phone_book_root_node, node);
     }
 }
示例#11
0
 public UserStatistics(PhoneBookItem phone_book_item)
 {
     PhoneBookItem    = phone_book_item;
     NumberStatistics = PhoneNumberStatistics.GetPhoneNumberStatisticsList(phone_book_item.PhoneNumber);
 }