Пример #1
0
        public void CanGoOnTwitterPage()
        {
            TwitterPage onTwitterPage = onFooterPage.CanGoToTwitterPage();

            Assert.IsTrue(onTwitterPage.IsAtTwitterPage());
            Debug.Write("Twitter Page on FireFox");
        }
        private void addTwitterFollow(SocialPageFormViewModel model)
        {
            var username = Regex.Match(model.Url, @"(?<=\.com\/)[^\/\s]+").ToString();

            if (String.IsNullOrWhiteSpace(username))
            {
                throw new BadLinkException("Please enter a valid twitter url");
            }

            var user = _twitterContext.User.Where(u => u.Type == UserType.Show && u.ScreenName == username).SingleOrDefault();

            if (user == null || user.Protected)
            {
                throw new BadLinkException("This user doesn't exist or it's private");
            }

            var currentUserId = User.Identity.GetUserId();

            var twitter = _context.Twitters.SingleOrDefault(twt => twt.TwitterUsername == username);

            if (twitter != null)
            {
                if (twitter.UserId.Equals(currentUserId))
                {
                    twitter.Deleted = false;
                }
                else
                {
                    throw new LinkAlreadyExistException("This twitter accounts is already added on this site");
                }
            }
            else
            {
                TwitterPage twitterPage = new TwitterPage()
                {
                    Url             = "http://twitter.com/" + username,
                    TwitterUsername = username,
                    Name            = model.Name,
                    Cpc             = model.Cpc,
                    UserId          = currentUserId
                };

                _context.Twitters.Add(twitterPage);
            }
        }
Пример #3
0
        public HomeMasterView(HomeViewModel viewModel)
        {
            this.Icon      = "slideout.png";
            BindingContext = viewModel;


            var layout = new StackLayout {
                Spacing = 0
            };

            var label = new ContentView
            {
                Padding         = new Thickness(10, 36, 0, 5),
                BackgroundColor = Color.Transparent,
                Content         = new Label
                {
                    Text     = "MENU",
                    FontSize = Device.GetNamedSize(NamedSize.Medium, typeof(Label))
                }
            };

            layout.Children.Add(label);

            var listView = new ListView();

            DataTemplate cell = null;

            if (Device.OS == TargetPlatform.Windows)
            {
                cell = new DataTemplate(typeof(FancyListCell));
                this.BackgroundColor = Color.FromHex("3498DB");
            }
            else
            {
                cell = new DataTemplate(typeof(ListImageCell));
                cell.SetBinding(TextCell.TextProperty, HomeViewModel.TitlePropertyName);
                cell.SetBinding(ImageCell.ImageSourceProperty, "Icon");
            }



            listView.ItemTemplate = cell;

            listView.ItemsSource = viewModel.MenuItems;
            if (about == null)
            {
                about = new AboutPage();
            }

            PageSelection = about;
            //Change to the correct page
            listView.ItemSelected += (sender, args) =>
            {
                var menuItem = listView.SelectedItem as HomeMenuItem;
                menuType = menuItem.MenuType;
                switch (menuItem.MenuType)
                {
                case MenuType.About:
                    if (about == null)
                    {
                        about = new AboutPage();
                    }

                    PageSelection = about;
                    break;

                case MenuType.Blog:
                    if (blog == null)
                    {
                        blog = new BlogPage();
                    }

                    PageSelection = blog;
                    break;

                case MenuType.Twitter:
                    if (twitter == null)
                    {
                        twitter = new TwitterPage();
                    }

                    PageSelection = twitter;
                    break;

                case MenuType.DeveloperLife:
                    if (developerlife == null)
                    {
                        developerlife = new PodcastPage(menuItem);
                    }

                    PageSelection = developerlife;
                    break;

                case MenuType.Hanselminutes:
                    if (hanselminutes == null)
                    {
                        hanselminutes = new PodcastPage(menuItem);
                    }

                    PageSelection = hanselminutes;
                    break;

                case MenuType.Ratchet:
                    if (ratchet == null)
                    {
                        ratchet = new PodcastPage(menuItem);
                    }

                    PageSelection = ratchet;
                    break;
                }
            };

            listView.SelectedItem = viewModel.MenuItems[0];
            layout.Children.Add(listView);

            Content = layout;
        }